X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=Makefile.in;h=47a898237f5c3bb95b6491a5cfe355018846af9b;hb=6daf000dc8b4e19d67465d2e1f59dcaa2e36e54d;hp=26e3fd049329e1ee622416e9c74bafd7bb0bf8de;hpb=c306284f4898b9828881906410e4a73244dd40ad;p=mingw%2Fmingw-org-wsl.git diff --git a/Makefile.in b/Makefile.in index 26e3fd0..47a8982 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,3 +1,26 @@ +## +# @file Makefile.in +# @copy 2012 MinGW.org project +# +# Permission is hereby granted, free of charge, to any person obtaining a +# copy of this software and associated documentation files (the "Software"), +# to deal in the Software without restriction, including without limitation +# the rights to use, copy, modify, merge, publish, distribute, sublicense, +# and/or sell copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice (including the next +# paragraph) shall be included in all copies or substantial portions of the +# Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +# DEALINGS IN THE SOFTWARE. +## VPATH=$(srcdir) PACKAGE_TARNAME=@PACKAGE_TARNAME@ PACKAGE_VERSION=@PACKAGE_VERSION@ @@ -20,13 +43,13 @@ CFLAGS=@CFLAGS@ RANLIB=@RANLIB@ AS=@AS@ DLLTOOL=@DLLTOOL@ -DLLTOOL_FLAGS := --as $(AS) -k -U --dllname +DLLTOOL_FLAGS := --as $(AS) -k --dllname INSTALL=@INSTALL@ MKDIR_P=@MKDIR_P@ INCLUDES=-I$(top_srcdir)/include -I$(srcdir)/include \ - -I$(top_srcdir)/src/libcrt/include -nostdinc \ - -iwithprefixbefore include + -I$(top_srcdir)/src/libcrt/include -I$(top_srcdir)/misc/src/include \ + -nostdinc -iwithprefixbefore include ALL_CFLAGS=$(CFLAGS) $(INCLUDES) -DNTDDI_VERSION=0x04000000 .SUFFIXES: .def.in .def @@ -75,7 +98,7 @@ winapi_lib_DDK_LIBRARIES := $(addprefix lib,$(winapi_DDK_DEF:.def=.a)) winapi_lib_DIRECTX_LIBRARIES := $(addprefix lib,$(winapi_DIRECTX_DEF:.def=.a)) winapi_lib_DIRECTX_DINPUT_LIBRARIES := $(addprefix lib,$(winapi_DIRECTX_DINPUT_DEF:.def=.a)) winapi_mri_LIBRARIES := $(addprefix lib,$(winapi_MRI:.mri=.a)) -winapi_lib_EXTRA_LIBRARIES := libuuid.a libscrnsave.a libscrnsavw.a liblargeint.a libdmoguids.a libdxguid.a libstrmiids.a +winapi_lib_EXTRA_LIBRARIES := libuuid.a libscrnsave.a libscrnsavw.a liblargeint.a libdmoguids.a libdxguid.a libdxerr8.a libdxerr9.a libstrmiids.a lib_LIBRARIES := $(mingwrt_lib_LIBRARIES) $(winapi_lib_LIBRARIES) \ $(winapi_lib_EXTRA_LIBRARIES) $(winapi_mri_LIBRARIES) \ @@ -92,8 +115,10 @@ crt0_SOURCES := \ $(SRCDIR)/CRT_fp8.c \ $(SRCDIR)/CRT_fp10.c \ $(SRCDIR)/txtmode.c \ - $(SRCDIR)/binmode.c + $(SRCDIR)/binmode.c \ + $(SRCDIR)/ofmt_stub.s crt0_OBJECTS := $(crt0_SOURCES:.c=.o) $(SRCDIR)/crt2.o $(SRCDIR)/dllcrt2.o +crt0_OBJECTS := $(crt0_OBJECTS:.s=.o) SRCDIR := src/libcrt/crt mingwm10_dll_SOURCES := \ @@ -114,7 +139,7 @@ mold_SOURCES := \ $(SRCDIR)/wscmpi.c mold_OBJECTS := $(mode_SOURCES:.c=.o) -SRCDIR := gpl/profile +SRCDIR := misc/gpl/profile gcrt0_SOURCES := $(SRCDIR)/gcrt0.c gcrt0_OBJECTS := $(SRCDIR)/gcrt1.o $(SRCDIR)/gcrt2.o @@ -132,21 +157,26 @@ libscrnsave_a_OBJECTS := $(libscrnsave_a_SOURCES:.c=.o) scrnsave_o_CFLAGS := -UUNICODE libscrnsavw_a_SOURCES := src/libscrnsave/scrnsave.c -libscrnsavw_a_OBJECTS := src/libscrnsave/srcnsavw.o +libscrnsavw_a_OBJECTS := src/libscrnsave/scrnsavw.o scrnsavw_o_CFLAGS := -DUNICODE liblargeint_a_SOURCES := src/liblargeint/largeint.c liblargeint_a_OBJECTS := $(liblargeint_a_SOURCES:.c=.o) -libdmoguids_a_SOURCES := src/libdmoguids/dmoguids.c +libdmoguids_a_SOURCES := misc/src/libdmoguids/dmoguids.c libdmoguids_a_OBJECTS := $(libdmoguids_a_SOURCES:.c=.o) -libdxguid_a_SOURCES := src/libdxguid/dxguid.c +libdxguid_a_SOURCES := misc/src/libdxguid/dxguid.c libdxguid_a_OBJECTS := $(libdxguid_a_SOURCES:.c=.o) -libstrmiids_a_SOURCES := src/libstrmiids/strmiids.c +libstrmiids_a_SOURCES := misc/src/libstrmiids/strmiids.c libstrmiids_a_OBJECTS := $(libstrmiids_a_SOURCES:.c=.o) +libws2_32_a_SOURCES := src/libws2_32/ws2_32.c +libws2_32_a_OBJECTS := $(libws2_32_a_SOURCES:.c=.o) + +extra_OBJECTS := $(libws2_32_a_OBJECTS) src/libcrt/crt/ofmt_stub.o + msvcrt_DEF = \ msvcrt.def msvcr70.def msvcr71.def msvcr80.def msvcr90.def msvcr100.def \ msvcrtd.def msvcr70d.def msvcr71d.def msvcr80d.def msvcr90d.def msvcr100d.def @@ -263,7 +293,7 @@ fenv_SOURCES := \ $(SRCDIR)/feraiseexcept.c \ $(SRCDIR)/fesetround.c -SRCDIR := src/libcrt/gdtoa +SRCDIR := misc/src/libcrt/gdtoa gdtoa_SOURCES := \ $(SRCDIR)/g__fmt.c \ $(SRCDIR)/gethex.c \ @@ -297,6 +327,7 @@ inttypes_SOURCES := \ $(SRCDIR)/wcstoumax.c SRCDIR := src/libcrt/math +MSRCDIR := misc/src/libcrt/math math_SOURCES := \ $(SRCDIR)/acosf.c \ $(SRCDIR)/acosh.c \ @@ -315,9 +346,9 @@ math_SOURCES := \ $(SRCDIR)/atanhf.c \ $(SRCDIR)/atanhl.c \ $(SRCDIR)/atanl.c \ - $(SRCDIR)/cbrt.c \ - $(SRCDIR)/cbrtf.c \ - $(SRCDIR)/cbrtl.c \ + $(MSRCDIR)/cbrt.c \ + $(MSRCDIR)/cbrtf.c \ + $(MSRCDIR)/cbrtl.c \ $(SRCDIR)/ceilf.S \ $(SRCDIR)/ceill.S \ $(SRCDIR)/copysign.S \ @@ -325,9 +356,9 @@ math_SOURCES := \ $(SRCDIR)/copysignl.S \ $(SRCDIR)/cosf.S \ $(SRCDIR)/coshf.c \ - $(SRCDIR)/coshl.c \ + $(MSRCDIR)/coshl.c \ $(SRCDIR)/cosl.S \ - $(SRCDIR)/erfl.c \ + $(MSRCDIR)/erfl.c \ $(SRCDIR)/exp2.S \ $(SRCDIR)/exp2f.S \ $(SRCDIR)/exp2l.S \ @@ -362,10 +393,10 @@ math_SOURCES := \ $(SRCDIR)/fpclassifyf.c \ $(SRCDIR)/fpclassifyl.c \ $(SRCDIR)/frexpf.c \ - $(SRCDIR)/frexpl.S \ + $(MSRCDIR)/frexpl.S \ $(SRCDIR)/fucom.c \ $(SRCDIR)/hypotf.c \ - $(SRCDIR)/hypotl.c \ + $(MSRCDIR)/hypotl.c \ $(SRCDIR)/ilogb.S \ $(SRCDIR)/ilogbf.S \ $(SRCDIR)/ilogbl.S \ @@ -374,9 +405,9 @@ math_SOURCES := \ $(SRCDIR)/isnanl.c \ $(SRCDIR)/ldexpf.c \ $(SRCDIR)/ldexpl.c \ - $(SRCDIR)/lgamma.c \ - $(SRCDIR)/lgammaf.c \ - $(SRCDIR)/lgammal.c \ + $(MSRCDIR)/lgamma.c \ + $(MSRCDIR)/lgammaf.c \ + $(MSRCDIR)/lgammal.c \ $(SRCDIR)/llrint.c \ $(SRCDIR)/llrintf.c \ $(SRCDIR)/llrintl.c \ @@ -396,7 +427,9 @@ math_SOURCES := \ $(SRCDIR)/lrint.c \ $(SRCDIR)/lrintf.c \ $(SRCDIR)/lrintl.c \ - $(SRCDIR)/lround_generic.c \ + $(SRCDIR)/lround.c \ + $(SRCDIR)/lroundl.c \ + $(SRCDIR)/lroundf.c \ $(SRCDIR)/modff.c \ $(SRCDIR)/modfl.c \ $(SRCDIR)/nearbyint.S \ @@ -406,12 +439,12 @@ math_SOURCES := \ $(SRCDIR)/nextafterl.c \ $(SRCDIR)/nexttoward.c \ $(SRCDIR)/nexttowardf.c \ - $(SRCDIR)/pow.c \ + $(MSRCDIR)/pow.c \ $(SRCDIR)/powf.c \ - $(SRCDIR)/powi.c \ - $(SRCDIR)/powif.c \ - $(SRCDIR)/powil.c \ - $(SRCDIR)/powl.c \ + $(MSRCDIR)/powi.c \ + $(MSRCDIR)/powif.c \ + $(MSRCDIR)/powil.c \ + $(MSRCDIR)/powl.c \ $(SRCDIR)/remainder.S \ $(SRCDIR)/remainderf.S \ $(SRCDIR)/remainderl.S \ @@ -421,28 +454,30 @@ math_SOURCES := \ $(SRCDIR)/rint.c \ $(SRCDIR)/rintf.c \ $(SRCDIR)/rintl.c \ - $(SRCDIR)/round_generic.c \ - $(SRCDIR)/s_erf.c \ + $(SRCDIR)/round.c \ + $(SRCDIR)/roundf.c \ + $(SRCDIR)/roundl.c \ + $(MSRCDIR)/s_erf.c \ $(SRCDIR)/scalbn.S \ $(SRCDIR)/scalbnf.S \ $(SRCDIR)/scalbnl.S \ - $(SRCDIR)/sf_erf.c \ + $(MSRCDIR)/sf_erf.c \ $(SRCDIR)/signbit.c \ $(SRCDIR)/signbitf.c \ $(SRCDIR)/signbitl.c \ $(SRCDIR)/sinf.S \ $(SRCDIR)/sinhf.c \ - $(SRCDIR)/sinhl.c \ + $(MSRCDIR)/sinhl.c \ $(SRCDIR)/sinl.S \ $(SRCDIR)/sqrtf.c \ $(SRCDIR)/sqrtl.c \ $(SRCDIR)/tanf.S \ $(SRCDIR)/tanhf.c \ - $(SRCDIR)/tanhl.c \ + $(MSRCDIR)/tanhl.c \ $(SRCDIR)/tanl.S \ - $(SRCDIR)/tgamma.c \ - $(SRCDIR)/tgammaf.c \ - $(SRCDIR)/tgammal.c \ + $(MSRCDIR)/tgamma.c \ + $(MSRCDIR)/tgammaf.c \ + $(MSRCDIR)/tgammal.c \ $(SRCDIR)/trunc.c \ $(SRCDIR)/truncf.c \ $(SRCDIR)/truncl.c @@ -460,11 +495,11 @@ SRCDIR := src/libcrt/posix/unistd posix_unistd_SOURCES := $(SRCDIR)/ftruncate.c $(SRCDIR)/usleep.c posix_SOURCES := $(posix_libgen_SOURCES) $(posix_unistd_SOURCES) -SRCDIR := src/libcrt/profile +SRCDIR := misc/src/libcrt/profile profile_SOURCES := \ $(SRCDIR)/gmon.c \ $(SRCDIR)/mcount.c \ - gpl/profile/profil.c \ + misc/gpl/profile/profil.c \ libgmon_a_SOURCES := $(profile_SOURCES) libgmon_a_OBJECTS := $(libgmon_a_SOURCES:.c=.o) @@ -476,6 +511,7 @@ search_SOURCES := \ $(SRCDIR)/twalk.c SRCDIR := src/libcrt/stdio +MSRCDIR := misc/src/libcrt/stdio stdio_SOURCES := \ $(SRCDIR)/btowc.c \ $(SRCDIR)/fopen64.c \ @@ -483,7 +519,7 @@ stdio_SOURCES := \ $(SRCDIR)/fseeko64.c \ $(SRCDIR)/ftello64.c \ $(SRCDIR)/lseek64.c \ - $(SRCDIR)/pformat.c \ + $(MSRCDIR)/pformat.c \ $(SRCDIR)/printf.c \ $(SRCDIR)/snprintf.c \ $(SRCDIR)/snwprintf.c \ @@ -544,7 +580,7 @@ libmingwex_a_SOURCES := \ $(ctype_SOURCES) \ $(fenv_SOURCES) \ $(gdtoa_SOURCES) \ - $(inittypes_SOURCES) \ + $(inttypes_SOURCES) \ $(math_SOURCES) \ $(misc_SOURCES) \ $(posix_SOURCES) \ @@ -558,7 +594,7 @@ libmingwex_a_SOURCES := \ libmingwex_a_OBJECTS := $(libmingwex_a_SOURCES:.c=.o) libmingwex_a_OBJECTS := $(libmingwex_a_OBJECTS:.S=.o) -SRCDIR := src/libdinput +SRCDIR := misc/src/libdinput libdinput_a_SOURCES := \ $(SRCDIR)/dinput_joy.c \ $(SRCDIR)/dinput_joy2.c \ @@ -567,11 +603,11 @@ libdinput_a_SOURCES := \ $(SRCDIR)/dinput_mouse2.c libdinput_a_OBJECTS := $(libdinput_a_SOURCES:.c=.o) -SRCDIR := src/libdxerr8 +SRCDIR := misc/src/libdxerr8 libdxerr8_a_SOURCES := $(SRCDIR)/dxerr.c $(SRCDIR)/dxerr8.c $(SRCDIR)/dxerr8w.c libdxerr8_a_OBJECTS := $(libdxerr8_a_SOURCES:.c=.o) -SRCDIR := src/libdxerr9 +SRCDIR := misc/src/libdxerr9 libdxerr9_a_SOURCES := $(SRCDIR)/dxerr.c $(SRCDIR)/dxerr9.c $(SRCDIR)/dxerr9w.c libdxerr9_a_OBJECTS := $(libdxerr9_a_SOURCES:.c=.o) @@ -585,7 +621,7 @@ ALL_SOURCES := \ $(libdxerr8_a_SOURCES) \ $(libdxerr9_a_SOURCES) -all: $(msvcrt_DEF) $(moldname_DEF) $(lib_LIBRARIES) $(bin_LIBRARIES) $(lib_OBJECTS) +all: $(extra_OBJECTS) $(msvcrt_DEF) $(moldname_DEF) $(lib_LIBRARIES) $(bin_LIBRARIES) $(lib_OBJECTS) $(msvcrt_DEF): lib/lib32/msvcrt.def.in N=`echo $@ | sed -e 's|\([a-z]*\)\([0-9]*\).*|\1|'`; \ @@ -597,10 +633,9 @@ $(msvcrt_DEF): lib/lib32/msvcrt.def.in $(CC) -DRUNTIME=$(basename $(notdir $@)) \ -D__FILENAME__=$@ \ -D__$(basename $(notdir $@))__=1 \ - -D__MSVCRT__ -C -E -P -xc-header \ + -C -E -P -xc-header \ $? > $@ - $(moldname_DEF): lib/lib32/moldname.def.in N=`echo $@ | sed -e 's|\([a-z]*\)\([0-9]*\).*|\1|'`; \ test "$$N" == "msvcr" && N="msvcrt"; \ @@ -612,7 +647,7 @@ $(moldname_DEF): lib/lib32/moldname.def.in $(CC) -DRUNTIME=$(basename $(notdir $@)) \ -D__FILENAME__=$$F \ -D__$(basename $(notdir $@))__=1 \ - -D__MSVCRT__ -C -E -P -xc-header \ + -C -E -P -xc-header \ $? > $@ SRCDIR := lib/lib32 @@ -638,15 +673,36 @@ $(notdir $(winapi_lib_DIRECTX_LIBRARIES)): $(addprefix lib/lib32/directx/,$(wina $(DLLTOOL) $(DLLTOOL_FLAGS) $(subst lib,,$(@:.a=.dll)) --def $(addprefix $(top_srcdir)/lib/lib32/directx/,$(subst lib,,$(@:.a=.def))) --output-lib $@ $(RANLIB) $@ +libmoldname.a: moldname.def + @echo Making library $@ from $?. + DLLNAME="msvcrt.dll"; \ + $(DLLTOOL) $(DLLTOOL_FLAGS) $${DLLNAME} -U --def $< --output-lib $@ + $(RANLIB) $@ + +libmoldname%.a: moldname%.def + @echo Making library $@ from $?. + V=`echo $@ | sed -e 's|lib\([a-z]*\)\([0-9]*\).*|\2|'`; \ + DLLNAME="msvcr$${V}.dll"; \ + $(DLLTOOL) $(DLLTOOL_FLAGS) $${DLLNAME} -U --def $< --output-lib $@ + $(RANLIB) $@ + lib%.a: %.def @echo Making library $@ from $?. N=`echo $@ | sed -e 's|lib\([a-z]*\)\([0-9]*\).*|\1|'`; \ V=`echo $@ | sed -e 's|lib\([a-z]*\)\([0-9]*\).*|\2|'`; \ DLLNAME="$${N}$${V}.dll"; \ - $(DLLTOOL) $(DLLTOOL_FLAGS) $${DLLNAME} --def $< --output-lib $@ + $(DLLTOOL) $(DLLTOOL_FLAGS) $${DLLNAME} --def $< --output-lib $@ ; \ + if [[ $${DLLNAME} = msvcrt.dll || \ + $${DLLNAME} = msvcrtd.dll || \ + $${DLLNAME} = msvcr70.dll || \ + $${DLLNAME} = msvcr70d.dll || \ + $${DLLNAME} = msvcr71.dll || \ + $${DLLNAME} = msvcr71d.dll ]]; then \ + $(AR) rc $@ src/libcrt/crt/ofmt_stub.o; \ + fi $(RANLIB) $@ -lib%.a: %.o +lib%.a: src/lib%/%.o @echo Making library $@ from $?. $(AR) rc $@ $*.o $(RANLIB) $@ @@ -655,14 +711,14 @@ lib%.a: %.o $(MKDIR_P) $(@D) $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $< -SRCDIR := src/libcrt/crt -$(SRCDIR)/crt1.o $(SRCDIR)/dllcrt1.o: +%.o : %.s $(MKDIR_P) $(@D) - $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -U__MSVCRT__ -D__CRTDLL__ -o $@ $< + $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $< +SRCDIR := src/libcrt/crt $(SRCDIR)/crt2.o $(SRCDIR)/dllcrt2.o: $(MKDIR_P) $(@D) - $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -D__MSVCRT__ -U__CRTDLL__ -o $@ $< + $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $< $(SRCDIR)/crt1.o: $(SRCDIR)/crt1.c $(SRCDIR)/dllcrt1.o: $(SRCDIR)/dllcrt1.c @@ -678,14 +734,10 @@ $(libscrnsavw_a_OBJECTS): $(libscrnsavw_a_SOURCES) $(MKDIR_P) $(@D) $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $(scrnsavw_o_CFLAGS) -o $@ $< -SRCDIR := gpl/profile -$(SRCDIR)/gcrt1.o: - mkdir -p $(@D) - $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -U__MSVCRT__ -D__CRTDLL__ -o $@ $< - +SRCDIR := misc/gpl/profile $(SRCDIR)/gcrt2.o: mkdir -p $(@D) - $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -D__MSVCRT__ -U__CRTDLL__ -o $@ $< + $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $< $(SRCDIR)/gcrt1.o $(SRCDIR)/gcrt2.o: $(SRCDIR)/gcrt0.c @@ -693,7 +745,7 @@ libmingw32.a: $(libmingw32_a_OBJECTS) $(AR) rc $@ $(libmingw32_a_OBJECTS) $(RANLIB) $@ -libmingwex.a: $(libmingwex_a_OBJECTS) $(winapi_lib_LIBRARIES) +libmingwex.a: $(libmingwex_a_OBJECTS) $(AR) rc $@ $(libmingwex_a_OBJECTS) $(RANLIB) $@ @@ -732,14 +784,11 @@ libdinput.a libdinput8.a: $(libdinput_a_OBJECTS) $(AR) rc $@ $(libdinput_a_OBJECTS) $(RANLIB) $@ -$(libdinput_a_OBJECTS) \ -$(libdmoguids_a_OBJECTS) \ -$(libdxguid_a_OBJECTS) \ -$(libstrmiids_a_OBJECTS): \ - $(libdinput_a_SOURCES) \ - $(libdmoguids_a_SOURCES) \ - $(libdxguid_a_SOURCES) \ - $(libstrmiids_a_SOURCES) +$(libdinput_a_OBJECTS) : $(libdinput_a_SOURCES) +$(libdmoguids_a_OBJECTS) : $(libdmoguids_a_SOURCES) +$(libdxguid_a_OBJECTS) : $(libdxguid_a_SOURCES) +$(libstrmiids_a_OBJECTS) : $(libstrmiids_a_SOURCES) +$(libws2_32_a_OBJECTS) : $(libws2_32_a_SOURCES) $(MKDIR_P) $(@D) $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $< @@ -763,6 +812,14 @@ libstrmiids.a: $(libstrmiids_a_OBJECTS) $(AR) rc $@ $(libstrmiids_a_OBJECTS) $(RANLIB) $@ +# Note this target will override the previous global rules and give a warning +# from the make process. It is needed due to the extra ws2_32.o object file. +libws2_32.a: lib/lib32/ws2_32.def $(libws2_32_a_OBJECTS) + @echo Making library $@ from $(subst lib,,$(@:.a=.def)). + $(DLLTOOL) $(DLLTOOL_FLAGS) $(subst lib,,$(@:.a=.dll)) --def $(addprefix $(top_srcdir)/lib/lib32/,$(subst lib,,$(@:.a=.def))) --output-lib $@ + $(AR) rc $@ $(libws2_32_a_OBJECTS) + $(RANLIB) $@ + _libm_dummy.c: @echo "static int __mingw_libm_dummy;" > _libm_dummy.c @@ -778,15 +835,15 @@ mingwm10.dll: $(mingwm10_dll_OBJECTS) mingwthrd.def libmingwex.a -o mingwm10.dll -L . clean: - rm -f *.def *.s *.a _libm_dummy.c stamp* - rm -rf .deps/ - find . -type f -name \*.o -delete - find . -type f -name \*.dll -delete - test ! -f "Makefile.in" && find . -type d -delete + rm -f *.def *.s *.o *.dll *.a _libm_dummy.c stamp* + rm -rf .deps/ src/ misc/ + cd tests && $(MAKE) $@ distclean: clean rm -f config.log config.status config.cache config.h rm -f core a.out *~ Makefile + rm -rf dist/ + cd tests && $(MAKE) $@ need-DESTDIR-compatibility := prefix bindir includedir libdir mandir @@ -802,6 +859,9 @@ fail-DESTDIR-compatibility: try 'make install $(REJECT)=$(shell echo '$($(REJECT))' | \ sed s,:,:$(DESTDIR),) ...' instead) +check: + cd tests && $(MAKE) $@ + install-dirs: $(need-DESTDIR-compatibility) $(mkinstalldirs) $(DESTDIR)$(bindir) $(mkinstalldirs) $(DESTDIR)$(libdir) @@ -915,7 +975,7 @@ dist-mingwrt-install: all dist-mingwrt-dll: dist-mingwrt-mkdir dist-mingwrt-install cd ./dist/mingwrt/installed ; \ - tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dll.tar.lzma bin/*.dll ;\ + tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dll.tar.lzma bin/*.dll dist-mingwrt-dev: dist-mingwrt-mkdir dist-mingwrt-install cd ./dist/mingwrt/installed ; \ @@ -934,7 +994,7 @@ dist-mingwrt-doc: dist-mingwrt-install tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/mingwrt dist-mingwrt-src: - cp -af $(top_srcdir) $(DESTDIR)$(prefix) + cp -af $(top_srcdir) $(DESTDIR)$(prefix)/mingw.org-wsl cd $(DESTDIR)$(prefix)/mingw.org-wsl ; \ rm -rf .git autom4te.cache ; \ rm -f config.log config.status config.cache config.h ; \ @@ -1053,7 +1113,7 @@ install-w32api: install-w32api-dirs for INC in $(addprefix $(top_srcdir)/include/gdiplus/,$(w32api_lib_GDIPLUS_INCLUDES)); do \ $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/gdiplus/ ; \ done - for INC in $(addprefix $(top_srcdir)/include/GL/,$(w32api_lib_GL_INCLUDES)); do \ + for INC in $(addprefix $(top_srcdir)/misc/include/GL/,$(w32api_lib_GL_INCLUDES)); do \ $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/GL/ ; \ done for INC in $(addprefix $(top_srcdir)/include/directx/,$(w32api_lib_DIRECTX_INCLUDES)); do \ @@ -1089,7 +1149,7 @@ dist-w32api-doc: dist-w32api-install tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/w32api/CONTRIBUTIONS share/doc/w32api/TODO dist-w32api-src: - cp -af $(top_srcdir) $(DESTDIR)$(prefix) + cp -af $(top_srcdir) $(DESTDIR)$(prefix)/mingw.org-wsl cd $(DESTDIR)$(prefix)/mingw.org-wsl ; \ rm -rf .git autom4te.cache ; \ rm -f config.log config.status config.cache config.h ; \ @@ -1103,4 +1163,89 @@ dist-w32api-src: mv mingw.org-wsl w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src ; \ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src.tar.lzma w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src -dist-wsl: all dist-wsl-bin dist-wsl-dll dist-wsl-doc dist-wsl-lic dist-wsl-src +install-wsl-dirs: $(need-DESTDIR-compatibility) + $(mkinstalldirs) $(DESTDIR)$(bindir) + $(mkinstalldirs) $(DESTDIR)$(libdir) + $(mkinstalldirs) $(DESTDIR)$(docdir) + $(mkinstalldirs) $(DESTDIR)$(includedir) + $(mkinstalldirs) $(DESTDIR)$(includedir)/sys + $(mkinstalldirs) $(DESTDIR)$(includedir)/ddk + $(mkinstalldirs) $(DESTDIR)$(includedir)/gdiplus + $(mkinstalldirs) $(DESTDIR)$(includedir)/GL + +install-wsl: install-wsl-dirs + for BIN in $(mingwrt_bin_LIBRARIES); do \ + $(INSTALL) $(INSTALL_FLAGS) $$BIN $(DESTDIR)$(bindir)/ ; \ + done + for INC in $(addprefix $(top_srcdir)/include/,$(mingwrt_lib_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/ ; \ + done + for INC in $(addprefix $(top_srcdir)/include/sys/,$(mingwrt_lib_SYS_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/sys/ ; \ + done + for INC in $(addprefix $(top_srcdir)/include/,$(w32api_lib_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/ ; \ + done + for INC in $(addprefix $(top_srcdir)/include/ddk/,$(w32api_lib_DDK_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/ddk/ ; \ + done + for INC in $(addprefix $(top_srcdir)/include/gdiplus/,$(w32api_lib_GDIPLUS_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/gdiplus/ ; \ + done + for INC in $(addprefix $(top_srcdir)/misc/include/GL/,$(w32api_lib_GL_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/GL/ ; \ + done + for INC in $(addprefix $(top_srcdir)/include/directx/,$(w32api_lib_DIRECTX_INCLUDES)); do \ + $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir) ; \ + done + for LIB in $(mingwrt_lib_LIBRARIES) $(w32api_lib_LIBRARIES); do \ + $(INSTALL) $(INSTALL_FLAGS) $$LIB $(DESTDIR)$(libdir)/ ; \ + done + for OBJ in $(mingwrt_lib_OBJECTS); do \ + $(INSTALL) $(INSTALL_FLAGS) $$OBJ $(DESTDIR)$(libdir)/ ; \ + done + cp -af $(top_srcdir)/LICENSE $(DESTDIR)$(docdir) + cp -af $(top_srcdir)/README $(DESTDIR)$(docdir) + cp -af $(top_srcdir)/doc/historical $(DESTDIR)$(docdir) + +dist-wsl: + $(MAKE) prefix=./dist/wsl/installed _dist-wsl-all_ + +_dist-wsl-all_: all dist-wsl-dll dist-wsl-dev dist-wsl-doc dist-wsl-lic dist-wsl-src + +dist-wsl-mkdir: + $(MKDIR_P) ./dist/wsl/packages + +dist-wsl-install: all dist-wsl-mkdir + $(MAKE) prefix=./dist/wsl/installed install-wsl + +dist-wsl-dll: dist-wsl-install + cd ./dist/wsl/installed ; \ + tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dll.tar.lzma bin/*.dll ; + +dist-wsl-dev: dist-wsl-install + cd ./dist/wsl/installed ; \ + tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dev.tar.lzma include/ lib/ + +dist-wsl-lic: dist-wsl-install + cd ./dist/wsl/installed ; \ + tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-lic.tar.lzma share/doc/mingw.org-wsl/LICENSE + +dist-wsl-doc: dist-wsl-install + cd ./dist/wsl/installed ; \ + tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/mingw.org-wsl/README + +dist-wsl-src: dist-wsl-install + cp -af $(top_srcdir) $(DESTDIR)$(prefix)/mingw.org-wsl + cd $(DESTDIR)$(prefix)/mingw.org-wsl ; \ + rm -rf .git autom4te.cache ; \ + rm -f config.log config.status config.cache config.h ; \ + rm -f .gitignore core a.out Makefile ; \ + find . -type f -name \*~ -delete ; \ + find . -type f -name \*.log -delete ; \ + find . -type f -name \*.bak -delete ; \ + find . -type f -name .\*.swp -delete ; \ + cd .. ; \ + rm -rf mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src ; \ + mv mingw.org-wsl mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src ; \ + tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src.tar.lzma mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src