# # Netdrive Samba client plugin # kBuild makefile # Copyright (C) netlabs.org 2003-2008 # See COPYING for license informations # # please define (as env variables or kmk command line) the following variables before starting: # BUILD_PLATFORM = os2 # BUILD_TYPE = release|debug # # Copy Config.km_ to Config.kmk and edit it to match your installation. # DEPTH = .. TOOL = GCC3OMF DLLS = ndpsmb ndpsmb_SOURCES = \ rc/rc.rc \ ndpsmb.def \ ndpsmb.c \ debug.c \ printf.c \ util.c \ smbwrp.c ndpsmb_CFLAGS = -Zomf ndpsmb_CFLAGS.release = -s -O3 -march=pentium -mcpu=pentium4 ndpsmb_CFLAGS.debug = -g -O0 -DDEBUG_PRINTF ndpsmb_LDFLAGS = -Zomf -Zno-fork -Zmap -Zbin-files ndpsmb_LDFLAGS.release = -s ndpsmb_LDFLAGS.debug = -g ndpsmb_DEFS = ndpsmb_INCS = ./h ./rc \ $(SAMBA)/source \ $(SAMBA)/source/include \ $(SAMBA)/source/lib/replace \ $(SAMBA)/source/popt \ $(SAMBA)/source/lib/talloc \ $(SAMBA)/source/librpc \ $(SAMBA)/source/tdb/include ndpsmb_LIBS = libsmbclient.a socket.a ndpsmb_LIBPATH = $(SAMBA)/source/bin ndpsmb_CLEAN = rc/description.rc $(PATH_BIN)/ndpsmb.dll #build other files (e.g. help) OTHERS = $(PATH_BIN)/ndpsmb.hlp $(PATH_BIN)/readme.txt OTHER_CLEAN = $(PATH_BIN)/ndpsmb.hlp $(PATH_BIN)/readme.txt # install some more files INSTALLS = ndpsmb-docs ndpsmb-docs_INST = bin/ ndpsmb-docs_SOURCES = $(SAMBA)/COPYING=>COPYING ndpsmb.ndp instpl.cmd OTHER_CLEAN += $(PATH_BIN)/COPYING $(PATH_BIN)/ndpsmb.ndp $(PATH_BIN)/instpl.cmd # packaging stuffs ifeq ($(BUILD_TYPE),debug) PACKAGE_NAME = ndpsmb-$(subst .,_,$(VERSION))-$(BUILD)-debug.zip else PACKAGE_NAME = ndpsmb-$(subst .,_,$(VERSION))-$(BUILD).zip endif PACKING += $(PATH_ROOT)/dist/$(PACKAGE_NAME) OTHER_CLEAN += $(PATH_ROOT)/dist/$(PACKAGE_NAME) # now include standard code include $(PATH_KBUILD)/rules.kMk # here follows standard gnu make inference rules # add new dependancy on build level info rc/rc.rc : rc/description.rc # update bldlevel info rc/description.rc: config.kmk @echo Writing build level informations @cp rc/description.rc_ rc/description.rc @BldLevelInf0.cmd $(VERSION) $(BUILD) # compile help file $(PATH_BIN)/ndpsmb.hlp: ./rc/rc.ipf ./rc/rc.h ./H/hmacros.h config.kmk -gcc -E -I./h -I./rc -x c ./rc/rc.ipf > rc.i -@mkdir $(PATH_BIN) $(TOOLKIT)\bin\ipfc.exe rc.i $(PATH_BIN)/ndpsmb.hlp /COUNTRY=001 /CODEPAGE=850 rm rc.i # substitute macros in docs $(PATH_BIN)/readme.txt: Config.kmk readme.txt $(QUIET)$(SED) "s;_VERSION_;$(VERSION);g" readme.txt \ | $(SED) "s;_BUILD_;$(BUILD);g" \ > $(PATH_BIN)/readme.txt # final: zip all files! $(PATH_ROOT)/dist/$(PACKAGE_NAME): \ $(PATH_BIN)/ndpsmb.dll \ $(PATH_BIN)/ndpsmb.hlp \ $(PATH_BIN)/readme.txt $(QUIET)$(MKDIR) -p $(PATH_ROOT)/dist $(QUIET)$(RM) -f $@ $(QUIET)zip -9 -j $@ $(PATH_BIN)/*