[hurd,commited] hurd: Avoid more libc.so PLTs

Message ID 20180402234109.9910-1-samuel.thibault@ens-lyon.org
State New
Headers show
Series
  • [hurd,commited] hurd: Avoid more libc.so PLTs
Related show

Commit Message

Samuel Thibault April 2, 2018, 11:41 p.m.
* sysdeps/hurd/include/hurd/signal.h (_hurd_raise_signal): Add hidden
	prototype.
	* hurd/hurd-raise.c (_hurd_raise_signal): Add hidden def.
	* hurd/Makefile ($(inlines:%=$(objpfx)%.c): Define
	_HEADER_H_HIDDEN_DEF macro.
	* sysdeps/hurd/include/hurd/fd.h (_hurd_fd_error,
	_hurd_fd_error_signal): Add hidden prototype.
	[_HURD_FD_H_HIDDEN_DEF] (_hurd_fd_error, _hurd_fd_error_signal): Add
	hidden def.
---
 ChangeLog                          | 9 +++++++++
 hurd/Makefile                      | 1 +
 hurd/hurd-raise.c                  | 1 +
 sysdeps/hurd/include/hurd/fd.h     | 6 ++++++
 sysdeps/hurd/include/hurd/signal.h | 1 +
 5 files changed, 18 insertions(+)

Patch

diff --git a/ChangeLog b/ChangeLog
index b0256e9d81..9e2dfa934d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -387,6 +387,15 @@ 
 	* sysdeps/mach/include/mach.h: New file.
 	* sysdeps/mach/include/mach/mig_support.h: New file.
 	* sysdeps/mach/include/mach_error.h: New file.
+	* sysdeps/hurd/include/hurd/signal.h (_hurd_raise_signal): Add hidden
+	prototype.
+	* hurd/hurd-raise.c (_hurd_raise_signal): Add hidden def.
+	* hurd/Makefile ($(inlines:%=$(objpfx)%.c): Define
+	_HEADER_H_HIDDEN_DEF macro.
+	* sysdeps/hurd/include/hurd/fd.h (_hurd_fd_error,
+	_hurd_fd_error_signal): Add hidden prototype.
+	[_HURD_FD_H_HIDDEN_DEF] (_hurd_fd_error, _hurd_fd_error_signal): Add
+	hidden def.
 
 	* sysdeps/mach/hurd/localplt.data: New file.
 
diff --git a/hurd/Makefile b/hurd/Makefile
index 7a787d2900..a41737f497 100644
--- a/hurd/Makefile
+++ b/hurd/Makefile
@@ -79,6 +79,7 @@  shared-only-routines = compat-20
 $(inlines:%=$(objpfx)%.c): $(objpfx)%-inlines.c: %.h
 	(h="`echo $(subst /,_,$*) | tr '[a-z]' '[A-Z]'`"; \
 	 echo "#define _$${h}_H_EXTERN_INLINE /* Define real function.  */"; \
+	 echo "#define _$${h}_H_HIDDEN_DEF    /* Declare hidden definition.  */"; \
 	 echo '#include "$<"') > $@-new
 	mv -f $@-new $@
 generated += $(inlines:=.c)
diff --git a/hurd/hurd-raise.c b/hurd/hurd-raise.c
index ac44c7d33f..9fe5541311 100644
--- a/hurd/hurd-raise.c
+++ b/hurd/hurd-raise.c
@@ -48,3 +48,4 @@  _hurd_raise_signal (struct hurd_sigstate *ss,
      other thread.  */
   return __msg_sig_post (_hurd_msgport, 0, 0, __mach_task_self ());
 }
+libc_hidden_def (_hurd_raise_signal)
diff --git a/sysdeps/hurd/include/hurd/fd.h b/sysdeps/hurd/include/hurd/fd.h
index b22f0c59f4..643454f3f8 100644
--- a/sysdeps/hurd/include/hurd/fd.h
+++ b/sysdeps/hurd/include/hurd/fd.h
@@ -1,4 +1,10 @@ 
 #ifndef	_HURD_FD_H
 #include_next <hurd/fd.h>
 libc_hidden_proto (_hurd_intern_fd)
+libc_hidden_proto (_hurd_fd_error)
+libc_hidden_proto (_hurd_fd_error_signal)
+#ifdef _HURD_FD_H_HIDDEN_DEF
+libc_hidden_def (_hurd_fd_error)
+libc_hidden_def (_hurd_fd_error_signal)
+#endif
 #endif
diff --git a/sysdeps/hurd/include/hurd/signal.h b/sysdeps/hurd/include/hurd/signal.h
index fbd01bb80d..f3185f97db 100644
--- a/sysdeps/hurd/include/hurd/signal.h
+++ b/sysdeps/hurd/include/hurd/signal.h
@@ -3,4 +3,5 @@ 
 libc_hidden_proto (_hurd_exception2signal)
 libc_hidden_proto (_hurd_intr_rpc_mach_msg)
 libc_hidden_proto (_hurd_thread_sigstate)
+libc_hidden_proto (_hurd_raise_signal)
 #endif