OSDN Git Service

*** empty log message ***
[drdeamon64/drdeamon64.git] / libgoblin / 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 = gcc
40
41
42 SUPER_HEADER =  ../include/drd64_conf.h \
43                                 ../include/drd64_defines.h \
44                                 ../include/drd64_types.h \
45                                 ../include/drd64_error.h
46 CLIENT_HEADER =
47 USER_HEADER =
48
49 FLAGS_DEBUG = -g -Wall
50
51 LIBGOBLIN_TARGET = libgoblin.a
52 LIBGOBLIN_OBJS = drd64_libgoblin_system.o \
53                                         drd64_libgoblin_checkbin.o \
54                                         drd64_libgoblin_analyze.o \
55                                         drd64_libgoblin_elf.o \
56                                         drd64_libgoblin_elf64.o \
57                                         drd64_libgoblin_elf32.o \
58                                         drd64_libgoblin_dwarf.o \
59                                         drd64_libgoblin_dwarf_abbrev.o \
60                                         drd64_libgoblin_dwarf_info.o \
61                                         drd64_libgoblin_dwarf_common.o \
62                                         drd64_libgoblin_binfo.o
63 LIBGOBLIN_HEADER = drd64_libgoblin.h \
64                                         drd64_libgoblin_binfo.h \
65                                         drd64_libgoblin_checkbin.h \
66                                         drd64_libgoblin_analyze.h \
67                                         drd64_libgoblin_elf.h \
68                                         drd64_libgoblin_elf64.h \
69                                         drd64_libgoblin_elf32.h \
70                                         drd64_libgoblin_dwarf.h \
71                                         drd64_libgoblin_dwarf_abbrev.h \
72                                         drd64_libgoblin_dwarf_info.h \
73                                         drd64_libgoblin_dwarf_common.h \
74                                         drd64_libgoblin_dwarf_str.h \
75                                         ../include/libgoblin.h \
76                                         $(SUPER_HEADER)
77
78 TESTPG_TARGET = elftest
79
80
81 all:    $(LIBGOBLIN_TARGET) $(TESTPG_TARGET)
82
83 $(LIBGOBLIN_TARGET): $(LIBGOBLIN_OBJS)
84         ar rv $(LIBGOBLIN_TARGET) $(LIBGOBLIN_OBJS)
85         ranlib $(LIBGOBLIN_TARGET)
86         cp $(LIBGOBLIN_TARGET) ..
87
88 drd64_libgoblin_system.o: drd64_libgoblin_system.c $(LIBBROWNIE_HEADER)
89         gcc -c -o drd64_libgoblin_system.o $(FLAGS_DEBUG) \
90                                 drd64_libgoblin_system.c
91 drd64_libgoblin_binfo.o: drd64_libgoblin_binfo.c $(LIBBROWNIE_HEADER)
92         gcc -c -o drd64_libgoblin_binfo.o $(FLAGS_DEBUG) \
93                                 drd64_libgoblin_binfo.c
94 drd64_libgoblin_checkbin.o: drd64_libgoblin_checkbin.c $(LIBBROWNIE_HEADER)
95         gcc -c -o drd64_libgoblin_checkbin.o $(FLAGS_DEBUG) \
96                                 drd64_libgoblin_checkbin.c
97 drd64_libgoblin_elf.o: drd64_libgoblin_elf.c $(LIBBROWNIE_HEADER)
98         gcc -c -o drd64_libgoblin_elf.o $(FLAGS_DEBUG) \
99                                 drd64_libgoblin_elf.c
100 drd64_libgoblin_elf64.o: drd64_libgoblin_elf64.c $(LIBBROWNIE_HEADER)
101         gcc -c -o drd64_libgoblin_elf64.o $(FLAGS_DEBUG) \
102                                 drd64_libgoblin_elf64.c
103 drd64_libgoblin_elf32.o: drd64_libgoblin_elf32.c $(LIBBROWNIE_HEADER)
104         gcc -c -o drd64_libgoblin_elf32.o $(FLAGS_DEBUG) \
105                                 drd64_libgoblin_elf32.c
106 drd64_libgoblin_analyze.o: drd64_libgoblin_analyze.c $(LIBBROWNIE_HEADER)
107         gcc -c -o drd64_libgoblin_analyze.o $(FLAGS_DEBUG) \
108                                 drd64_libgoblin_analyze.c
109 drd64_libgoblin_dwarf.o: drd64_libgoblin_dwarf.c $(LIBBROWNIE_HEADER)
110         gcc -c -o drd64_libgoblin_dwarf.o $(FLAGS_DEBUG) \
111                                 drd64_libgoblin_dwarf.c
112 drd64_libgoblin_dwarf_abbrev.o: drd64_libgoblin_dwarf_abbrev.c $(LIBBROWNIE_HEADER)
113         gcc -c -o drd64_libgoblin_dwarf_abbrev.o $(FLAGS_DEBUG) \
114                                 drd64_libgoblin_dwarf_abbrev.c
115 drd64_libgoblin_dwarf_info.o: \
116                 drd64_libgoblin_dwarf_info.c $(LIBBROWNIE_HEADER)
117         gcc -c -o drd64_libgoblin_dwarf_info.o $(FLAGS_DEBUG) \
118                                 drd64_libgoblin_dwarf_info.c
119 drd64_libgoblin_dwarf_common.o: drd64_libgoblin_dwarf_common.c $(LIBBROWNIE_HEADER)
120         gcc -c -o drd64_libgoblin_dwarf_common.o $(FLAGS_DEBUG) \
121                                 drd64_libgoblin_dwarf_common.c
122
123 $(TESTPG_TARGET): elftest.c ../include/libgoblin.h $(LIBGOBLIN_TARGET)
124         gcc -g -o $(TESTPG_TARGET) elftest.c $(LIBGOBLIN_TARGET)
125
126
127 clean:
128         rm -f *.o
129         rm -f $(LIBGOBLIN_TARGET)
130         rm -f $(TESTPG_TARGET)
131         rm -f *.core
132