OSDN Git Service

make sure libdl static and shared targets are built properly
[uclinux-h8/uClibc.git] / ldso / Makefile
1 # Makefile for uClibc
2 #
3 # Copyright (C) 2000-2004 Erik Andersen <andersen@uclibc.org>
4 #
5 # This program is free software; you can redistribute it and/or modify it under
6 # the terms of the GNU Library General Public License as published by the Free
7 # Software Foundation; either version 2 of the License, or (at your option) any
8 # later version.
9 #
10 # This program is distributed in the hope that it will be useful, but WITHOUT
11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12 # FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more
13 # details.
14 #
15 # You should have received a copy of the GNU Library General Public License
16 # along with this program; if not, write to the Free Software Foundation, Inc.,
17 # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
19 TOPDIR=../
20 include $(TOPDIR)Rules.mak
21
22 DIRS = ldso libdl
23
24 all: ldso libdl
25
26 ifeq ($(strip $(BUILD_UCLIBC_LDSO)),y)
27 ldso: headers
28         $(MAKE) -C ldso
29 libdl: ldso headers
30         $(MAKE) -C libdl
31 shared: libdl
32         $(MAKE) -C libdl shared
33 else
34 ldso libdl shared:
35         echo "Skipping $@ target"
36 endif
37
38 HEADERS = $(patsubst %, include/%, elf.h dl-startup.h dl-syscalls.h dl-sysdep.h)
39 headers: $(HEADERS) include/dl-progname.h
40 include/dl-progname.h:
41         echo "const char *_dl_progname=\""$(UCLIBC_LDSO)"\";" \
42                 > include/dl-progname.h
43         echo "#include \"$(TARGET_ARCH)/elfinterp.c\"" \
44                 >> include/dl-progname.h
45 $(HEADERS):
46         $(LN) -fs $(TOPDIR)../include/elf.h include/
47         $(LN) -fs ../ldso/$(TARGET_ARCH)/dl-startup.h include/
48         $(LN) -fs ../ldso/$(TARGET_ARCH)/dl-syscalls.h include/
49         $(LN) -fs ../ldso/$(TARGET_ARCH)/dl-sysdep.h include/
50
51 clean:
52         set -e ; for d in $(DIRS) ; do $(MAKE) -C $$d $@ ; done
53         -find . -name '*~' | xargs $(RM)
54         $(RM) $(HEADERS) include/dl-progname.h