OSDN Git Service

Only because of multi sources I had to touch up these and add code duplication
[uclinux-h8/uClibc.git] / libc / misc / sysvipc / Makefile.in
1 # Makefile for uClibc
2 #
3 # Copyright (C) 2000 by Lineo, inc.
4 # Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
5 #
6 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
7 #
8
9 MSRC1:=sem.c
10 MOBJ1:=semget.o semctl.o semop.o
11
12 MSRC2:=shm.c
13 MOBJ2:=shmat.o shmctl.o shmdt.o shmget.o
14
15 MSRC3:=msgq.c
16 MOBJ3:=msgctl.o msgget.o msgrcv.o msgsnd.o
17
18 CSRC:=ftok.c 
19
20 MISC_SYSVIPC_DIR:=$(top_srcdir)libc/misc/sysvipc
21 MISC_SYSVIPC_OUT:=$(top_builddir)libc/misc/sysvipc
22
23 MISC_SYSVIPC_SRC:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(CSRC))
24 MISC_SYSVIPC_OBJ:=$(patsubst %.c,$(MISC_SYSVIPC_OUT)/%.o,$(CSRC))
25
26 MISC_SYSVIPC_NO_MULTI:=$(MOBJ1) $(MOBJ3)
27
28 MISC_SYSVIPC_MSRC1:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(MSRC1))
29 MISC_SYSVIPC_MSRC2:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(MSRC2))
30 MISC_SYSVIPC_MSRC3:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(MSRC3))
31 MISC_SYSVIPC_MOBJ1:=$(patsubst %.o,$(MISC_SYSVIPC_OUT)/%.o,$(MOBJ1))
32 MISC_SYSVIPC_MOBJ2:=$(patsubst %.o,$(MISC_SYSVIPC_OUT)/%.o,$(MOBJ2))
33 MISC_SYSVIPC_MOBJ3:=$(patsubst %.o,$(MISC_SYSVIPC_OUT)/%.o,$(MOBJ3))
34
35 MISC_SYSVIPC_MSRC:=$(MISC_SYSVIPC_MSRC1) $(MISC_SYSVIPC_MSRC2) $(MISC_SYSVIPC_MSRC3)
36 MISC_SYSVIPC_MOBJ:=$(MISC_SYSVIPC_MOBJ1) $(MISC_SYSVIPC_MOBJ2) $(MISC_SYSVIPC_MOBJ3)
37 # only MSRC2
38 MISC_SYSVIPC_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(MISC_SYSVIPC_MOBJ2))))
39
40 MISC_SYSVIPC_OBJS:=$(MISC_SYSVIPC_OBJ) $(MISC_SYSVIPC_MOBJ)
41
42 $(MISC_SYSVIPC_MOBJ1): $(MISC_SYSVIPC_MSRC1)
43         $(compile.m)
44
45 $(MISC_SYSVIPC_MOBJ1:.o=.os): $(MISC_SYSVIPC_MSRC1)
46         $(compile.m)
47
48 $(MISC_SYSVIPC_MOBJ2): $(MISC_SYSVIPC_MSRC2)
49         $(compile.m)
50
51 $(MISC_SYSVIPC_MOBJ2:.o=.os): $(MISC_SYSVIPC_MSRC2)
52         $(compile.m)
53
54 $(MISC_SYSVIPC_MOBJ3): $(MISC_SYSVIPC_MSRC3)
55         $(compile.m)
56
57 $(MISC_SYSVIPC_MOBJ3:.o=.os): $(MISC_SYSVIPC_MSRC3)
58         $(compile.m)
59
60 libc-a-y+=$(MISC_SYSVIPC_OBJS)
61 libc-so-y+=$(MISC_SYSVIPC_OBJS:.o=.os)
62
63 CFLAGS-multi-y+=$(MISC_SYSVIPC_DEF)
64 libc-multi-y+=$(MISC_SYSVIPC_SRC) $(MISC_SYSVIPC_MSRC2)
65 libc-nomulti-y+=$(MISC_SYSVIPC_MOBJ1) $(MISC_SYSVIPC_MOBJ3)
66
67 objclean-y+=misc_sysvipc_objclean
68
69 misc_sysvipc_objclean:
70         $(RM) $(MISC_SYSVIPC_OUT)/*.{o,os}