]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - hurd/Makefile
Update copyright dates with scripts/update-copyrights.
[thirdparty/glibc.git] / hurd / Makefile
index 363aeeaa98f16288ca354bf02aa0010db594cd3b..1d4038e7f932e1b1ac11b865bd3a7bab1fe6ea5f 100644 (file)
@@ -1,33 +1,31 @@
-# Copyright (C) 1991, 92, 93, 94, 95, 96 Free Software Foundation, Inc.
+# Copyright (C) 1991-2015 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public License
-# as published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
 
 # The GNU C Library is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Library General Public License for more details.
+# Lesser General Public License for more details.
 
-# You should have received a copy of the GNU Library General Public
-# License along with the GNU C Library; see the file COPYING.LIB.  If
-# not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-# Cambridge, MA 02139, USA.
+# You should have received a copy of the GNU Lesser General Public
+# License along with the GNU C Library; if not, see
+# <http://www.gnu.org/licenses/>.
 
 subdir := hurd
 
-all:
-
-# Some things below (but before including Rules) use configuration variables.
 include ../Makeconfig
 
-
 headers = hurd.h $(interface-headers) \
          $(addprefix hurd/,fd.h id.h port.h signal.h sigpreempt.h ioctl.h\
                            userlink.h resource.h threadvar.h lookup.h)
 
+inline-headers = hurd.h $(addprefix hurd/,fd.h signal.h \
+                                         userlink.h threadvar.h port.h)
+
 # The RPC interfaces go in a separate library.
 interface-library := libhurduser
 user-interfaces                := $(addprefix hurd/,\
@@ -35,48 +33,58 @@ user-interfaces             := $(addprefix hurd/,\
                                       process process_request \
                                       msg msg_reply msg_request \
                                       exec exec_startup crash interrupt \
-                                      fs fsys io term tioctl socket ifsock)
+                                      fs fsys io term tioctl socket ifsock \
+                                      login password pfinet \
+                                      )
 server-interfaces      := hurd/msg faultexc
 
 routines = hurdstartup hurdinit \
-          hurdid hurdlookup hurdpid hurdrlimit hurdprio hurdexec \
+          hurdid hurdpid hurdrlimit hurdprio hurdexec hurdselect \
+          hurdlookup lookup-retry lookup-at \
           get-host set-host \
           path-lookup \
           setauth \
           pid2task task2pid \
-          getuids setuids getumask fchroot \
+          geteuids seteuids getumask fchroot \
           hurdsock hurdauth \
+          hurdchdir hurdfchdir \
           privports \
           msgportdemux \
           fopenport \
           vpprintf \
           ports-get ports-set hurdports hurdmsg \
-          $(sig) $(dtable) hurdinline port-cleanup report-wait
+          errno-loc \
+          $(sig) $(dtable) $(inlines) port-cleanup report-wait xattr
 sig    = hurdsig hurdfault siginfo hurd-raise preempt-sig \
          trampoline longjmp-ts catch-exc exc2signal hurdkill sigunwind \
          thread-self thread-cancel intr-msg catch-signal
 dtable = dtable port2fd new-fd alloc-fd intern-fd \
          getdport openport \
          fd-close fd-read fd-write hurdioctl ctty-input ctty-output
-distribute = hurdstartup.h hurdfault.h hurdhost.h \
-            faultexc.defs intr-rpc.defs intr-rpc.h intr-msg.h Notes
+inlines = $(inline-headers:%.h=%-inlines)
 
 # XXX this is a temporary hack; see hurdmalloc.h
 routines += hurdmalloc
-distribute += hurdmalloc.h
+
+# Binary compatibility for libc.so.0.2[GLIBC_2.0].
+ifeq ($(build-shared),yes)
+routines += compat-20
+endif
+
+shared-only-routines = compat-20
+
+# For each of the $(inline-headers), generate a trivial source
+# file that will #include it to define its inline functions as real functions.
+$(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 '#include "$<"') > $@-new
+       mv -f $@-new $@
+generated += $(inlines:=.c)
 \f
 include ../mach/Machrules
 include ../Rules
 \f
-# XXX sunrpc doesn't build yet for Hurd, but one of its headers is
-# crucial nontheless.  So sysdeps/mach/hurd/Makefile elides sunrpc
-# from $(subdirs), and this rule arranges for the header in question
-# to get installed.
-install-headers-nosubdir: $(includedir)/rpc/netdb.h
-$(includedir)/rpc/netdb.h: $(top_srcdir)/sunrpc/rpc/netdb.h
-       $(do-install)
-
-
 # intr-rpc.defs defines the INTR_INTERFACE macro to make the generated RPC
 # stubs import <hurd/signal.h> and #define __mach_msg to
 # _hurd_intr_rpc_mach_msg.