OSDN Git Service

(LibGoblin)
[drdeamon64/drdeamon64.git] / libbrownie / Makefile
1 ##DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64
2 #
3 #                         D r . D e a m o n  6 4
4 #                        for INTEL64(R), AMD64(R)
5 #    
6 #   Copyright(C) 2007-2009 Koine Yuusuke(koinec). All rights reserved.
7 #
8 # Redistribution and use in source and binary forms, with or without
9 # modification, are permitted provided that the following conditions are met:
10 #
11 # 1. Redistributions of source code must retain the above copyright notice,
12 #    this list of conditions and the following disclaimer.
13 # 2. Redistributions in binary form must reproduce the above copyright
14 #    notice, this list of conditions and the following disclaimer in the
15 #    documentation and/or other materials provided with the distribution.
16 #
17 # THIS SOFTWARE IS PROVIDED BY Koine Yuusuke(koinec) ``AS IS'' AND ANY
18 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20 # DISCLAIMED. IN NO EVENT SHALL Koine Yuusuke(koinec) OR CONTRIBUTORS BE
21 # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
27 # OF THE POSSIBILITY OF SUCH DAMAGE.
28 #
29 ##DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64DrDeAmOn64
30
31 ## File Info -----------------------------------------------------------
32 # File: Makefile
33 # Function: 
34 # Comment: 
35 ##----------------------------------------------------------------------
36
37 # Section 1 : Setting Build Command ####################################
38 MAKE = make
39 CC = cc
40
41
42 SUPER_HEADER =  ../include/drd64_packet.h \
43                                 ../include/drd64_defines.h \
44                                 ../include/drd64_conf.h \
45                                 ../include/drd64_types.h \
46                                 ../include/drd64_error.h
47 CLIENT_HEADER =
48 USER_HEADER =
49
50 FLAGS_DEBUG = -g -Wall
51
52 LIBBROWNIE_TARGET = libbrownie.a
53 LIBBROWNIE_OBJS = drd64_libbrownie_main.o \
54                                         drd64_libbrownie_error.o \
55                                         drd64_libbrownie_inetaddr.o \
56                                         drd64_libbrownie_socket.o \
57                                         drd64_libbrownie_ldsohints.o \
58                                         drd64_libbrownie_searchlib.o
59 LIBBROWNIE_HEADER = drd64_libbrownie.h \
60                                         drd64_libbrownie_error.h \
61                                         drd64_libbrownie_ldsohints.h \
62                                         drd64_libbrownie_searchlib.h \
63                                         ../include/libbrownie.h \
64                                         $(SUPER_HEADER)
65
66 TEST_FLAGS_COMPILE = -I/usr/local/include
67 TEST_FLAGS_LINKER = -L/usr/local/lib
68 TEST_TARGET = test_libbrownie
69 TEST_OBJS = \
70                         test_libbrownie.o \
71                         test_libbrownie_error.o \
72                         test_libbrownie_ldsohints.o \
73                         test_libbrownie_searchlib.o
74 TEST_HEADER = test_libbrownie.h
75
76 TESTPROG = ../testdata/dwarftest
77
78
79 all:    $(LIBBROWNIE_TARGET) test
80 build:  $(LIBBROWNIE_TARGET)
81 test:   $(TEST_TARGET) $(TESTPROG)
82                 ./$(TEST_TARGET)
83
84 $(LIBBROWNIE_TARGET): $(LIBBROWNIE_OBJS)
85         ar rv $(LIBBROWNIE_TARGET) $(LIBBROWNIE_OBJS)
86         ranlib $(LIBBROWNIE_TARGET)
87         rm -f ../$(LIBBROWNIE_TARGET)
88         cp $(LIBBROWNIE_TARGET) ..
89
90 drd64_libbrownie_main.o: drd64_libbrownie_main.c $(LIBBROWNIE_HEADER)
91         $(CC) -c -o drd64_libbrownie_main.o $(FLAGS_DEBUG) \
92                                 drd64_libbrownie_main.c
93
94 drd64_libbrownie_error.o: drd64_libbrownie_error.c $(LIBBROWNIE_HEADER)
95         $(CC) -c -o drd64_libbrownie_error.o $(FLAGS_DEBUG) \
96                                 drd64_libbrownie_error.c
97
98 drd64_libbrownie_inetaddr.o: drd64_libbrownie_inetaddr.c $(LIBBROWNIE_HEADER)
99         $(CC) -c -o drd64_libbrownie_inetaddr.o $(FLAGS_DEBUG) \
100                                 drd64_libbrownie_inetaddr.c
101 drd64_libbrownie_socket.o: drd64_libbrownie_socket.c $(LIBBROWNIE_HEADER)
102         $(CC) -c -o drd64_libbrownie_socket.o $(FLAGS_DEBUG) \
103                                 drd64_libbrownie_socket.c
104
105 drd64_libbrownie_ldsohints.o: drd64_libbrownie_ldsohints.c $(LIBBROWNIE_HEADER)
106         $(CC) -c -o drd64_libbrownie_ldsohints.o $(FLAGS_DEBUG) \
107                                 drd64_libbrownie_ldsohints.c
108 drd64_libbrownie_searchlib.o: drd64_libbrownie_searchlib.c $(LIBBROWNIE_HEADER)
109         $(CC) -c -o drd64_libbrownie_searchlib.o $(FLAGS_DEBUG) \
110                                 drd64_libbrownie_searchlib.c
111
112
113 test_libbrownie.o: test_libbrownie.c $(LIBBROWNIE_HEADER) $(TEST_HEADER)
114         $(CC) -c -o test_libbrownie.o \
115                         $(FLAGS_DEBUG) $(FLAGS_COMPILE) $(TEST_FLAGS_COMPILE) \
116                         test_libbrownie.c
117 test_libbrownie_error.o: test_libbrownie_error.c $(LIBBROWNIE_HEADER) $(TEST_HEADER)
118         $(CC) -c -o test_libbrownie_error.o \
119                         $(FLAGS_DEBUG) $(FLAGS_COMPILE) $(TEST_FLAGS_COMPILE) \
120                         test_libbrownie_error.c
121 test_libbrownie_ldsohints.o: test_libbrownie_ldsohints.c $(LIBBROWNIE_HEADER) $(TEST_HEADER)
122         $(CC) -c -o test_libbrownie_ldsohints.o \
123                         $(FLAGS_DEBUG) $(FLAGS_COMPILE) $(TEST_FLAGS_COMPILE) \
124                         test_libbrownie_ldsohints.c
125 test_libbrownie_searchlib.o: test_libbrownie_searchlib.c $(LIBBROWNIE_HEADER) $(TEST_HEADER)
126         $(CC) -c -o test_libbrownie_searchlib.o \
127                         $(FLAGS_DEBUG) $(FLAGS_COMPILE) $(TEST_FLAGS_COMPILE) \
128                         test_libbrownie_searchlib.c
129
130 $(TEST_TARGET): $(TEST_OBJS) $(LIBBROWNIE_OBJS) $(LIBBROWNIE_TARGET)
131         $(CC) -o $(TEST_TARGET) $(FLAGS_DEBUG) $(LIBBROWNIE_OBJS) $(TEST_OBJS) $(LIBBROWNIE_TARGET) \
132                                 $(TEST_FLAGS_LINKER) -lcunit
133
134 $(TESTPROG):
135         $(MAKE) -C ../testdata all
136
137 clean:
138         rm -f *.o
139         rm -f $(LIBBROWNIE_TARGET)
140         rm -f *.core
141         rm -f $(TEST_TARGET)
142         rm -f *.xml
143
144