📄 makefile.in
字号:
$(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strstr.cstrtod.o: $(COMPAT_DIR)/strtod.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtod.cstrtol.o: $(COMPAT_DIR)/strtol.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtol.cstrtoll.o: $(COMPAT_DIR)/strtoll.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtoll.cstrtoul.o: $(COMPAT_DIR)/strtoul.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtoul.cstrtoull.o: $(COMPAT_DIR)/strtoull.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/strtoull.ctmpnam.o: $(COMPAT_DIR)/tmpnam.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/tmpnam.cwaitpid.o: $(COMPAT_DIR)/waitpid.c $(CC) -c $(STUB_CC_SWITCHES) $(COMPAT_DIR)/waitpid.c# Stub library binaries, these must be compiled for use in a shared library# even though they will be placed in a static archivetclStubLib.o: $(GENERIC_DIR)/tclStubLib.c $(CC) -c $(STUB_CC_SWITCHES) $(GENERIC_DIR)/tclStubLib.c.c.o: $(CC) -c $(CC_SWITCHES) $<## Target to regenerate header files and stub files from the *.decls tables.#$(GENERIC_DIR)/tclStubInit.c: $(GENERIC_DIR)/tcl.decls \ $(GENERIC_DIR)/tclInt.decls @echo "Warning: tclStubInit.c may be out of date." @echo "Developers may want to run \"make genstubs\" to regenerate." @echo "This warning can be safely ignored, do not report as a bug!"genstubs: $(TCL_EXE) $(TOOL_DIR)/genStubs.tcl $(GENERIC_DIR) \ $(GENERIC_DIR)/tcl.decls $(GENERIC_DIR)/tclInt.decls## Target to check that all exported functions have an entry in the stubs# tables.#checkstubs: -@for i in `nm -p $(TCL_LIB_FILE) | awk '$$2 ~ /T/ { print $$3 }' \ | sort -n`; do \ match=0; \ for j in $(TCL_DECLS); do \ if [ `grep -c $$i $$j` -gt 0 ]; then \ match=1; \ fi; \ done; \ if [ $$match -eq 0 ]; then echo $$i; fi \ done## Target to check that all public APIs which are not command# implementations have an entry in section three of the distributed# manpages.#checkdoc: -@for i in `nm -p $(TCL_LIB_FILE) | awk '$$3 ~ /Tcl_/ { print $$3 }' \ | grep -v 'Cmd$$' | sort -n`; do \ match=0; \ for j in $(TOP_DIR)/doc/*.3; do \ if [ `grep '\-' $$j | grep -c $$i` -gt 0 ]; then \ match=1; \ fi; \ done; \ if [ $$match -eq 0 ]; then echo $$i; fi \ done## Target to check for proper usage of UCHAR macro.#checkuchar: -egrep isalnum\|isalpha\|iscntrl\|isdigit\|islower\|isprint\|ispunct\|isspace\|isupper\|isxdigit\|toupper\|tolower $(SRCS) | grep -v UCHAR## Target to make sure that only symbols with "Tcl" prefixes are# exported.#checkexports: $(TCL_LIB_FILE) -nm -p $(TCL_LIB_FILE) | awk '$$2 ~ /[TDB]/ { print $$3 }' | sort -n | grep -v '^[Tt]cl'## Target to create a Tcl RPM for Linux. Requires that you be on a Linux# system.#rpm: all /bin/rpm rm -f THIS.TCL.SPEC echo "%define _builddir `pwd`" > THIS.TCL.SPEC echo "%define _rpmdir `pwd`/RPMS" >> THIS.TCL.SPEC cat tcl.spec >> THIS.TCL.SPEC mkdir -p RPMS/i386 rpm -bb THIS.TCL.SPEC mv RPMS/i386/*.rpm . rm -rf RPMS THIS.TCL.SPECmklinks: $(TCL_EXE) $(UNIX_DIR)/mkLinks.tcl \ $(UNIX_DIR)/../doc/*.[13n] > $(UNIX_DIR)/mkLinks chmod +x $(UNIX_DIR)/mkLinks## Target to create a proper Tcl distribution from information in the# master source directory. DISTDIR must be defined to indicate where# to put the distribution.#DISTROOT = /tmp/distDISTNAME = tcl${VERSION}${PATCH_LEVEL}ZIPNAME = tcl${MAJOR_VERSION}${MINOR_VERSION}${PATCH_LEVEL}-src.zipDISTDIR = $(DISTROOT)/$(DISTNAME)$(UNIX_DIR)/configure: $(UNIX_DIR)/configure.in autoconf $(UNIX_DIR)/configure.in > $(UNIX_DIR)/configuredist: $(UNIX_DIR)/configure mklinks rm -rf $(DISTDIR) mkdir -p $(DISTDIR)/unix cp -p $(UNIX_DIR)/*.c $(UNIX_DIR)/*.h $(DISTDIR)/unix cp $(UNIX_DIR)/Makefile.in $(DISTDIR)/unix chmod 664 $(DISTDIR)/unix/Makefile.in cp $(UNIX_DIR)/configure $(UNIX_DIR)/configure.in \ $(UNIX_DIR)/tcl.m4 $(UNIX_DIR)/aclocal.m4 \ $(UNIX_DIR)/tclConfig.sh.in $(UNIX_DIR)/install-sh \ $(UNIX_DIR)/README $(UNIX_DIR)/ldAix $(UNIX_DIR)/tcl.spec \ $(UNIX_DIR)/mkLinks \ $(DISTDIR)/unix chmod 775 $(DISTDIR)/unix/configure $(DISTDIR)/unix/configure.in chmod 775 $(DISTDIR)/unix/ldAix chmod +x $(DISTDIR)/unix/install-sh mkdir $(DISTDIR)/generic cp -p $(GENERIC_DIR)/*.c $(GENERIC_DIR)/*.h $(DISTDIR)/generic cp -p $(GENERIC_DIR)/*.decls $(DISTDIR)/generic cp -p $(GENERIC_DIR)/README $(DISTDIR)/generic cp -p $(GENERIC_DIR)/tclGetDate.y $(DISTDIR)/generic cp -p $(TOP_DIR)/changes $(TOP_DIR)/ChangeLog $(TOP_DIR)/README* \ $(TOP_DIR)/ChangeLog.[12]??? $(TOP_DIR)/license.terms \ $(DISTDIR) mkdir $(DISTDIR)/library cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/library/*.tcl \ $(TOP_DIR)/library/tclIndex $(DISTDIR)/library for i in http1.0 http opt msgcat reg dde tcltest; \ do \ mkdir $(DISTDIR)/library/$$i ;\ cp -p $(TOP_DIR)/library/$$i/*.tcl $(DISTDIR)/library/$$i; \ done; mkdir $(DISTDIR)/library/encoding cp -p $(TOP_DIR)/library/encoding/*.enc $(DISTDIR)/library/encoding mkdir $(DISTDIR)/doc cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/doc/*.[13n] \ $(TOP_DIR)/doc/man.macros $(DISTDIR)/doc mkdir $(DISTDIR)/compat cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/compat/*.c \ $(TOP_DIR)/compat/*.h $(TOP_DIR)/compat/README \ $(DISTDIR)/compat mkdir $(DISTDIR)/tests cp -p $(TOP_DIR)/license.terms $(DISTDIR)/tests cp -p $(TOP_DIR)/tests/*.test $(TOP_DIR)/tests/README \ $(TOP_DIR)/tests/httpd $(TOP_DIR)/tests/*.tcl \ $(DISTDIR)/tests mkdir $(DISTDIR)/win cp $(TOP_DIR)/win/Makefile.in $(DISTDIR)/win cp $(TOP_DIR)/win/configure.in $(TOP_DIR)/win/configure \ $(TOP_DIR)/win/tclConfig.sh.in \ $(TOP_DIR)/win/tcl.m4 $(TOP_DIR)/win/aclocal.m4 \ $(DISTDIR)/win cp -p $(TOP_DIR)/win/*.c $(TOP_DIR)/win/*.h \ $(TOP_DIR)/win/*.ico $(TOP_DIR)/win/*.rc \ $(DISTDIR)/win cp -p $(TOP_DIR)/win/*.bat $(DISTDIR)/win $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/*.bat cp -p $(TOP_DIR)/win/makefile.* $(DISTDIR)/win $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/makefile.* cp -p $(TOP_DIR)/win/rules.vc $(DISTDIR)/win $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/rules.vc cp -p $(TOP_DIR)/win/coffbase.txt $(DISTDIR)/win $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/coffbase.txt cp -p $(TOP_DIR)/win/tcl.hpj.in $(DISTDIR)/win $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/tcl.hpj.in cp -p $(TOP_DIR)/win/tcl.ds* $(DISTDIR)/win $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/win/tcl.ds* cp -p $(TOP_DIR)/win/README $(DISTDIR)/win cp -p $(TOP_DIR)/license.terms $(DISTDIR)/win mkdir $(DISTDIR)/mac cp -p $(TOP_DIR)/mac/tcl*.sea.hqx \ $(TOP_DIR)/mac/*.c $(TOP_DIR)/mac/*.h $(TOP_DIR)/mac/*.r \ $(DISTDIR)/mac cp -p $(TOP_DIR)/mac/porting.notes $(TOP_DIR)/mac/README $(DISTDIR)/mac cp -p $(TOP_DIR)/mac/*.pch $(DISTDIR)/mac cp -p $(TOP_DIR)/mac/*.doc $(TOP_DIR)/mac/*.html $(DISTDIR)/mac cp -p $(TOP_DIR)/license.terms $(DISTDIR)/mac mkdir $(DISTDIR)/macosx cp -p $(TOP_DIR)/macosx/Makefile \ $(TOP_DIR)/macosx/*.c \ $(DISTDIR)/macosx mkdir $(DISTDIR)/macosx/Tcl.pbproj cp -p $(TOP_DIR)/macosx/Tcl.pbproj/*.pbx* $(DISTDIR)/macosx/Tcl.pbproj mkdir $(DISTDIR)/unix/dltest cp -p $(UNIX_DIR)/dltest/*.c $(UNIX_DIR)/dltest/Makefile.in \ $(UNIX_DIR)/dltest/README \ $(DISTDIR)/unix/dltest mkdir $(DISTDIR)/tools cp -p $(TOP_DIR)/tools/Makefile.in $(TOP_DIR)/tools/README \ $(TOP_DIR)/tools/configure $(TOP_DIR)/tools/configure.in \ $(TOP_DIR)/tools/*.tcl $(TOP_DIR)/tools/man2tcl.c \ $(TOP_DIR)/tools/tcl.wse.in $(TOP_DIR)/tools/*.bmp \ $(TOP_DIR)/tools/tcl.hpj.in \ $(DISTDIR)/tools $(TCL_EXE) $(TOOL_DIR)/eolFix.tcl -crlf $(DISTDIR)/tools/tcl.hpj.in \ $(DISTDIR)/tools/tcl.wse.in## The following target can only be used for non-patch releases. Use# the "allpatch" target below for patch releases.#alldist: dist rm -f $(DISTROOT)/$(DISTNAME)-src.tar.gz $(DISTROOT)/$(ZIPNAME) cd $(DISTROOT); tar cf $(DISTNAME)-src.tar $(DISTNAME); \ gzip -9 $(DISTNAME)-src.tar; zip -qr8 $(ZIPNAME) $(DISTNAME)## The target below is similar to "alldist" except it works for patch# releases. It is needed because patch releases are peculiar: the# patch designation appears in the name of the compressed file# (e.g. tcl8.0p1.tar.gz) but the extracted source directory doesn't# include the patch designation (e.g. tcl8.0).#allpatch: dist rm -f $(DISTROOT)/$(DISTNAME)-src.tar.gz $(DISTROOT)/$(ZIPNAME) mv $(DISTROOT)/tcl${VERSION} $(DISTROOT)/old mv $(DISTROOT)/$(DISTNAME) $(DISTROOT)/tcl${VERSION} cd $(DISTROOT); tar cf $(DISTNAME)-src.tar tcl${VERSION}; \ gzip -9 $(DISTNAME)-src.tar; zip -r8 $(ZIPNAME) tcl${VERSION} mv $(DISTROOT)/tcl${VERSION} $(DISTROOT)/$(DISTNAME) mv $(DISTROOT)/old $(DISTROOT)/tcl${VERSION}## This target creates the HTML folder for Tcl & Tk and places it# in DISTDIR/html. It uses the tcltk-man2html.tcl tool from# the Tcl group's tool workspace. It depends on the Tcl & Tk being# in directories called tcl8.3 & tk8.3 up two directories from the# TOOL_DIR.#html: $(TCL_EXE) $(TOOL_DIR)/tcltk-man2html.tcl --htmldir=$(DISTDIR)/html \ --srcdir=$(TOP_DIR)/..## Target to create a Macintosh version of the distribution. This will# do a normal distribution and then massage the output to prepare it# for moving to the Mac platform. This requires a few scripts and# programs found only in the Tcl group's tool workspace.#macdist: dist machtmlmachtml: rm -f $(DISTDIR)/mac/tclMacProjects.sea.hqx rm -rf $(DISTDIR)/doc $(TCL_EXE) $(TOOL_DIR)/cvtEOL.tcl $(DISTDIR)## Targets to build Solaris package of the distribution for the current# architecture. To build stream packages for both sun4 and i86pc# architectures: ## On the sun4 machine, execute the following:# make distclean; ./configure# make DISTDIR=<distdir> package## Once the build is complete, execute the following on the i86pc# machine:# make DISTDIR=<distdir> package-quick## <distdir> is the absolute path to a directory where the build should# take place. These steps will generate the $(PACKAGE).sun4 and# $(PACKAGE).i86pc stream packages. It is important that the packages be# built in this fashion in order to ensure that the architecture# independent files are exactly the same, including timestamps, in# both packages.#PACKAGE=SCRPtclpackage: dist package-config package-common package-binaries package-generatepackage-quick: package-config package-binaries package-generate## Configure for the current architecture in the dist directory.#package-config: mkdir -p $(DISTDIR)/unix/`arch` cd $(DISTDIR)/unix/`arch`; \ ../configure --prefix=/opt/$(PACKAGE)/$(VERSION) \ --exec_prefix=/opt/$(PACKAGE)/$(VERSION)/`arch` \ --enable-shared mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION) mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`## Build and install the architecture independent files in the dist directory.#package-common: cd $(DISTDIR)/unix/`arch`;\ $(MAKE); \ $(MAKE) prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION) \ exec_prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch` \ install-libraries install-man mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin sed -e "s/TCLVERSION/$(VERSION)/g" < $(UNIX_DIR)/tclsh.sh \ > $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin/tclsh$(VERSION) chmod 755 $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin/tclsh$(VERSION)## Build and install the architecture specific files in the dist directory.#package-binaries: cd $(DISTDIR)/unix/`arch`; \ $(MAKE); \ $(MAKE) install-binaries prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION) \ exec_prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`## Generate a package from the installed files in the dist directory for the# current architecture.#package-generate: pkgproto $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin=bin \ $(DISTDIR)/$(PACKAGE)/$(VERSION)/include=include \ $(DISTDIR)/$(PACKAGE)/$(VERSION)/lib=lib \ $(DISTDIR)/$(PACKAGE)/$(VERSION)/man=man \ $(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`=`arch` \ | $(TCL_EXE) $(UNIX_DIR)/mkProto.tcl \ $(VERSION) $(UNIX_DIR) > prototype pkgmk -o -d . -f prototype -a `arch` pkgtrans -s . $(PACKAGE).`arch` $(PACKAGE) rm -rf $(PACKAGE)# DO NOT DELETE THIS LINE -- make depend depends on it.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -