vcpkg/ports/nettle/libname-windows.patch
Alexander Neumann 5a457b90d6
[nettle] Switch sources on windows away from SMP fork. (#23519)
* [gmp] use native buildsystem on windows

* fix stuff from merge

* fix version

* version stuff

* trying patching some symbols for dynamic builds

* fix nettle build

* fix more dependent ports using gmpd

* fix uwp builds by copying tools

* missing host dep

* fix mpfr

* version-string nettle

* port-version mpfr

* version stuff

* remove patch from portfile

* version stuff

* [nettle] use native build system

* fix cross build

* manifest format

* add license

* version stuff

* version stuff

* @Thomas1664's suggestions

Co-authored-by: Alexander Neumann <you@example.com>
Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2022-03-28 11:46:02 -07:00

68 lines
2.7 KiB
Diff

diff --git a/Makefile.in b/Makefile.in
index b65ff4960..3887d0c8f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -27,7 +27,7 @@ PRE_CPPFLAGS = -I.
EXTRA_CFLAGS = $(CCPIC)
# FIXME: Add configuration of LIBEXT?
-LIBTARGETS = @IF_STATIC@ libnettle.a @IF_HOGWEED@ libhogweed.a
+LIBTARGETS = @IF_STATIC@ $(LIBNETTLE_FILE) @IF_HOGWEED@ $(LIBHOGWEED_FILE)
SHLIBTARGETS = @IF_SHARED@ $(LIBNETTLE_FORLINK) @IF_HOGWEED@ $(LIBHOGWEED_FORLINK)
getopt_SOURCES = getopt.c getopt1.c
@@ -277,13 +277,13 @@ nettle_OBJS = $(nettle_SOURCES:.c=.$(OBJEXT)) \
hogweed_OBJS = $(hogweed_SOURCES:.c=.$(OBJEXT)) \
$(OPT_HOGWEED_OBJS) @IF_MINI_GMP@ mini-gmp.$(OBJEXT)
-libnettle.a: $(nettle_OBJS)
+$(LIBNETTLE_FILE): $(nettle_OBJS)
-rm -f $@
$(AR) $(ARFLAGS) $@ $(nettle_OBJS)
$(RANLIB) $@
echo nettle > libnettle.stamp
-libhogweed.a: $(hogweed_OBJS)
+$(LIBHOGWEED_FILE): $(hogweed_OBJS)
-rm -f $@
$(AR) $(ARFLAGS) $@ $(hogweed_OBJS)
$(RANLIB) $@
diff --git a/configure.ac b/configure.ac
index e95f1c825..1d7ef36bb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -662,8 +665,8 @@ case "$host_os" in
# linking to the DLL, is installed into the lib dir.
case "$host_os" in
mingw32*)
- LIBNETTLE_FORLINK='libnettle-$(LIBNETTLE_MAJOR).dll'
- LIBHOGWEED_FORLINK='libhogweed-$(LIBHOGWEED_MAJOR).dll'
+ LIBNETTLE_FORLINK='nettle-$(LIBNETTLE_MAJOR).dll'
+ LIBHOGWEED_FORLINK='hogweed-$(LIBHOGWEED_MAJOR).dll'
;;
cygwin*)
LIBNETTLE_FORLINK='cygnettle-$(LIBNETTLE_MAJOR).dll'
@@ -684,16 +687,16 @@ case "$host_os" in
W64_ABI=yes
fi
LIBNETTLE_SONAME=''
- LIBNETTLE_FILE='libnettle.dll.a'
+ LIBNETTLE_FILE='nettle.lib'
LIBNETTLE_FILE_SRC='$(LIBNETTLE_FILE)'
- LIBNETTLE_LINK='$(CC) $(CFLAGS) $(LDFLAGS) -shared -Wl,--out-implib=$(LIBNETTLE_FILE) -Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--whole-archive'
+ LIBNETTLE_LINK='$(CC) $(CPPFLAGS) -Wl,$(LDFLAGS) -Wl,-DLL -Wl,-IMPLIB:$(LIBNETTLE_FILE) -Wl,-DEF:nettle.def'
- LIBNETTLE_LIBS='-Wl,--no-whole-archive $(LIBS)'
+ LIBNETTLE_LIBS='$(LIBS)'
LIBHOGWEED_SONAME=''
- LIBHOGWEED_FILE='libhogweed.dll.a'
+ LIBHOGWEED_FILE='hogweed.lib'
LIBHOGWEED_FILE_SRC='$(LIBHOGWEED_FILE)'
- LIBHOGWEED_LINK='$(CC) $(CFLAGS) $(LDFLAGS) -shared -Wl,--out-implib=$(LIBHOGWEED_FILE) -Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--whole-archive'
+ LIBHOGWEED_LINK='$(CC) $(CPPFLAGS) -Wl,$(LDFLAGS) -Wl,-DLL -Wl,-IMPLIB:$(LIBHOGWEED_FILE) -Wl,-DEF:hogweed.def'
- LIBHOGWEED_LIBS='-Wl,--no-whole-archive $(LIBS) libnettle.dll.a'
+ LIBHOGWEED_LIBS='$(LIBS) $(LIBNETTLE_FILE)'
IF_DLL=''
;;
darwin*)