OSDN Git Service

Add in libutil, based on Cory Visi's variant of Michael Shmulevich's libutil
[uclinux-h8/uClibc.git] / libutil / Makefile
1 # Makefile for uClibc
2 #
3 # Copyright (C) 2000 by Lineo, inc.
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 # Derived in part from the Linux-8086 C library, the GNU C Library, and several
20 # other sundry sources.  Files within this library are copyright by their
21 # respective copyright holders.
22
23 TOPDIR=../
24 include $(TOPDIR)Rules.mak
25 LIBC=$(TOPDIR)libc.a
26
27 LIBUTIL=libutil.a
28 LIBUTIL_SHARED=libutil.so
29 TARGET_CC= ../extra/gcc-uClibc/$(TARGET_ARCH)-uclibc-gcc
30
31 CSRC=forkpty.c login.c login_tty.c logout.c logwtmp.c openpty.c
32 COBJS=$(patsubst %.c,%.o, $(CSRC))
33
34 OBJS=$(COBJS)
35
36 all: $(OBJS) $(LIBC)
37
38 $(LIBC): ar-target
39
40 ar-target: $(OBJS)
41         $(AR) $(ARFLAGS) $(LIBUTIL) $(OBJS)
42
43 $(COBJS): %.o : %.c
44         $(TARGET_CC) $(CFLAGS) -c $< -o $@
45         $(STRIPTOOL) -x -R .note -R .comment $*.o
46
47 shared: $(LIBUTIL)
48         $(TARGET_CC) $(LDFLAGS) -shared -o $(LIBUTIL_SHARED).$(MAJOR_VERSION) \
49            -Wl,-soname,$(LIBUTIL_SHARED).$(MAJOR_VERSION) $(COBJS) $(TOPDIR)$(SHARED_FULLNAME)
50
51 install: all
52         install -d $(INSTALL_DIR)/lib
53         install -m 644 $(LIBUTIL) $(INSTALL_DIR)/lib/
54         @if [ -f $(LIBUTIL_SHARED).$(MAJOR_VERSION) ] ; then \
55                 install -m 644 $(LIBUTIL_SHARED).$(MAJOR_VERSION) $(INSTALL_DIR)/lib/; \
56                 (cd $(INSTALL_DIR)/lib/;ln -sf $(LIBUTIL_SHARED).$(MAJOR_VERSION) $(LIBUTIL_SHARED)); \
57         fi;
58
59 clean:
60         rm -f *.[oa] *~ core $(LIBUTIL_SHARED).$(MAJOR_VERSION)
61