+##
+# @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@
-DLLTOOL_FLAGS := --as $(AS) -k -U --dllname
-INSTALL=@INSTALL@
-MKDIR_P=@MKDIR_P@
+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
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_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) \
$(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)))
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
+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 := 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
$(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/libdinput
+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_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)
$(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
$(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) $@
$(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/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 $@ $<
+ $(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
$(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 := 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) $@
-libmingwex.a: $(libmingwex_a_OBJECTS) $(winapi_lib_LIBRARIES)
+libmingwex.a: $(libmingwex_a_OBJECTS)
$(AR) rc $@ $(libmingwex_a_OBJECTS)
$(RANLIB) $@
$(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 $@ $<
$(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
-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
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)
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-mingwrt-dirs: $(need-DESTDIR-compatibility)
$(mkinstalldirs) $(DESTDIR)$(bindir)
$(mkinstalldirs) $(DESTDIR)$(libdir)
- $(mkinstalldirs) $(DESTDIR)$(prefix)/share/doc/mingwrt
+ $(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_LIBRARIES := $(wildcard libmsvcr*.a)
-mingwrt_lib_LIBRARIES += $(wildcard libmoldname*.a)
mingwrt_lib_INCLUDES := \
- _mingw.h dirent.h getopt.h math.h setjmp.h strings.h varargs.h \
- assert.h dos.h inttypes.h mbctype.h share.h wchar.h \
- complex.h errno.h io.h mbstring.h signal.h tchar.h wctype.h \
+ _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 \
install-mingwrt: install-mingwrt-dirs
for BIN in $(mingwrt_bin_LIBRARIES); do \
- $(INSTALL) $(INSTALL_FLAGS) $$BIN $(DESTDIR)$(bindir)/ ; \
+ $(INSTALL_DATA) $$BIN $(DESTDIR)$(bindir)/ ; \
done
for INC in $(addprefix $(top_srcdir)/include/,$(mingwrt_lib_INCLUDES)); do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/ ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ ; \
done
for INC in $(addprefix $(top_srcdir)/include/sys/,$(mingwrt_lib_SYS_INCLUDES)); do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/sys/ ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/sys/ ; \
done
for LIB in $(mingwrt_lib_LIBRARIES); do \
- $(INSTALL) $(INSTALL_FLAGS) $$LIB $(DESTDIR)$(libdir)/ ; \
+ $(INSTALL_DATA) $$LIB $(DESTDIR)$(libdir)/ ; \
done
for OBJ in $(mingwrt_lib_OBJECTS); do \
- $(INSTALL) $(INSTALL_FLAGS) $$OBJ $(DESTDIR)$(libdir)/ ; \
+ $(INSTALL_DATA) $$OBJ $(DESTDIR)$(libdir)/ ; \
done
- cp -af $(top_srcdir)/doc/historical/mingw/* $(DESTDIR)$(prefix)/share/doc/mingwrt ;
- rm -f $(DESTDIR)$(prefix)/share/doc/mingwrt/ChangeLog
- rm -rf $(DESTDIR)$(prefix)/share/doc/mingwrt/man
+ cp -af $(top_srcdir)/doc/historical/mingw/* $(DESTDIR)$(mingwrtdocdir)/historical/ ;
dist: all dist-mingwrt dist-w32api dist-wsl
$(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 ;\
+ 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)$(prefix)/share/doc/mingwrt/DISCLAIMER: dist-mingwrt-mkdir dist-mingwrt-install
- cp $(top_srcdir)/doc/historical/mingw/DISCLAIMER $(DESTDIR)$(prefix)/share/doc/mingwrt/
+$(DESTDIR)$(mingwrtdocdir)/LICENSE: dist-mingwrt-mkdir dist-mingwrt-install
+ cp $(top_srcdir)/LICENSE $(DESTDIR)$(mingwrtdocdir)
-dist-mingwrt-lic: $(DESTDIR)$(prefix)/share/doc/mingwrt/DISCLAIMER
+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/DISCLAIMER
+ 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/DISCLAIMER ; \
+ 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:
- cp -af $(top_srcdir) $(DESTDIR)$(prefix)
+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 -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)$(prefix)/share/doc/w32api
+ $(mkinstalldirs) $(DESTDIR)$(w32apidocdir)
+ $(mkinstalldirs) $(DESTDIR)$(w32apidocdir)/historical
+ rmdir $(DESTDIR)$(w32apidocdir)/../mingw-org-wsl
$(mkinstalldirs) $(DESTDIR)$(includedir)
$(mkinstalldirs) $(DESTDIR)$(includedir)/ddk
$(mkinstalldirs) $(DESTDIR)$(includedir)/gdiplus
install-w32api: install-w32api-dirs
for INC in $(addprefix $(top_srcdir)/include/,$(w32api_lib_INCLUDES)); do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/ ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/ ; \
done
for INC in $(addprefix $(top_srcdir)/include/ddk/,$(w32api_lib_DDK_INCLUDES)); do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/ddk/ ; \
+ $(INSTALL_DATA) $$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/ ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir)/gdiplus/ ; \
done
- for INC in $(addprefix $(top_srcdir)/include/GL/,$(w32api_lib_GL_INCLUDES)); do \
- $(INSTALL) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir)/GL/ ; \
+ 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) $(INSTALL_FLAGS) $$INC $(DESTDIR)$(includedir) ; \
+ $(INSTALL_DATA) $$INC $(DESTDIR)$(includedir) ; \
done
for LIB in $(w32api_lib_LIBRARIES); do \
- $(INSTALL) $(INSTALL_FLAGS) $$LIB $(DESTDIR)$(libdir)/ ; \
+ $(INSTALL_DATA) $$LIB $(DESTDIR)$(libdir)/ ; \
done
- cp -af $(top_srcdir)/doc/historical/w32api/* $(DESTDIR)$(prefix)/share/doc/w32api ;
- rm -f $(DESTDIR)$(prefix)/share/doc/w32api/ChangeLog
+ cp -af $(top_srcdir)/doc/historical/w32api/* $(DESTDIR)$(w32apidocdir)/historical/ ;
dist-w32api:
$(MAKE) prefix=./dist/w32api/installed _dist-w32api-all_
$(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: dist-w32api-install
+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/README.w32api
+ 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 ; \
- tar acf ../packages/w32api-$(PACKAGE_VERSION)-$(PACKAGE_RELEASE)-mingw32-doc.tar.lzma share/doc/w32api/CONTRIBUTIONS share/doc/w32api/TODO
+ 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:
- cp -af $(top_srcdir) $(DESTDIR)$(prefix)
+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 -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/
-dist-wsl: all dist-wsl-bin dist-wsl-dll dist-wsl-doc dist-wsl-lic dist-wsl-src
+clean-dist-wsl:
+ rm -rf dist/wsl/