summary refs log tree commit diff
path: root/sysdeps/mach/sysdep.h
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-06-12 18:26:02 +0000
committerRoland McGrath <roland@gnu.org>1995-06-12 18:26:02 +0000
commit1a2df358c8b1bc40035e30fe12cc4187655dd326 (patch)
tree869f1b729d6f742584e6319e39c40ab7894d78b5 /sysdeps/mach/sysdep.h
parentf2b0f935d7c8de544408181350c13d8a4db690ca (diff)
downloadglibc-1a2df358c8b1bc40035e30fe12cc4187655dd326.tar.gz
glibc-1a2df358c8b1bc40035e30fe12cc4187655dd326.tar.xz
glibc-1a2df358c8b1bc40035e30fe12cc4187655dd326.zip
Mon Jun 12 13:15:45 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
	* Makerules (lib%.so: lib%_pic.a): Moved this rule to after
 	installation rules.

	* sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so
 	it uses the `.type' directive, which is necessary for shared
 	libraries to work properly.
Diffstat (limited to 'sysdeps/mach/sysdep.h')
-rw-r--r--sysdeps/mach/sysdep.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/sysdeps/mach/sysdep.h b/sysdeps/mach/sysdep.h
index 9a8dbd5163..d5d370efd0 100644
--- a/sysdeps/mach/sysdep.h
+++ b/sysdeps/mach/sysdep.h
@@ -28,6 +28,17 @@ Cambridge, MA 02139, USA.  */
 #define EXT(x) C_SYMBOL_NAME(x)
 #define LEXT(x) C_SYMBOL_NAME(x##:)
 
+#ifdef HAVE_ELF
+/* For ELF we need to add the `.type' directive to make shared libraries
+   work right.  */
+#undef ENTRY
+#define ENTRY(name) \
+  ASM_GLOBAL_DIRECTIVE name; \
+  .align ALIGN; \
+  .type name,@function; \
+  name:
+#endif
+
 #endif
 
 /* This is invoked by things run when there is random lossage, before they