21a8fe1bf5
* gnu/packages/base.scm (glibc/hurd, glibc/hurd-headers): New variables. * gnu/packages/hurd.scm (hurd-minimal): New variable. * gnu/packages/patches/glibc-hurd-extern-inline.patch: New file. * gnu/packages/patches/libpthread-glibc-preparation.patch: New file. * gnu-system.am (dist_patch_DATA): Add them. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Co-authored-by: Mark H Weaver <mhw@netris.org>
35 lines
969 B
Diff
35 lines
969 B
Diff
This changes the way _EXTERN_INLINE is defined so we can
|
|
avoid external definition errors.
|
|
https://lists.gnu.org/archive/html/bug-hurd/2014-04/msg00002.html
|
|
|
|
diff --git a/signal/sigsetops.c b/signal/sigsetops.c
|
|
index 0317662..b92c296 100644
|
|
--- a/signal/sigsetops.c
|
|
+++ b/signal/sigsetops.c
|
|
@@ -3,7 +3,9 @@
|
|
|
|
#include <features.h>
|
|
|
|
-#define _EXTERN_INLINE
|
|
+#ifndef _EXTERN_INLINE
|
|
+#define _EXTERN_INLINE __extern_inline
|
|
+#endif
|
|
#ifndef __USE_EXTERN_INLINES
|
|
# define __USE_EXTERN_INLINES 1
|
|
#endif
|
|
|
|
Link libmachuser and libhurduser automatically with libc, since they are
|
|
considered a standard part of the API in GNU-land.
|
|
|
|
--- a/Makerules
|
|
+++ b/Makerules
|
|
@@ -978,6 +978,9 @@
|
|
'$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)$(libc-name))'\
|
|
' AS_NEEDED (' $(rtlddir)/$(rtld-installed-name) ') )' \
|
|
) > $@.new
|
|
+ifeq ($(patsubst gnu%,,$(config-os)),)
|
|
+ echo 'INPUT ( AS_NEEDED ( -lmachuser -lhurduser ) )' >> $@.new
|
|
+endif
|
|
mv -f $@.new $@
|
|
|
|
endif
|