INSTALL_DATA = @INSTALL_DATA@ $1 $2
mkinstalldirs = @MKDIR_P@ $(addprefix $1,$2)
+LN_S = @LN_S@
# Keep the configuration in a consistent state. Note that we assume
# that configure has been run initially, (otherwise we wouldn't have
#
vpath %.m4 ${top_srcdir}
vpath configure.ac ${top_srcdir}
-configure: configure.ac aclocal.m4
+configure: configure.ac aclocal.m4 VERSION.m4
cd ${top_srcdir}; autoconf
+${top_srcdir}/%: ${top_srcdir}/../%
+ cd $(dir $@) && $(LN_S) -f ../$* .
+
# Propagate package version, as configured, consistently throughout
# the package build.
#
$(foreach name,coldname $(all_moldname),lib$(name).a): $(addsuffix .$(OBJEXT), \
isascii iscsym iscsymf toascii)
+# Selected versions of the oldname libraries also provide a
+# convenient vehicle for delivery of stubs, emulating functions
+# which appear in later MSVCRT versions, and which we also wish
+# to support in conjunction with earlier versions.
+#
+$(foreach name,moldname $(addprefix moldname,70 71),lib$(name).a) \
+$(foreach name,moldname $(addprefix moldname,70 71),lib$(name)d.a): \
+ strnlen.jmpstub.$(OBJEXT)
+
coldname.def: %.def: ${mingwrt_srcdir}/moldname.def.in
$(CC) -C -E -P -D__FILENAME__=$@ -D__CRTDLL__ -xc-header $< > $@
fmt = "\nlib%s.a: %s\n%s: jmpstub.sx\n\t$$(COMPILE.sx) %s -o $$@ $$^\n"; \
} \
/__JMPSTUB(__)? *[(].*FUNCTION/ { \
- LIB = "mingwex"; \
FUNCTION = gensub( ".*[ ,(:]FUNCTION *= *"symbol".*", "\\1", 1 ); \
+ LIB = match( $$0, ".*[ ,(:]LIB *= *"symbol, altlib ) ? altlib[1] : "mingwex"; \
OBJNAME = gensub( "_*(.*)_*", "\\1", 1, FUNCTION )".jmpstub.$$(OBJEXT)"; \
OBJNAME_CFLAGS = "-D FUNCTION="FUNCTION; \
if( match( $$0, ".*[ ,(:]REMAPPED *= *"symbol, alias ) ) \
fmt = "\nlib%s.a: %s\n%s.libimpl: %s\n"; \
} \
/__LIBIMPL(__)? *[(].*FUNCTION/ { \
- LIB = "mingwex"; \
FUNCTION = gensub( ".*[ ,(:]FUNCTION *= *"symbol".*", "\\1", 1 ); \
+ LIB = match( $$0, ".*[ ,(:]LIB *= *"symbol, altlib ) ? altlib[1] : "mingwex"; \
OBJNAME = gensub( "_*(.*)_*", "\\1", 1, FUNCTION )".libimpl.$$(OBJEXT)"; \
printf fmt, LIB, OBJNAME, FUNCTION, FILENAME; \
} \
install-strip: install-strip-mingwrt
install-strip-%:
- $(MAKE) --no-print-directory $(MAKEFLAGS) \
+ $(MAKE) --no-print-directory \
STRIP_DATA='cd ${libdir}; $(STRIP) --strip-unneeded $$1' \
STRIP_DLL='cd ${bindir}; $(STRIP) $$1' install-$*
uninstall-mingwrt-dll \
uninstall-mingwrt-libdir-objects uninstall-mingwrt-libdir-libs: un%:
- $(MAKE) --no-print-directory $(MAKEFLAGS) mkinstalldirs= \
+ $(MAKE) --no-print-directory mkinstalldirs= \
INSTALL_DATA='cd $$2 && $(RM) $$1' $*
mingwrt-srcdist-files: $(wildcard ${mingwrt_srcdir}/*.[chs]) \
$(addprefix ${mingwrt_srcdir}/,ChangeLog CONTRIBUTORS DISCLAIMER README) \
$(wildcard ${mingwrt_srcdir}/*.def.in) $(wildcard ${mingwrt_srcdir}/config*) \
- $(addprefix ${mingwrt_srcdir}/,aclocal.m4 install-sh Makefile.in TODO) \
- $(addprefix ${mingwrt_srcdir}/,include man mingwex profile) \
- $(addprefix ${mingwrt_srcdir}/,crtdll.def) \
+ $(addprefix ${mingwrt_srcdir}/,aclocal.m4 VERSION.m4 install-sh Makefile.in) \
+ $(addprefix ${mingwrt_srcdir}/,TODO include man mingwex profile) \
+ $(addprefix ${mingwrt_srcdir}/,msvcrt-xref crtdll.def) \
$(wildcard ${mingwrt_srcdir}/*.txt)
install-html install-pdf: install-%: %dir mingwrt-man$(man3ext)