+##
+# @file Makefile.in
+# Copyright (C) 2012-2013 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.
+##
+#
+# @configure_input@
+#
VPATH=$(srcdir)
PACKAGE_TARNAME=@PACKAGE_TARNAME@
+PACKAGE_VERSION=@PACKAGE_VERSION@
+PACKAGE_RELEASE=@PACKAGE_RELEASE@
+RELEASE_STATUS=@RELEASE_STATUS@
+RELEASE_REFERENCE=@RELEASE_REFERENCE@
srcdir=@srcdir@
top_srcdir=@top_srcdir@
top_builddir=@top_builddir@
libdir=@libdir@
includedir=@includedir@
docdir=@docdir@
+mingwrtdocdir=$(docdir)/../mingwrt
+w32apidocdir=$(docdir)/../w32api
mkinstalldirs=@MKDIR_P@
-CFLAGS=@CFLAGS@
-RANLIB=@RANLIB@
-AS=@AS@
-DLLTOOL=@DLLTOOL@
-INSTALL=@INSTALL@
+CC = @CC@
+CFLAGS = @CFLAGS@
+RANLIB = @RANLIB@
+AS = @AS@
+DLLTOOL = @DLLTOOL@
+DLLTOOL_FLAGS = --as $(AS) -k --dllname
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+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
-lib_LIBRARIES = \
+mingwrt_lib_LIBRARIES = \
libmsvcrt.a \
libmsvcrtd.a \
libmsvcr70.a \
libmingwex.a \
libgmon.a
+OBJDIR := src/libcrt/crt
+mingwrt_lib_OBJECTS = \
+ $(OBJDIR)/CRT_fp10.o \
+ $(OBJDIR)/CRT_fp8.o \
+ $(OBJDIR)/CRT_noglob.o \
+ $(OBJDIR)/binmode.o \
+ $(OBJDIR)/crt2.o \
+ $(OBJDIR)/crtmt.o \
+ $(OBJDIR)/crtst.o \
+ $(OBJDIR)/dllcrt2.o \
+ $(OBJDIR)/txtmode.o
+
+OBJDIR2 := misc/gpl/profile
+mingwrt_lib_OBJECTS += \
+ $(OBJDIR2)/gcrt2.o
+
+winapi_DEF := $(notdir $(wildcard ${top_srcdir}/lib/lib32/*.def))
+winapi_DDK_DEF := $(notdir $(wildcard $(top_srcdir)/lib/lib32/ddk/*.def))
+winapi_DIRECTX_DEF := $(notdir $(wildcard $(top_srcdir)/lib/lib32/directx/*.def))
+winapi_DIRECTX_DEF := $(subst dinput.def ,,$(winapi_DIRECTX_DEF))
+winapi_DIRECTX_DEF := $(subst dinput8.def ,,$(winapi_DIRECTX_DEF))
+winapi_DIRECTX_DINPUT_DEF := dinput.def dinput8.def
+winapi_MRI := $(notdir $(wildcard ${top_srcdir}/lib/lib32/*.mri))
+winapi_lib_LIBRARIES := $(addprefix lib,$(winapi_DEF:.def=.a))
+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 libdxerr8.a libdxerr9.a libstrmiids.a
+
+lib_LIBRARIES := $(mingwrt_lib_LIBRARIES) $(winapi_lib_LIBRARIES) \
+ $(winapi_lib_EXTRA_LIBRARIES) $(winapi_mri_LIBRARIES) \
+ $(winapi_lib_DDK_LIBRARIES) $(winapi_lib_DIRECTX_LIBRARIES) \
+ $(winapi_lib_DIRECTX_DINPUT_LIBRARIES)
+
SRCDIR := src/libcrt/crt
crt0_SOURCES := \
$(SRCDIR)/crt1.c \
$(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 := \
$(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
+gcrt0_OBJECTS := $(SRCDIR)/gcrt2.o
lib_OBJECTS := $(crt0_OBJECTS) $(gcrt0_OBJECTS)
bin_LIBRARIES := mingwm10.dll
-doc_DOCUMENTS := README LICENSE
+doc_DOCUMENTS := ChangeLog README LICENSE NEWS TODO NOTES
+doc_DOCUMENTS_EXTRA := doc/historical/mingw doc/historical/w32api
+
+libuuid_a_SOURCES := $(addprefix src/libuuid/,$(notdir $(wildcard ${top_srcdir}/src/libuuid/*.c)))
+libuuid_a_OBJECTS := $(libuuid_a_SOURCES:.c=.o)
+
+libscrnsave_a_SOURCES := src/libscrnsave/scrnsave.c
+libscrnsave_a_OBJECTS := $(libscrnsave_a_SOURCES:.c=.o)
+scrnsave_o_CFLAGS := -UUNICODE
+
+libscrnsavw_a_SOURCES := src/libscrnsave/scrnsave.c
+libscrnsavw_a_OBJECTS := src/libscrnsave/scrnsavw.o
+scrnsavw_o_CFLAGS := -DUNICODE
+
+libshell32_a_SOURCES := src/libshell32/shell32.c
+libshell32_a_OBJECTS := src/libshell32/shell32.o
+shell32_o_CFLAGS := -DUNICODE
+
+liblargeint_a_SOURCES := src/liblargeint/largeint.c
+liblargeint_a_OBJECTS := $(liblargeint_a_SOURCES:.c=.o)
+
+libdmoguids_a_SOURCES := misc/src/libdmoguids/dmoguids.c
+libdmoguids_a_OBJECTS := $(libdmoguids_a_SOURCES:.c=.o)
+
+libdxguid_a_SOURCES := misc/src/libdxguid/dxguid.c
+libdxguid_a_OBJECTS := $(libdxguid_a_SOURCES:.c=.o)
+
+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
+ msvcrt.def msvcr70.def msvcr71.def msvcr80.def msvcr90.def msvcr100.def \
+ msvcrtd.def msvcr70d.def msvcr71d.def msvcr80d.def msvcr90d.def msvcr100d.def
moldname_DEF = \
- moldname.def \
- moldnamed.def \
- moldname70.def \
- moldname71.def \
- moldname80.def \
- moldname90.def \
- moldname100.def \
- moldname70d.def \
- moldname71d.def \
- moldname80d.def \
- moldname90d.def \
- moldname100d.def
+ moldname.def moldnamed.def moldname70.def moldname71.def moldname80.def \
+ moldname90.def moldname100.def moldname70d.def moldname71d.def \
+ moldname80d.def moldname90d.def moldname100d.def
SRCDIR := src/libcrt/crt
libmingw32_a_SOURCES := \
$(SRCDIR)/cprojl.c \
$(SRCDIR)/csinl.c \
$(SRCDIR)/ctanl.c
+complex_SOURCES := $(wildcard src/libcrt/complex/*.c)
SRCDIR := src/libcrt/ctype
ctype_SOURCES := $(SRCDIR)/isblank.c $(SRCDIR)/iswblank.c
$(SRCDIR)/feraiseexcept.c \
$(SRCDIR)/fesetround.c
-SRCDIR := src/libcrt/gdtoa
+SRCDIR := misc/src/libcrt/gdtoa
gdtoa_SOURCES := \
$(SRCDIR)/g__fmt.c \
$(SRCDIR)/gethex.c \
$(SRCDIR)/wcstoumax.c
SRCDIR := src/libcrt/math
+MSRCDIR := misc/src/libcrt/math
math_SOURCES := \
$(SRCDIR)/acosf.c \
$(SRCDIR)/acosh.c \
$(SRCDIR)/acosl.c \
$(SRCDIR)/asinf.c \
$(SRCDIR)/asinh.c \
- $(SRCDIR)/asinhf.c \
- $(SRCDIR)/asinhl.c \
$(SRCDIR)/asinl.c \
$(SRCDIR)/atan2f.c \
$(SRCDIR)/atan2l.c \
$(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 \
$(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 \
$(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 \
$(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 \
$(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 \
$(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 \
$(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
$(SRCDIR)/getopt.c \
$(SRCDIR)/membarrier.c \
$(SRCDIR)/mingw-aligned-malloc.c \
- $(SRCDIR)/mingw-fseek.c
+ $(SRCDIR)/mingw-fseek.c \
+ $(SRCDIR)/glob.c
SRCDIR := src/libcrt/posix/libgen
posix_libgen_SOURCES := $(SRCDIR)/basename.c $(SRCDIR)/dirname.c
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)
$(SRCDIR)/twalk.c
SRCDIR := src/libcrt/stdio
+MSRCDIR := misc/src/libcrt/stdio
stdio_SOURCES := \
$(SRCDIR)/btowc.c \
$(SRCDIR)/fopen64.c \
$(SRCDIR)/fseeko64.c \
$(SRCDIR)/ftello64.c \
$(SRCDIR)/lseek64.c \
- $(SRCDIR)/pformat.c \
+ $(MSRCDIR)/pformat.c \
$(SRCDIR)/printf.c \
$(SRCDIR)/snprintf.c \
$(SRCDIR)/snwprintf.c \
$(ctype_SOURCES) \
$(fenv_SOURCES) \
$(gdtoa_SOURCES) \
- $(inittypes_SOURCES) \
+ $(inttypes_SOURCES) \
$(math_SOURCES) \
$(misc_SOURCES) \
$(posix_SOURCES) \
libmingwex_a_OBJECTS := $(libmingwex_a_SOURCES:.c=.o)
libmingwex_a_OBJECTS := $(libmingwex_a_OBJECTS:.S=.o)
+SRCDIR := src/libcrt/math
+libmingwex_a_OBJECTS := $(libmingwex_a_OBJECTS) $(SRCDIR)/asinhl.o
+libmingwex_a_OBJECTS := $(libmingwex_a_OBJECTS) $(SRCDIR)/asinhf.o
+
+SRCDIR := misc/src/libdinput
+libdinput_a_SOURCES := \
+ $(SRCDIR)/dinput_joy.c \
+ $(SRCDIR)/dinput_joy2.c \
+ $(SRCDIR)/dinput_kbd.c \
+ $(SRCDIR)/dinput_mouse.c \
+ $(SRCDIR)/dinput_mouse2.c
+libdinput_a_OBJECTS := $(libdinput_a_SOURCES:.c=.o)
+
+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 := misc/src/libdxerr9
+libdxerr9_a_SOURCES := $(SRCDIR)/dxerr.c $(SRCDIR)/dxerr9.c $(SRCDIR)/dxerr9w.c
+libdxerr9_a_OBJECTS := $(libdxerr9_a_SOURCES:.c=.o)
+
ALL_SOURCES := \
$(libmingw32_a_SOURCES) \
$(libmingwthrd_a_SOURCES) \
$(libgmon_a_SOURCES) \
$(libmingwex_a_SOURCES) \
- $(mingwm10_dll_SOURCES)
+ $(mingwm10_dll_SOURCES) \
+ $(libdinput_a_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|'`; \
$(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"; \
$(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
+$(notdir $(winapi_lib_LIBRARIES)): $(addprefix lib/lib32/,$(winapi_DEF))
+ @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 $@
+ $(RANLIB) $@
+
+$(notdir $(winapi_mri_LIBRARIES)): $(addprefix lib/lib32/,$(winapi_MRI))
+ @echo Making library $@ from $<.
+ $(AR) -M < $<
+ $(RANLIB) $@
+
+SRCDIR := lib/lib32/ddk
+$(notdir $(winapi_lib_DDK_LIBRARIES)): $(addprefix lib/lib32/ddk/,$(winapi_DDK_DEF))
+ @echo Making library $@ from $(subst lib,,$(@:.a=.def)).
+ $(DLLTOOL) $(DLLTOOL_FLAGS) $(subst lib,,$(@:.a=.dll)) --def $(addprefix $(top_srcdir)/lib/lib32/ddk/,$(subst lib,,$(@:.a=.def))) --output-lib $@
+ $(RANLIB) $@
+
+SRCDIR := lib/lib32/directx
+$(notdir $(winapi_lib_DIRECTX_LIBRARIES)): $(addprefix lib/lib32/directx/,$(winapi_DIRECTX_DEF))
+ @echo Making library $@ from $(subst lib,,$(@:.a=.def)).
+ $(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) --as $(AS) -k -U --dllname $${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: src/lib%/%.o
+ @echo Making library $@ from $?.
+ $(AR) rc $@ $*.o
$(RANLIB) $@
%.o : %.c
- mkdir -p $(@D)
+ $(MKDIR_P) $(@D)
$(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $<
-SRCDIR := src/libcrt/crt
-$(SRCDIR)/crt1.o $(SRCDIR)/dllcrt1.o:
- mkdir -p $(@D)
- $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -U__MSVCRT__ -D__CRTDLL__ -o $@ $<
+%.o : %.s
+ $(MKDIR_P) $(@D)
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $<
+
+SRCDIR := src/libcrt/math
+$(SRCDIR)/%f.o: $(SRCDIR)/%.c
+ $(MKDIR_P) $(@D)
+ $(CC) -c -D FUNCTION=$(@F:.o=) $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $<
+
+$(SRCDIR)/%l.o: $(SRCDIR)/%.c
+ $(MKDIR_P) $(@D)
+ $(CC) -c -D FUNCTION=$(@F:.o=) $(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 $@ $<
+ $(MKDIR_P) $(@D)
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -o $@ $<
-$(SRCDIR)/crt1.o: $(SRCDIR)/crt1.c
-$(SRCDIR)/dllcrt1.o: $(SRCDIR)/dllcrt1.c
$(SRCDIR)/crt2.o: $(SRCDIR)/crt1.c
$(SRCDIR)/dllcrt2.o: $(SRCDIR)/dllcrt1.c
-SRCDIR := gpl/profile
-$(SRCDIR)/gcrt1.o:
- mkdir -p $(@D)
- $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -U__MSVCRT__ -D__CRTDLL__ -o $@ $<
+SRCDIR := src/libscrnsave
+$(libscrnsave_a_OBJECTS): $(libscrnsave_a_SOURCES)
+ $(MKDIR_P) $(@D)
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $(scrnsave_o_CFLAGS) -o $@ $<
+
+$(libscrnsavw_a_OBJECTS): $(libscrnsavw_a_SOURCES)
+ $(MKDIR_P) $(@D)
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $(scrnsavw_o_CFLAGS) -o $@ $<
+SRCDIR := src/libshell32
+$(libshell32_a_OBJECTS): $(libshell32_a_SOURCES)
+ $(MKDIR_P) $(@D)
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $(shell32_o_CFLAGS) -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
+$(SRCDIR)/gcrt2.o: $(SRCDIR)/gcrt0.c
libmingw32.a: $(libmingw32_a_OBJECTS)
$(AR) rc $@ $(libmingw32_a_OBJECTS)
$(RANLIB) $@
libmingwthrd_old.a: $(libmingwthrd_a_OBJECTS) mingwm10.dll mingwthrd.def
- $(DLLTOOL) $(DLLTOOL_FLAGS) --dllname mingwm10.dll \
+ $(DLLTOOL) $(DLLTOOL_FLAGS) mingwm10.dll \
--def mingwthrd.def --output-lib $@
$(AR) rc $@ $(libmingwthrd_a_OBJECTS)
$(RANLIB) $@
$(AR) rc $@ $(libgmon_a_OBJECTS)
$(RANLIB) $@
+libuuid.a: $(libuuid_a_OBJECTS)
+ $(AR) rc $@ $(libuuid_a_OBJECTS)
+ $(RANLIB) $@
+
+libscrnsave.a: $(libscrnsave_a_OBJECTS)
+ $(AR) rc $@ $(libscrnsave_a_OBJECTS)
+ $(RANLIB) $@
+
+libscrnsavw.a: $(libscrnsavw_a_OBJECTS)
+ $(AR) rc $@ $(libscrnsavw_a_OBJECTS)
+ $(RANLIB) $@
+
+liblargeint.a: $(liblargeint_a_OBJECTS)
+ $(AR) rc $@ $(liblargeint_a_OBJECTS)
+ $(RANLIB) $@
+
+libdinput.a libdinput8.a: $(libdinput_a_OBJECTS)
+ $(DLLTOOL) $(DLLTOOL_FLAGS) $(subst lib,,$(@:.a=.dll)) --def $(addprefix $(top_srcdir)/lib/lib32/directx/,$(subst lib,,$(@:.a=.def))) --output-lib $@
+ $(AR) rc $@ $(libdinput_a_OBJECTS)
+ $(RANLIB) $@
+
+$(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 $@ $<
+
+libdxerr8.a: $(libdxerr8_a_OBJECTS)
+ $(AR) rc $@ $(libdxerr8_a_OBJECTS)
+ $(RANLIB) $@
+
+libdxerr9.a: $(libdxerr9_a_OBJECTS)
+ $(AR) rc $@ $(libdxerr9_a_OBJECTS)
+ $(RANLIB) $@
+
+libdmoguids.a: $(libdmoguids_a_OBJECTS)
+ $(AR) rc $@ $(libdmoguids_a_OBJECTS)
+ $(RANLIB) $@
+
+libdxguid.a: $(libdxguid_a_OBJECTS)
+ $(AR) rc $@ $(libdxguid_a_OBJECTS)
+ $(RANLIB) $@
+
+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) $@
+
+# Note this target will override the previous global rules and give a warning
+# from the make process. It is needed due to the extra shell32.o object file.
+libshell32.a: lib/lib32/shell32.def $(libshell32_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 $@ $(libshell32_a_OBJECTS)
+ $(RANLIB) $@
+
_libm_dummy.c:
@echo "static int __mingw_libm_dummy;" > _libm_dummy.c
mingwm10.dll: $(mingwm10_dll_OBJECTS) mingwthrd.def libmingwex.a
$(CC) $(mingwm10_dll_FLAGS) $(mingwm10_dll_OBJECTS) mingwthrd.def \
- -o mingwm10.dll
+ -o mingwm10.dll -L .
clean:
- rm -f *.def *.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
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)
$(mkinstalldirs) $(DESTDIR)$(docdir)
+ $(mkinstalldirs) $(DESTDIR)$(docdir)/historical
+ $(mkinstalldirs) $(DESTDIR)$(docdir)/historical/mingw
+ $(mkinstalldirs) $(DESTDIR)$(docdir)/historical/mingw/man
+ $(mkinstalldirs) $(DESTDIR)$(docdir)/historical/w32api
$(mkinstalldirs) $(DESTDIR)$(includedir)
for I in `find $(top_srcdir)/include/* -type d`; do \
J=`basename $$I`; \
install-libs: all
for LIB in $(lib_LIBRARIES); do \
- $(INSTALL) $(INSTALL_FLAGS) $$LIB $(DESTDIR)$(libdir)/$$LIB ; \
+ $(INSTALL_DATA) $$LIB $(DESTDIR)$(libdir)/$$LIB ; \
done
install-objs: all
for OBJ in $(lib_OBJECTS); do \
- $(INSTALL) $(INSTALL_FLAGS) $$OBJ $(DESTDIR)$(libdir) ; \
+ $(INSTALL_DATA) $$OBJ $(DESTDIR)$(libdir) ; \
done
install-docs:
for DOC in $(doc_DOCUMENTS); do \
- $(INSTALL) $(INSTALL_FLAGS) $(top_srcdir)/$$DOC $(DESTDIR)$(docdir)/$$DOC ; \
+ $(INSTALL_DATA) $(top_srcdir)/$$DOC $(DESTDIR)$(docdir)/$$DOC ; \
done
+ cp -af $(top_srcdir)/doc/historical $(DESTDIR)$(docdir) ;
install-includes:
for INC in $(top_srcdir)/include/*.h; do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir) ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir) ; \
done
for I in `find $(top_srcdir)/include/* -type d`; do \
J=`basename $$I`; \
for INC in $$I/*.h; do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/$$J ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/$$J ; \
done \
done
install-bins: all
for BIN in $(bin_LIBRARIES); do \
- $(INSTALL) $(INSTALL_FLAGS) $$BIN $(DESTDIR)$(bindir)/$$BIN ; \
+ $(INSTALL_DATA) $$BIN $(DESTDIR)$(bindir)/$$BIN ; \
done
install: all \
install-includes \
install-bins
+install-mingwrt-dirs: $(need-DESTDIR-compatibility)
+ $(mkinstalldirs) $(DESTDIR)$(bindir)
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ $(mkinstalldirs) $(DESTDIR)$(mingwrtdocdir)
+ $(mkinstalldirs) $(DESTDIR)$(mingwrtdocdir)/historical
+ rmdir $(DESTDIR)$(mingwrtdocdir)/../mingw-org-wsl
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+ $(mkinstalldirs) $(DESTDIR)$(includedir)/sys
+
+mingwrt_bin_LIBRARIES := mingwm10.dll
+mingwrt_lib_INCLUDES := \
+ _mingw.h dirent.h glob.h getopt.h math.h setjmp.h strings.h \
+ assert.h dos.h inttypes.h mbctype.h share.h wchar.h varargs.h \
+ complex.h errno.h io.h mbstring.h signal.h tchar.h wctype.h \
+ conio.h excpt.h libgen.h mem.h stdint.h time.h \
+ ctype.h fcntl.h limits.h memory.h stdio.h unistd.h \
+ dir.h fenv.h locale.h process.h stdlib.h utime.h \
+ direct.h float.h malloc.h search.h string.h values.h
+
+mingwrt_lib_SYS_INCLUDES := \
+ fcntl.h locking.h stat.h timeb.h unistd.h \
+ file.h param.h time.h types.h utime.h
+
+
+install-mingwrt: install-mingwrt-dirs
+ for BIN in $(mingwrt_bin_LIBRARIES); do \
+ $(INSTALL_DATA) $$BIN $(DESTDIR)$(bindir)/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/,$(mingwrt_lib_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/sys/,$(mingwrt_lib_SYS_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/sys/ ; \
+ done
+ for LIB in $(mingwrt_lib_LIBRARIES); do \
+ $(INSTALL_DATA) $$LIB $(DESTDIR)$(libdir)/ ; \
+ done
+ for OBJ in $(mingwrt_lib_OBJECTS); do \
+ $(INSTALL_DATA) $$OBJ $(DESTDIR)$(libdir)/ ; \
+ done
+ cp -af $(top_srcdir)/doc/historical/mingw/* $(DESTDIR)$(mingwrtdocdir)/historical/ ;
+
+dist: all dist-mingwrt dist-w32api dist-wsl
+
+dist-mingwrt:
+ $(MAKE) prefix=./dist/mingwrt/installed _dist-mingwrt-all_
+
+_dist-mingwrt-all_: all dist-mingwrt-dll dist-mingwrt-dev dist-mingwrt-lic dist-mingwrt-doc dist-mingwrt-src
+
+dist-mingwrt-mkdir:
+ $(MKDIR_P) ./dist/mingwrt/packages
+
+dist-mingwrt-install: all
+ $(MAKE) prefix=./dist/mingwrt/installed install-mingwrt
+
+dist-mingwrt-dll: dist-mingwrt-mkdir dist-mingwrt-install
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/mingwrt/installed ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dll.tar.lzma bin/*.dll
+else
+ cd ./dist/mingwrt/installed ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-dll.tar.lzma bin/*.dll
+endif
+
+dist-mingwrt-dev: dist-mingwrt-mkdir dist-mingwrt-install
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/mingwrt/installed ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dev.tar.lzma include/ lib/
+else
+ cd ./dist/mingwrt/installed ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-dev.tar.lzma include/ lib/
+endif
+
+$(DESTDIR)$(mingwrtdocdir)/LICENSE: dist-mingwrt-mkdir dist-mingwrt-install
+ cp $(top_srcdir)/LICENSE $(DESTDIR)$(mingwrtdocdir)
+
+dist-mingwrt-lic: $(DESTDIR)$(mingwrtdocdir)/LICENSE
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/mingwrt/installed ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-lic.tar.lzma share/doc/mingwrt/LICENSE
+else
+ cd ./dist/mingwrt/installed ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-lic.tar.lzma share/doc/mingwrt/LICENSE
+endif
+
+dist-mingwrt-doc: dist-mingwrt-install
+ifeq ($(RELEASE_STATUS),prod)
+ for DOC in $(doc_DOCUMENTS); do \
+ $(INSTALL) $(INSTALL_FLAGS) $(top_srcdir)/$$DOC $(DESTDIR)$(mingwrtdocdir)/$$DOC ; \
+ done
+ cd ./dist/mingwrt/installed ; \
+ rm -f share/doc/mingwrt/LICENSE ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/mingwrt
+else
+ for DOC in $(doc_DOCUMENTS); do \
+ $(INSTALL) $(INSTALL_FLAGS) $(top_srcdir)/$$DOC $(DESTDIR)$(mingwrtdocdir)/$$DOC ; \
+ done
+ cd ./dist/mingwrt/installed ; \
+ rm -f share/doc/mingwrt/LICENSE ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-doc.tar.lzma share/doc/mingwrt
+endif
+
+dist-mingwrt-src:
+ifeq ($(RELEASE_STATUS),prod)
+ 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 mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src ; \
+ mv mingw.org-wsl mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src.tar.lzma mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-src
+else
+ 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 mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src ; \
+ mv mingw.org-wsl mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src ; \
+ tar acf ../packages/mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src.tar.lzma mingwrt-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src
+endif
+
+install-w32api-dirs: $(need-DESTDIR-compatibility)
+ $(mkinstalldirs) $(DESTDIR)$(bindir)
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ $(mkinstalldirs) $(DESTDIR)$(w32apidocdir)
+ $(mkinstalldirs) $(DESTDIR)$(w32apidocdir)/historical
+ rmdir $(DESTDIR)$(w32apidocdir)/../mingw-org-wsl
+ $(mkinstalldirs) $(DESTDIR)$(includedir)
+ $(mkinstalldirs) $(DESTDIR)$(includedir)/ddk
+ $(mkinstalldirs) $(DESTDIR)$(includedir)/gdiplus
+ $(mkinstalldirs) $(DESTDIR)$(includedir)/GL
+
+w32api_lib_INCLUDES := \
+ accctrl.h aclapi.h aclui.h adsprop.h afxres.h audevcod.h aviriff.h \
+ aygshell.h basetsd.h basetyps.h bdatypes.h cderr.h cguid.h cmnquery.h \
+ comcat.h commctrl.h commdlg.h control.h cpl.h cplext.h custcntl.h \
+ dbt.h dde.h ddeml.h devguid.h dhcpcsdk.h dlgs.h \
+ docobj.h dsadmin.h dsclient.h dsgetdc.h dshow.h dsquery.h dsrole.h \
+ dvdevcod.h dvdmedia.h edevdefs.h errorrep.h errors.h \
+ evcode.h exdisp.h exdispid.h fltdefs.h gdiplus.h httpext.h icm.h idispids.h \
+ il21dec.h imagehlp.h imm.h initguid.h intshcut.h ipexport.h iphlpapi.h \
+ ipifcons.h ipinfoid.h iprtrmib.h iptypes.h ipxconst.h ipxrtdef.h ipxtfflt.h \
+ isguids.h ks.h ksmedia.h largeint.h lm.h lmaccess.h lmalert.h lmapibuf.h \
+ lmat.h lmaudit.h lmbrowsr.h lmchdev.h lmconfig.h lmcons.h lmerr.h lmerrlog.h \
+ lmmsg.h lmremutl.h lmrepl.h lmserver.h lmshare.h lmsname.h lmstats.h lmsvc.h \
+ lmuse.h lmuseflg.h lmwksta.h lzexpand.h mapi.h mciavi.h mcx.h mgm.h \
+ mgmtapi.h mlang.h mmreg.h mmsystem.h mpegtype.h mprapi.h mq.h msacm.h \
+ mshtml.h mswsock.h nb30.h nddeapi.h nspapi.h ntdef.h ntdll.h ntdsapi.h \
+ ntdsbcli.h ntldap.h ntsecapi.h ntsecpkg.h oaidl.h objbase.h objfwd.h \
+ objidl.h objsafe.h objsel.h ocidl.h odbcinst.h ole.h ole2.h ole2ver.h \
+ oleacc.h oleauto.h olectl.h olectlid.h oledlg.h oleidl.h pbt.h poppack.h \
+ powrprof.h prsht.h psapi.h pshpack1.h pshpack2.h pshpack4.h pshpack8.h \
+ qedit.h rapi.h ras.h rasdlg.h raserror.h rassapi.h reason.h regstr.h \
+ richedit.h richole.h routprot.h rpc.h rpcdce.h rpcdce2.h rpcdcep.h rpcndr.h \
+ rpcnsi.h rpcnsip.h rpcnterr.h rpcproxy.h rtutils.h schannel.h schnlsp.h \
+ scrnsave.h sddl.h sdkddkver.h secext.h security.h servprov.h setupapi.h \
+ shellapi.h shldisp.h shlguid.h shlobj.h shlwapi.h shobjidl.h snmp.h \
+ specstrings.h sql.h sqlext.h sqltypes.h sqlucode.h sspi.h stm.h strmif.h \
+ subauth.h svcguid.h tlhelp32.h tmschema.h unknwn.h userenv.h usp10.h \
+ uxtheme.h vfw.h vidcap.h vmr9.h vptype.h w32api.h winable.h winbase.h \
+ winber.h wincon.h wincrypt.h windef.h windns.h windows.h windowsx.h \
+ winerror.h wingdi.h wininet.h winioctl.h winldap.h winnetwk.h winnls.h \
+ winnt.h winperf.h winreg.h winresrc.h winsnmp.h winsock.h winsock2.h \
+ winspool.h winsvc.h winuser.h winver.h ws2spi.h ws2tcpip.h wsahelp.h wsipx.h \
+ wsnetbs.h wtsapi32.h wtypes.h xprtdefs.h zmouse.h
+
+w32api_lib_DDK_INCLUDES := \
+ atm.h batclass.h cfg.h cfgmgr32.h d4drvif.h d4iface.h ddkmapi.h hidclass.h \
+ hidpi.h hidsdi.h hidusage.h kbdmou.h mcd.h miniport.h minitape.h mountdev.h \
+ mountmgr.h ndis.h ndisguid.h ndistapi.h ndiswan.h netevent.h netpnp.h \
+ newdev.h ntapi.h ntdd8042.h ntddbeep.h ntddcdrm.h ntddcdvd.h ntddchgr.h \
+ ntdddisk.h ntddk.h ntddkbd.h ntddmou.h ntddndis.h ntddpar.h ntddpcm.h \
+ ntddscsi.h ntddser.h ntddstor.h ntddtape.h ntddtdi.h ntddvdeo.h ntddvol.h \
+ ntifs.h ntpoapi.h ntstatus.h parallel.h pfhook.h poclass.h scsi.h scsiscan.h \
+ scsiwmi.h smbus.h srb.h storport.h tdi.h tdiinfo.h tdikrnl.h tdistat.h \
+ tvout.h upssvc.h usb.h usb100.h usbcamdi.h usbdi.h usbioctl.h usbiodef.h \
+ usbscan.h usbuser.h video.h videoagp.h win2k.h winddi.h winddk.h winnt4.h \
+ winxp.h ws2san.h xfilter.h
+
+w32api_lib_GDIPLUS_INCLUDES := \
+ gdiplus.h gdiplusbase.h gdiplusbrush.h gdipluscolor.h gdipluscolormatrix.h \
+ gdipluseffects.h gdiplusenums.h gdiplusflat.h gdiplusgpstubs.h \
+ gdiplusgraphics.h gdiplusheaders.h gdiplusimageattributes.h \
+ gdiplusimagecodec.h gdiplusimaging.h gdiplusimpl.h gdiplusinit.h \
+ gdipluslinecaps.h gdiplusmatrix.h gdiplusmem.h gdiplusmetafile.h \
+ gdiplusmetaheader.h gdipluspath.h gdipluspen.h gdipluspixelformats.h \
+ gdiplusstringformat.h gdiplustypes.h
+
+w32api_lib_GL_INCLUDES := gl.h glext.h glu.h
+
+w32api_lib_DIRECTX_INCLUDES := d3d9.h d3d9caps.h d3d9types.h dxerr8.h dxerr9.h
+
+w32api_lib_LIBRARIES := \
+ libaclui.a libadvapi32.a libapcups.a libavicap32.a libavifil32.a \
+ libbthprops.a libcap.a libcfgmgr32.a libcomctl32.a libcomdlg32.a \
+ libcrypt32.a libctl3d32.a libd3d8.a libd3d9.a libd3dim.a libd3drm.a \
+ libd3dx8d.a libd3dx9d.a libd3dxof.a libddraw.a libdhcpcsvc.a libdinput.a \
+ libdinput8.a libdlcapi.a libdmoguids.a libdnsapi.a libdplayx.a libdpnaddr.a \
+ libdpnet.a libdpnlobby.a libdpvoice.a libdsetup.a libdsound.a libdxapi.a \
+ libdxerr8.a libdxerr9.a libdxguid.a libfaultrep.a libgdi32.a libgdiplus.a \
+ libglaux.a libglu32.a libhal.a libhid.a libhidparse.a libicmui.a \
+ libigmpagnt.a libimagehlp.a libimm32.a libiphlpapi.a libkernel32.a \
+ libksproxy.a libksuser.a liblargeint.a liblz32.a libmapi32.a libmcd.a \
+ libmfcuia32.a libmgmtapi.a libmpr.a libmprapi.a libmqrt.a libmsacm32.a \
+ libmscms.a libmsdmo.a libmsimg32.a libmsvcp60.a libmsvfw32.a libmswsock.a \
+ libnddeapi.a libndis.a libnetapi32.a libnewdev.a libntdll.a libntoskrnl.a \
+ libodbc32.a libodbccp32.a libole32.a liboleacc.a liboleaut32.a libolecli32.a \
+ liboledlg.a libolepro32.a libolesvr32.a libopengl32.a libpenwin32.a \
+ libpkpd32.a libpowrprof.a libpsapi.a libquartz.a librapi.a librasapi32.a \
+ librasdlg.a librpcdce4.a librpcns4.a librpcrt4.a librtm.a librtutils.a \
+ libscrnsave.a libscrnsavw.a libscsiport.a libsecur32.a libsetupapi.a \
+ libshell32.a libshfolder.a libshlwapi.a libsnmpapi.a libstrmiids.a \
+ libsvrapi.a libtapi32.a libtdi.a libthunk32.a liburl.a libusbcamd.a \
+ libusbcamd2.a libuser32.a libuserenv.a libusp10.a libuuid.a libuxtheme.a \
+ libvdmdbg.a libversion.a libvfw32.a libvideoprt.a libwin32k.a libwin32spl.a \
+ libwininet.a libwinmm.a libwinspool.a libwinstrm.a libwldap32.a libwow32.a \
+ libws2_32.a libwsnmp32.a libwsock32.a libwst.a libwtsapi32.a
+
+install-w32api: install-w32api-dirs
+ for INC in $(addprefix $(top_srcdir)/include/,$(w32api_lib_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/ddk/,$(w32api_lib_DDK_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ddk/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/gdiplus/,$(w32api_lib_GDIPLUS_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/gdiplus/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/misc/include/GL/,$(w32api_lib_GL_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/GL/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/directx/,$(w32api_lib_DIRECTX_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir) ; \
+ done
+ for LIB in $(w32api_lib_LIBRARIES); do \
+ $(INSTALL_DATA) $$LIB $(DESTDIR)$(libdir)/ ; \
+ done
+ cp -af $(top_srcdir)/doc/historical/w32api/* $(DESTDIR)$(w32apidocdir)/historical/ ;
+
+dist-w32api:
+ $(MAKE) prefix=./dist/w32api/installed _dist-w32api-all_
+
+_dist-w32api-all_: all dist-w32api-dev dist-w32api-lic dist-w32api-doc dist-w32api-src
+
+dist-w32api-mkdir:
+ $(MKDIR_P) ./dist/w32api/packages
+
+dist-w32api-install: all dist-w32api-mkdir
+ $(MAKE) prefix=./dist/w32api/installed install-w32api
+
+dist-w32api-dev: dist-w32api-install
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/w32api/installed ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dev.tar.lzma include/ lib/
+else
+ cd ./dist/w32api/installed ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-dev.tar.lzma include/ lib/
+endif
+
+$(DESTDIR)$(w32apidocdir)/LICENSE: dist-w32api-mkdir dist-w32api-install
+ cp $(top_srcdir)/LICENSE $(DESTDIR)$(w32apidocdir)
+
+dist-w32api-lic: $(DESTDIR)$(w32apidocdir)/LICENSE
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/w32api/installed ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-lic.tar.lzma share/doc/w32api/LICENSE
+else
+ cd ./dist/w32api/installed ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-lic.tar.lzma share/doc/w32api/LICENSE
+endif
+
+dist-w32api-doc: dist-w32api-install
+ifeq ($(RELEASE_STATUS),prod)
+ for DOC in $(doc_DOCUMENTS); do \
+ $(INSTALL) $(INSTALL_FLAGS) $(top_srcdir)/$$DOC $(DESTDIR)$(w32apidocdir)/$$DOC ; \
+ done
+ cd ./dist/w32api/installed ; \
+ rm -f share/doc/w32api/LICENSE ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/w32api
+else
+ for DOC in $(doc_DOCUMENTS); do \
+ $(INSTALL) $(INSTALL_FLAGS) $(top_srcdir)/$$DOC $(DESTDIR)$(w32apidocdir)/$$DOC ; \
+ done
+ cd ./dist/w32api/installed ; \
+ rm -f share/doc/w32api/LICENSE ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-doc.tar.lzma share/doc/w32api
+endif
+
+dist-w32api-src:
+ifeq ($(RELEASE_STATUS),prod)
+ 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 w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-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
+else
+ 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 w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src ; \
+ mv mingw.org-wsl w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src ; \
+ tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src.tar.lzma w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src
+endif
+
+install-wsl-dirs: $(need-DESTDIR-compatibility)
+ $(mkinstalldirs) $(DESTDIR)$(bindir)
+ $(mkinstalldirs) $(DESTDIR)$(libdir)
+ $(mkinstalldirs) $(DESTDIR)$(docdir)
+ $(mkinstalldirs) $(DESTDIR)$(docdir)/historical
+ $(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_DATA) $$BIN $(DESTDIR)$(bindir)/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/,$(mingwrt_lib_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/sys/,$(mingwrt_lib_SYS_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/sys/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/,$(w32api_lib_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/ddk/,$(w32api_lib_DDK_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ddk/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/gdiplus/,$(w32api_lib_GDIPLUS_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/gdiplus/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/misc/include/GL/,$(w32api_lib_GL_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/GL/ ; \
+ done
+ for INC in $(addprefix $(top_srcdir)/include/directx/,$(w32api_lib_DIRECTX_INCLUDES)); do \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir) ; \
+ done
+ for LIB in $(mingwrt_lib_LIBRARIES) $(w32api_lib_LIBRARIES); do \
+ $(INSTALL_DATA) $$LIB $(DESTDIR)$(libdir)/ ; \
+ done
+ for OBJ in $(mingwrt_lib_OBJECTS); do \
+ $(INSTALL_DATA) $$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)/historical
+
+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
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dll.tar.lzma bin/*.dll ;
+else
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/$(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-dll.tar.lzma bin/*.dll ;
+endif
+
+dist-wsl-dev: dist-wsl-install
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/$(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-dev.tar.lzma include/ lib/
+else
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/$(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-dev.tar.lzma include/ lib/
+endif
+
+dist-wsl-lic: dist-wsl-install
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-lic.tar.lzma share/doc/mingw.org-wsl/LICENSE
+else
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/$(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-lic.tar.lzma share/doc/mingw.org-wsl/LICENSE
+endif
+
+dist-wsl-doc: dist-wsl-install
+ifeq ($(RELEASE_STATUS),prod)
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/mingw.org-wsl/README
+else
+ cd ./dist/wsl/installed ; \
+ tar acf ../packages/$(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-doc.tar.lzma share/doc/mingw.org-wsl/README
+endif
+
+dist-wsl-src: dist-wsl-install
+ifeq ($(RELEASE_STATUS),prod)
+ 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
+else
+ 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 $(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src ; \
+ mv mingw.org-wsl $(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src ; \
+ tar acf ../packages/$(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src.tar.lzma $(RELEASE_STATUS)_mingw.org-wsl-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-$(RELEASE_STATUS)-$(RELEASE_REFERENCE)-src
+endif
+
+clean-dist: clean-dist-mingwrt clean-dist-w32api clean-dist-wsl
+ rm -rf dist/
+
+clean-dist-mingwrt:
+ rm -rf dist/mingwrt/
+
+clean-dist-w32api:
+ rm -rf dist/w32api/
+
+clean-dist-wsl:
+ rm -rf dist/wsl/