From 65eb78098beae92eebe860b9158b9e28224df080 Mon Sep 17 00:00:00 2001 From: Kevin B Kenny Date: Sat, 20 Dec 2008 22:06:02 +0000 Subject: Revised the zlib objects so that they are built directly into the build dir, without building an intermediate static library. --- ChangeLog | 5 ++++- win/Makefile.in | 63 ++++++++++++++++++++++++++++++++++++++++++++------------- 2 files changed, 53 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 60bf2b6..29b2c83 100644 --- a/ChangeLog +++ b/ChangeLog @@ -9,7 +9,10 @@ fire to try to build the static library in a --enable-shared build (and create a static library that subsequently fails to - link). + link). + Revised the zlib objects so that they are + built directly into the build dir, without + building an intermediate static library. *** POTENTIAL INCOMPATIBILITY *** for embedders who link to the static library, but I couldn't figure out how to sort this out any other diff --git a/win/Makefile.in b/win/Makefile.in index 627b778..ccca697 100644 --- a/win/Makefile.in +++ b/win/Makefile.in @@ -4,7 +4,7 @@ # "./configure", which is a configuration script generated by the "autoconf" # program (constructs like "@foo@" will get replaced in the actual Makefile. # -# RCS: @(#) $Id: Makefile.in,v 1.145 2008/12/20 21:40:27 kennykb Exp $ +# RCS: @(#) $Id: Makefile.in,v 1.146 2008/12/20 22:06:02 kennykb Exp $ VERSION = @TCL_VERSION@ @@ -101,7 +101,7 @@ TOMMATH_DIR = $(TOP_DIR)/libtommath WIN_DIR = $(TOP_DIR)/win COMPAT_DIR = $(TOP_DIR)/compat PKGS_DIR = $(TOP_DIR)/pkgs -ZLIB_DIR = $(COMPAT_DIR)/zlib/ +ZLIB_DIR = $(COMPAT_DIR)/zlib # Converts a POSIX path to a Windows native path. CYGPATH = @CYGPATH@ @@ -161,7 +161,7 @@ MAN2TCL = man2tcl$(EXEEXT) # Setting the VPATH variable to a list of paths will cause the Makefile to # look into these paths when resolving .c to .obj dependencies. -VPATH = $(GENERIC_DIR):$(TOMMATH_DIR):$(WIN_DIR):$(COMPAT_DIR) +VPATH = $(GENERIC_DIR):$(TOMMATH_DIR):$(WIN_DIR):$(COMPAT_DIR):$(ZLIB_DIR) AR = @AR@ RANLIB = @RANLIB@ @@ -195,10 +195,7 @@ CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${TCL_SHLIB_CFLAGS} \ -I"${WIN_DIR_NATIVE}" ${AC_FLAGS} \ ${COMPILE_DEBUG_FLAGS} -ZLIB_LIB = libz.a - ZLIB_INC = -I"${ZLIB_DIR}" -ZLIB_FILE = ${ZLIB_DIR}${ZLIB_LIB} CC_OBJNAME = @CC_OBJNAME@ CC_EXENAME = @CC_EXENAME@ @@ -389,7 +386,21 @@ STUB_OBJS = \ TCLSH_OBJS = tclAppInit.$(OBJEXT) -TCL_OBJS = ${GENERIC_OBJS} $(TOMMATH_OBJS) ${WIN_OBJS} +ZLIB_OBJS = \ + Zadler32$(OBJEXT) \ + Zcompress$(OBJEXT) \ + Zcrc32$(OBJEXT) \ + Zdeflate$(OBJEXT) \ + Zgzio$(OBJEXT) \ + Zinfback$(OBJEXT) \ + Zinffast$(OBJEXT) \ + Zinflate$(OBJEXT) \ + Zinftrees$(OBJEXT) \ + Ztrees$(OBJEXT) \ + Zuncompr$(OBJEXT) \ + Zzutil$(OBJEXT) + +TCL_OBJS = ${GENERIC_OBJS} $(TOMMATH_OBJS) ${WIN_OBJS} ${ZLIB_OBJS} TCL_DOCS = "$(ROOT_DIR_NATIVE)"/doc/*.[13n] @@ -425,18 +436,16 @@ ${TCL_STUB_LIB_FILE}: ${STUB_OBJS} @MAKE_LIB@ ${STUB_OBJS} @POST_MAKE_LIB@ -${TCL_DLL_FILE} $(TCL_IMPORT_LIB_FILE): ${TCL_OBJS} ${ZLIB_FILE} tcl.$(RES) +${TCL_DLL_FILE} $(TCL_IMPORT_LIB_FILE): ${TCL_OBJS} tcl.$(RES) @$(RM) ${TCL_DLL_FILE} $(TCL_IMPORT_LIB_FILE) - @MAKE_DLL@ ${TCL_OBJS} ${ZLIB_FILE} tcl.$(RES) $(SHLIB_LD_LIBS) + @MAKE_DLL@ ${TCL_OBJS} tcl.$(RES) $(SHLIB_LD_LIBS) -${TCL_STATIC_LIB_FILE}: ${TCL_OBJS} ${ZLIB_FILE} +${TCL_STATIC_LIB_FILE}: ${TCL_OBJS} @$(RM) ${TCL_STATIC_LIB_FILE} - @MAKE_LIB@ ${ZLIB_FILE} ${TCL_OBJS} + @MAKE_LIB@ ${TCL_OBJS} @POST_MAKE_LIB@ # assume GNU make -${ZLIB_FILE}: - ${MAKE} -C ${ZLIB_DIR} CC="${CC}" ${ZLIB_LIB} ${DDE_DLL_FILE}: ${DDE_OBJS} ${TCL_STUB_LIB_FILE} @$(RM) ${DDE_DLL_FILE} @@ -491,6 +500,33 @@ tclWinTest.${OBJEXT}: tclWinTest.c tclAppInit.${OBJEXT} : tclAppInit.c $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME) +# For building zlib, only used in some build configurations + +Zadler32$(OBJEXT): $(ZLIB_DIR)/adler32.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zcompress$(OBJEXT): $(ZLIB_DIR)/compress.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zcrc32$(OBJEXT): $(ZLIB_DIR)/crc32.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zdeflate$(OBJEXT): $(ZLIB_DIR)/deflate.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zgzio$(OBJEXT): $(ZLIB_DIR)/gzio.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zinfback$(OBJEXT): $(ZLIB_DIR)/infback.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zinffast$(OBJEXT): $(ZLIB_DIR)/inffast.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zinflate$(OBJEXT): $(ZLIB_DIR)/inflate.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zinftrees$(OBJEXT): $(ZLIB_DIR)/inftrees.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Ztrees$(OBJEXT): $(ZLIB_DIR)/trees.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zuncompr$(OBJEXT): $(ZLIB_DIR)/uncompr.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< +Zzutil$(OBJEXT): $(ZLIB_DIR)/zutil.c + $(CC) -c -o $@ $(CC_SWITCHES) -I$(ZLIB_DIR) $< + tclZlib.${OBJEXT} : tclZlib.c $(CC) -c ${ZLIB_INC} $(CC_SWITCHES) -DBUILD_tcl @DEPARG@ $(CC_OBJNAME) @@ -748,7 +784,6 @@ clean: cleanhelp clean-packages $(RM) *.lib *.a *.exp *.dll *.$(RES) *.${OBJEXT} *~ \#* TAGS a.out $(RM) $(TCLSH) $(TCLTEST) $(CAT32) $(RM) *.pch *.ilk *.pdb - ${MAKE} -C ${ZLIB_DIR} clean distclean: distclean-packages clean $(RM) Makefile config.status config.cache config.log tclConfig.sh \ -- cgit v0.12