From: Elfy <nic...@us...> - 2010-03-27 16:03:19
|
Update of /cvsroot/husky/hptutil/make In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv13100 Modified Files: makefile.mvc Log Message: New msvc makefile for mvc 6.0 and newer, both dll and lib build. It uses husky build environment. Index: makefile.mvc =================================================================== RCS file: /cvsroot/husky/hptutil/make/makefile.mvc,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- makefile.mvc 21 Oct 2003 02:10:22 -0000 1.1 +++ makefile.mvc 27 Mar 2010 16:03:10 -0000 1.2 @@ -1,51 +1,58 @@ # $Id$ # -# Microsoft Visual C++ Makefile for build static program(s) -# No support for the Husky build environment. -# -# Tested on MS Visual C 6.0 -# -include makefile.inc +# Microsoft Visual C++ Makefile for build hptutil -## programs ## -CC = cl -AR = lib -LINK = link -RANLIB = -RM = del -## file suffixes ## -_C = .c -_OBJ = .obj -_EXP = .exp -_LIB = .lib -_DLL = .dll -_EXE = .exe +## include common makefiles part ## +!include makefile.inc +!include ../../huskymak.cfg -## programs ## -CFLAGS = -nologo -Zp1 -CINCL = -I$(H_DIR) -I..\..\fidoconf -I..\..\smapi -I..\..\huskylib -CDEFS = -D__NT__ -DNT -DWINNT -DWIN32 -D_CONSOLE -COPT = -Ob2 -EXENAMEFLAG = -Fe +## program options ## -LIBS = ..\..\fidoconf\make\fconfmvc.lib ..\..\smapi\make\smapimvc.lib \ - ..\..\huskylib\make\huskymvc.lib +## options for compiler ## +CINCL= -I$(H_DIR) -I..\..\huskylib -I..\..\fidoconf -I..\..\smapi +CFLAGS = $(CFLAGS) $(CINCL) + +## options for linker ## +LFLAGS=$(LFLAGS) $(LINKPDBOPT)$(BINOUT) + +# List of HUSKY libraries required to build binary file(s) +# for executables -- $(LIBSL) +# for dynamic libraries -- $(DLLS) +!if $(DYNLIBS)==1 +LIBSL = $(LIBS) \ + $(IMPLIBPREFIX)fidoconfig$(DLLSUFFIX)$(_LIB) \ + $(IMPLIBPREFIX)smapi$(DLLSUFFIX)$(_LIB) \ + $(IMPLIBPREFIX)husky$(DLLSUFFIX)$(_LIB) + +!else +LIBSL = $(LIBS) \ + $(LIBPREFIX)fidoconfig$(LIBSUFFIX)$(_LIB) \ + $(LIBPREFIX)smapi$(LIBSUFFIX)$(_LIB) \ + $(LIBPREFIX)husky$(LIBSUFFIX)$(_LIB) + +!endif + + default: - @echo Run 'make programs' to build static version of programs ($(PROGRAMS)) - @echo Run 'make all' to build all above + @echo Set DYNLIBS=1 in huskymak.cfg to build dynamic version of program + @echo Run 'make all' to build ($(PROGRAMS)) -all: programs programs: $(PROGRAMS) +all: programs -{$(_SRC_DIR)}$(_C)$(_OBJ): - @$(CC) $(CFLAGS) $(CINCL) $(CDEFS) $(COPT) -c $< +$(OBJS) $(PRGOBJS) : $(HEADERS) makefile.mvc ../../huskymak.cfg makefile.inc + +{$(_SRC_DIR)}$(_C){$(O)}$(_OBJ):: + @$(CC) $(CFLAGS) $(OBJOPT) $(OBJNAMEOPT)$(O) @<< +$< +<< $(PROGRAMS): $(OBJS) @echo Create $(PROGRAMS)... - @$(CC) $(CFLAGS) $(CINCL) $(COPT) $(CDEFS) $(EXENAMEFLAG)$@ $** $(LIBS) + @$(LINK) $(LFLAGS) $(LINKNAMEOPT)$@ $** $(LIBSL) man: @@ -53,17 +60,11 @@ man2html$(_EXE) <..\$(LIBNAME).1 >$(LIBNAME).html clean: - -$(RM) $(RMOPT) *$(_OBJ) + -$(RM) $(RMOPT) VC*$(_PDB) + -$(RM) $(RMOPT) $(OBJS:/=\) + -$(RM) $(RMOPT) $(PROGRAMSILK:/=\) distclean: clean - -$(RM) $(RMOPT) $(PROGRAMS) - -$(RM) $(RMOPT) $(LIBNAME).html - -install: programs doc - $(INSTALL) $(IBOPT) $(PROGRAMS) $(BINDIR) - $(INSTALL) $(IBOPT) ..\$(LIBNAME).1 $(DOCDIR) - $(INSTALL) $(IBOPT) $(LIBNAME).html $(DOCDIR) - -uninstall: - -$(RM) $(RMOPT) $(BINDIR)\$(PROGRAMS) - -$(RM) $(RMOPT) $(DOCDIR)\$(LIBNAME).html + -$(RM) $(RMOPT) $(PROGRAMSPDB:/=\) + -$(RM) $(RMOPT) $(PROGRAMS:/=\) + |