# Copyright 2001-2009 The Apache Software Foundation or its licensors, as
# applicable.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# ====================================================================
#
# NMAKEwraplib   Tanukiwrapper JNI library makefile.
# Usage:
#                 STATIC=1  Use static version of the APR
#                 DEBUG=1   Build DEBUG version of TCN
#
# Originally contributed by Mladen Turk <mturk jboss.com>
#
# ====================================================================
#

CFLAGS = -DWRAPPERJNI_EXPORTS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE $(CFLAGS)
PROJECT = wrapper
TARGET = EXE

!include <..\..\..\..\common\NMAKEcommon.inc>

!IF !DEFINED(SRCDIR) || "$(SRCDIR)" == ""
SRCDIR = .
!ENDIF

INCLUDES = -I$(SRCDIR)\include $(JAVA_INCLUDES)

LFLAGS = $(LFLAGS) /version:3.3
LFLAGS = $(LFLAGS) user32.lib psapi.lib gdi32.lib shlwapi.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib mpr.lib

PDBFLAGS = -Fo$(WORKDIR)\ -Fd$(WORKDIR)\$(PROJECT)-src
OBJECTS = \
	$(WORKDIR)\logger.obj \
	$(WORKDIR)\property.obj \
	$(WORKDIR)\wrapper.obj \
	$(WORKDIR)\wrapper_file.obj \
	$(WORKDIR)\wrapper_unix.obj \
	$(WORKDIR)\wrapper_win.obj \
	$(WORKDIR)\wrappereventloop.obj \
	$(WORKDIR)\wrapperinfo.obj

BUILDLIB = $(PREFIX)\lib
BUILDBIN = $(PREFIX)\bin
BUILDOUT = $(WORKDIR)\$(PROJECT).exe
BUILDPDB = $(WORKDIR)\$(PROJECT).pdb
BUILDRES = $(WORKDIR)\$(PROJECT).res
BUILDMAN = $(BUILDOUT).manifest

all : $(WORKDIR) $(BUILDOUT)

$(BUILDLIB) :
	@if not exist "$(BUILDLIB)\$(NULL)" mkdir "$(BUILDLIB)"

$(BUILDBIN) :
	@if not exist "$(BUILDBIN)\$(NULL)" mkdir "$(BUILDBIN)"

$(WORKDIR) :
	@$(MAKEWORKDIR)

{$(SRCDIR)}.c{$(WORKDIR)}.obj:
	$(CC) $(CFLAGS) $(INCLUDES) $(PDBFLAGS) $<

$(BUILDRES): $(SRCDIR)\wrapper.rc
	$(RC) $(RCFLAGS) /i "$(SRCDIR)\include" /fo $(BUILDRES) $(SRCDIR)\wrapper.rc

$(BUILDOUT): $(WORKDIR) $(OBJECTS) $(BUILDRES)
	$(LINK) $(LFLAGS) $(OBJECTS) $(BUILDRES) $(LIBS) $(LDIRS) /pdb:$(BUILDPDB) /out:$(BUILDOUT)
	IF EXIST $(BUILDMAN) \
		mt -nologo -manifest $(BUILDMAN) -outputresource:$(BUILDOUT);2

clean:
	@$(CLEANTARGET)

install: $(BUILDLIB) $(BUILDBIN) all
	@xcopy "$(WORKDIR)\*.exe" "$(BUILDBIN)" /Y /Q
