OSDN Git Service

Correct an anomaly in stage 1 only build procedure.
[mingw/mingw-org-wsl.git] / mingwrt / Makefile.in
index b6738c5..431ec40 100644 (file)
@@ -63,14 +63,15 @@ STRIP = @STRIP@
 NM = @NM@
 
 all: @DEFAULT_MAKECMDGOALS@
-all-mingwrt-stage-1: all-mingwrt-objects all-mingwrt-libs
-all-mingwrt-stage-1-and-2: all-mingwrt-stage-1 all-mingwrt-dll
+all-mingwrt-stage-1-only: all-mingwrt-objects all-mingwrt-libs
+all-mingwrt-stage-1-and-2: all-mingwrt-stage-1-only all-mingwrt-dll
 all-mingwrt: all-mingwrt-stage-1-and-2
+all-gcc: all-mingwrt-stage-1-only
 
-include_deprecated = @include_deprecated@
-active_goals = $1-$2 $(if $(include_deprecated),$1-deprecated-$2)
+active_goals = $1-$2 $(if @include_deprecated@,$1-deprecated-$2)
+all-deprecated-mingwrt-stage-1-only: all-deprecated-mingwrt
 
-all-stage-1: $(call active_goals,all,mingwrt-stage-1)
+all-stage-1-only: $(call active_goals,all,mingwrt-stage-1-only)
 all-stage-1-and-2: $(call active_goals,all,mingwrt)
 
 # Installation paths and macros.
@@ -364,12 +365,12 @@ libmingw32.a libmingwex.a libm.a libmingwthrd.a libgmon.a:
 #
 vpath %.c ${mingwrt_srcdir}/mingwex
 vpath %.c ${mingwrt_srcdir}/mingwex/complex
-libmingwex.a: $(addsuffix .$(OBJEXT), cabs carg catan ccoshf clog creal csqrt \
-  cabsf cargf catanf ccoshl clogf crealf csqrtf cabsl cargl catanh ccosl clogl \
-  creall csqrtl cacos casin catanhf cexp cpow csin ctan cacosf casinf catanhl \
-  cexpf cpowf csinf ctanf cacosh casinh catanl cexpl cpowl csinh ctanh cacoshf \
-  casinhf ccos cimag cproj csinhf ctanhf cacoshl casinhl ccosf cimagf cprojf \
-  csinhl ctanhl cacosl casinl ccosh cimagl cprojl csinl ctanl)
+libmingwex.a: $(addsuffix .$(OBJEXT), cabs cabsf cabsl cacos cacosf \
+  cacosh cacoshf cacoshl cacosl casin casinf casinh casinhf casinhl casinl \
+  catan catanf catanh catanhf catanhl catanl ccos ccosf ccosh ccoshf ccoshl \
+  ccosl cexp cexpf cexpl clog clogf clogl cpow cpowf cpowl cproj cprojf \
+  cprojl csin csinf csinh csinhf csinhl csinl csqrt csqrtf csqrtl \
+  ctan ctanf ctanh ctanhf ctanhl ctanl)
 
 libmingwex.a: $(addsuffix .$(OBJEXT), isblank iswblank)
 
@@ -392,7 +393,7 @@ libmingwex.a: $(addsuffix .$(OBJEXT), g__fmt gethex strtopx g_dfmt gdtoa \
 # "inttypes" conversion routines, provided in libmingwex.a
 #
 libmingwex.a: $(addsuffix .$(OBJEXT), \
-  imaxabs imaxdiv strtoimax strtoumax wcstoimax wcstoumax)
+  imaxdiv strtoimax strtoumax wcstoimax wcstoumax)
 
 # Additional math functions, augmenting Microsoft's paltry
 # selection, also delivered in libmingwex.a, (FIXME: and yet
@@ -420,9 +421,9 @@ libmingwex.a: $(addsuffix .$(OBJEXT), cosf cosl acosf acosl sinf sinl asinf \
 # compatibility than their Microsoft equivalents.
 #
 vpath %.c ${mingwrt_srcdir}/mingwex/stdio
-libmingwex.a: $(addsuffix .$(OBJEXT), btowc fopen64 fprintf fseeko64 ftello64 \
-  lseek64 pformat printf snprintf snwprintf sprintf vfprintf vfscanf vfwscanf \
-  vprintf vscanf vsnprintf vsnwprintf vsprintf vsscanf vswscanf vwscanf)
+libmingwex.a: $(addsuffix .$(OBJEXT), btowc fprintf fseeko64 pformat \
+  printf snprintf snwprintf sprintf vfprintf vfscanf vfwscanf vprintf \
+  vscanf vsnprintf vsnwprintf vsprintf vsscanf vswscanf vwscanf)
 
 # pformat.$(OBJEXT) needs an explicit build rule, since we need to
 # specify an additional header file path.
@@ -442,14 +443,12 @@ $(addsuffix fmt.$(OBJEXT),varo crto geto seto crtn getn setn): %.$(OBJEXT): ofmt
 # Some additional miscellaneous functions, in libmingwex.a
 #
 #libmingwex.a: $(addsuffix .$(OBJEXT), glob membarrier)
-libmingwex.a: $(addsuffix .$(OBJEXT), mingw-aligned-malloc mingw-fseek glob)
-libmingwex.a: $(addsuffix .$(OBJEXT), getopt basename dirname ftruncate usleep)
+libmingwex.a: $(addsuffix .$(OBJEXT), mingw-aligned-malloc mingw-fseek)
+libmingwex.a: $(addsuffix .$(OBJEXT), glob getopt basename dirname nsleep)
+libmingwex.a: $(addsuffix .$(OBJEXT), mkstemp mkdtemp cryptnam)
 
 libmingwex.a: $(addsuffix .$(OBJEXT), tdelete tfind tsearch twalk)
 
-libmingwex.a: $(addsuffix .$(OBJEXT), _Exit atoll lltoa lltow \
-  ulltoa ulltow wtoll)
-
 libmingwex.a: gettimeofday.$(OBJEXT)
 libmingwex.a: $(addsuffix .$(OBJEXT), dirent wdirent dlfcn)
 
@@ -517,6 +516,8 @@ jmpstub_awk_script = test -z "$1" || awk '\
     FUNCTION = gensub( ".*[ ,(:]FUNCTION *= *"symbol".*", "\\1", 1 ); \
     OBJNAME = gensub( "_*(.*)_*", "\\1", 1, FUNCTION )".jmpstub.$$(OBJEXT)"; \
     OBJNAME_CFLAGS = "-D FUNCTION="FUNCTION; \
+    if( match( $$0, ".*[ ,(:]REMAPPED *= *"symbol, alias ) ) \
+      OBJNAME_CFLAGS = OBJNAME_CFLAGS" -D REMAPPED="alias[1]; \
     printf fmt, LIB, OBJNAME, OBJNAME, OBJNAME_CFLAGS; \
   } \
   END { \
@@ -550,10 +551,13 @@ libimpl_awk_script = test -z "$1" || awk '\
 # which identifies the originating file as a system header).
 #
 libimpl_sed_script = sed \
-  -e '/__CRT_ALIAS  *__LIBIMPL.*FUNCTION *= *$1[ ,)].*)/d' \
-  -e '/pragma .* system_header/d'
+  -e '/pragma .* system_header/d' \
+  -e '/__CRT_INLINE  *__LIBIMPL.*FUNCTION *= *$1[ ,)].*)/d' \
+  -e 's/__LIBIMPL.*ALIAS *= *$1[ ,)].*)/__attribute__((__alias__("$1")))/' \
+  -e '/__CRT_ALIAS  *__LIBIMPL.*FUNCTION *= *$1[ ,)].*)/d'
 
-LIBIMPL_CFLAGS = $(CFLAGS) $(INCLUDES) -fno-align-functions
+LIBIMPL_CFLAGS = $(CFLAGS) $(INCLUDES) $(LIBIMPL_EXTRA_CFLAGS)
+LIBIMPL_EXTRA_CFLAGS = -fno-align-functions -Wno-deprecated-declarations
 
 # LIBIMPL dependencies are tracked using zero sized name.libimpl
 # files; the intermediate C files are generated as a side effect
@@ -642,7 +646,7 @@ MSG_DESTDIR_TRANSFORM = ${DESTDIR}$(shell echo $1 | sed 's/^.://')
 
 # Install everything.
 #
-install: install-mingwrt
+install: inst@DEFAULT_MAKECMDGOALS@
 install-stage-1-only: install-headers install-libdir-objects install-libs
 install-stage-1-and-2: install-stage-1-only install-bin
 install-gcc: install-stage-1-only
@@ -671,13 +675,14 @@ install-mingwrt-license install-w32api-license: install-%: docdir %-files
 includedirs: mingwrt-includedirs
 install-headers install-mingwrt: install-mingwrt-headers
 
-${includedir}/sys: includedir
-mingwrt-includedirs: ${includedir}/sys
+${includedir}/sys ${includedir}/parts: includedir
+mingwrt-includedirs: ${includedir}/sys ${includedir}/parts
        $(mkinstalldirs) $^
 
 install-mingwrt-headers: mingwrt-includedirs
        $(INSTALL_DATA) ${mingwrt_srcdir}/include/*.h ${includedir}
        $(INSTALL_DATA) ${mingwrt_srcdir}/include/sys/*.h ${includedir}/sys
+       $(INSTALL_DATA) ${mingwrt_srcdir}/include/parts/*.h ${includedir}/parts
        $(INSTALL_DATA) ${mingwrt_srcdir}/profile/*.h ${includedir}
 
 # Install libraries, and supporting free standing object files.