Build libssp as a DLL as well

This matches how it is normally available in GCC.
This commit is contained in:
Martin Storsjö committed 2018-09-05 12:28:33 +03:00
1 parent aa80a9ecbc
commit d3ec443f92
2 files changed
+16 -4

No files matched your search

+6 -2
View File
@@ -27,7 +27,8 @@ cp config.h.in config.h
for i in HAVE_FCNTL_H HAVE_INTTYPES_H HAVE_LIMITS_H HAVE_MALLOC_H \
HAVE_MEMMOVE HAVE_MEMORY_H HAVE_MEMPCPY HAVE_STDINT_H HAVE_STDIO_H \
HAVE_STDLIB_H HAVE_STRINGS_H HAVE_STRING_H HAVE_STRNCAT HAVE_STRNCPY \
HAVE_SYS_STAT_H HAVE_SYS_TYPES_H HAVE_UNISTD_H HAVE_USABLE_VSNPRINTF; do
HAVE_SYS_STAT_H HAVE_SYS_TYPES_H HAVE_UNISTD_H HAVE_USABLE_VSNPRINTF \
HAVE_HIDDEN_VISIBILITY; do
cat config.h | sed 's/^#undef '$i'$/#define '$i' 1/' > tmp
mv tmp config.h
done
@@ -37,7 +38,10 @@ for arch in $ARCHS; do
mkdir -p build-$arch
cd build-$arch
make -f ../Makefile -j$CORES CROSS=$arch-w64-mingw32-
mkdir -p $PREFIX/$arch-w64-mingw32/bin
cp libssp.a $PREFIX/$arch-w64-mingw32/lib
cp libssp.a $PREFIX/$arch-w64-mingw32/lib/libssp_nonshared.a
cp libssp_nonshared.a $PREFIX/$arch-w64-mingw32/lib
cp libssp.dll.a $PREFIX/$arch-w64-mingw32/lib
cp libssp-0.dll $PREFIX/$arch-w64-mingw32/bin
cd ..
done
+10 -2
View File
@@ -6,11 +6,19 @@ AR = $(CROSS)ar
CFLAGS = -O2 -Wall -Wundef -I$(SRC_PATH) -D_FORTIFY_SOURCE=0 -D__SSP_FORTIFY_LEVEL=0
SOURCES = $(patsubst $(SRC_PATH)%,%,$(wildcard $(SRC_PATH)*.c))
SOURCES = $(filter-out ssp-local.c, $(patsubst $(SRC_PATH)%,%,$(wildcard $(SRC_PATH)*.c)))
OBJS = $(SOURCES:%.c=%.o)
all: libssp.a libssp_nonshared.a libssp-0.dll
libssp.a: $(OBJS)
$(AR) rcs $@ $+
libssp-0.dll: $(OBJS)
$(CC) -shared -o $@ $+ -Wl,--out-implib,libssp.dll.a
libssp_nonshared.a: ssp-local.o
$(AR) rcs $@ $+
clean:
rm -f *.a *.o
rm -f *.a *.o *.dll