source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Makefile.Common @ 53

Last change on this file since 53 was 53, checked in by rosiere, 17 years ago
  • Banc de registre multi banc
  • Banc de registre générique.
File size: 2.3 KB
Line 
1#
2# $Id$
3#
4# [ Description ]
5#
6# Makefile
7#
8
9include                         $(MORPHEO_TOPLEVEL)/Makefile.tools
10
11#-----[ Directory ]----------------------------------------
12DIR_INC                         = include
13DIR_SRC                         = src
14DIR_OBJ                         = obj
15DIR_SCRIPT                      = $(MORPHEO_SCRIPT)
16
17#-----[ Compilation ]--------------------------------------
18INCDIR                          = $(SYSTEMC_INCDIR_$(SIMULATOR))        \
19                                  -I$(DIR_MORPHEO)
20
21LIBDIR                          = $(DIR_LIBRARY)                        \
22                                  $(SYSTEMC_LIBDIR_$(SIMULATOR))        \
23                                  $(SOCLIB_LIBDIR)                      \
24                                  $(OR1K_LIBDIR)                               
25
26LIBS                            = $(LIBRARY) -lm $(SYSTEMC_LIBNAME_$(SIMULATOR)) $(SOCLIB_LIBNAME) $(OR1K_LIBNAME) -lbfd  -ldl
27
28FLAGS_COMMON                    = $(SYSTEMC_CFLAGS_$(SIMULATOR))        \
29                                  -O3                                   \
30                                  -g3                                   \
31                                  -Wall                                 \
32                                  -Wunused
33
34#                                 -Wno-deprecated                       \
35#                                 -Wno-non-template-friend              \
36#                                 -Wno-pmf-conversions                  \
37#                                 -Wfatal-errors                        \
38#                                 -pedantic                             \
39#                                 -Werror                               \
40
41CFLAGS                          = $(FLAGS) $(FLAGS_COMMON) $(INCDIR)
42LFLAGS                          = $(FLAGS) $(FLAGS_COMMON) $(LIBDIR)
43
44#-----[ Variable ]-----------------------------------------
45
46ENTITY                          = `$(BASENAME) $$PWD`
47
48OBJECTS_COMMON                  = $(patsubst $(DIR_SRC)/%.cpp,$(DIR_OBJ)/%.o,$(wildcard $(DIR_SRC)/*.cpp))
49
50HEADERS                         = $(wildcard $(DIR_INC)/*.h)
51
52#-----[ Rules ]--------------------------------------------
53.PRECIOUS                       : $(DIR_OBJ)/%.o
54
55test_env                        :
56                                @$(ECHO) "-------------------[ $(ENTITY) ]"
57ifeq ($(origin MORPHEO_TOPLEVEL), undefined)
58                                $(error "variable MORPHEO_TOPLEVEL is undefined");
59endif
60ifeq ($(origin MORPHEO_SCRIPT), undefined)
61                                $(error "variable MORPHEO_SCRIPT   is undefined");
62endif
63ifeq ($(origin DIR_MORPHEO), undefined)
64                                $(error "variable DIR_MORPHEO      is undefined");
65endif
66
67$(DIR_OBJ)/%.o                  : $(DIR_SRC)/%.cpp $(HEADERS)
68                                @\
69                                $(ECHO) "Compilation        : $*";\
70                                $(CXX) $(CFLAGS) -c -o $@ $<;
71
72$(DIR_OBJ)                      :
73                                @\
74                                $(ECHO) "Create directory   : $@";\
75                                $(MKDIR) $@
76
77common_clean                    :
78                                @\
79                                $(ECHO) "Delete     temporary files in directory "$(PWD);\
80                                $(RM)   $(DIR_OBJ)      \
81                                        $(DIR_BIN)      \
82                                        *~              \
83                                        $(DIR_SRC)/*~   \
84                                        $(DIR_INC)/*~;
85
86common_help                     :
87                                @\
88                                $(ECHO) " -----[ Common ]-------------------------------------";\
89                                $(ECHO) "";\
90                                $(ECHO) " * test_env             : test if environnment's variable is set";\
91                                $(ECHO) "";
Note: See TracBrowser for help on using the repository browser.