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

Last change on this file was 143, checked in by rosiere, 14 years ago

1) change environment.sh
2) add lot of include

  • Property svn:keywords set to Id
File size: 2.6 KB
Line 
1#
2# $Id: Makefile.Common 143 2010-09-02 14:33:08Z rosiere $
3#
4# [ Description ]
5#
6# Makefile
7#
8
9ifeq ($(origin MORPHEO_TOPLEVEL), undefined)
10        $(error "variable MORPHEO_TOPLEVEL is undefined");
11else
12        include                         $(MORPHEO_TOPLEVEL)/Makefile.tools
13endif
14ifeq ($(origin MORPHEO_PREFIX), undefined)
15        $(error "variable MORPHEO_PREFIX      is undefined");
16endif
17ifeq ($(origin MORPHEO_TMP), undefined)
18        $(error "variable MORPHEO_TMP      is undefined");
19endif
20ifeq ($(origin MORPHEO_SCRIPT), undefined)
21        $(error "variable MORPHEO_SCRIPT   is undefined");
22endif
23ifeq ($(origin DIR_MORPHEO), undefined)
24        $(error "variable DIR_MORPHEO      is undefined");
25endif
26
27#-----[ Directory ]----------------------------------------
28DIR_TMP                         = $(MORPHEO_TMP)
29DIR_INC                         = include
30DIR_SRC                         = src
31DIR_OBJ                         = $(DIR_TMP)/obj/$(MORPHEO_TYPE)
32DIR_LIB                         = $(MORPHEO_PREFIX)/lib/$(MORPHEO_TYPE)
33DIR_SCRIPT                      = $(MORPHEO_SCRIPT)
34
35#-----[ Compilation ]--------------------------------------
36INCDIR                          = $(SYSTEMC_INCDIR_$(SIMULATOR_SYSTEMC))        \
37                                  -I.                                   \
38                                  -I$(DIR_MORPHEO)
39
40LIBDIR                          = -L$(DIR_LIB) \
41                                  $(SYSTEMC_LIBDIR_$(SIMULATOR_SYSTEMC))       
42#                                 $(OR1K_LIBDIR)                               
43
44FLAGS_COMMON                    = $(SYSTEMC_CFLAGS_$(SIMULATOR_SYSTEMC))        \
45                                  $(CXX_FLAGS)
46
47CFLAGS                          = $(MORPHEO_FLAGS) $(FLAGS_COMMON) $(INCDIR)
48LFLAGS                          = $(MORPHEO_FLAGS) $(FLAGS_COMMON) $(LIBDIR)
49
50#-----[ Variable ]-----------------------------------------
51PREFIX_OBJ                      = $(ENTITY)_
52#OBJECTS_COMMON                 = $(patsubst $(DIR_SRC)/%.cpp,$(DIR_OBJ)/%.o,$(wildcard $(DIR_SRC)/*.cpp))
53SOURCES                         = $(wildcard $(DIR_SRC)/*.cpp)
54OBJECTS_COMMON                  = $(addprefix $(DIR_OBJ)/$(PREFIX_OBJ), $(addsuffix .o, $(basename $(notdir $(SOURCES)))))
55
56HEADERS                         = $(wildcard $(DIR_INC)/*.h)
57
58#-----[ Rules ]--------------------------------------------
59.PRECIOUS                       : $(DIR_OBJ)/$(PREFIX_OBJ)%.o
60
61test_env                        :
62                                @$(ECHO) "-------------------| $(ENTITY)"
63
64$(DIR_OBJ)/$(PREFIX_OBJ)%.o     : $(DIR_SRC)/%.cpp $(HEADERS)
65                                @\
66                                $(ECHO) "Compilation        : $*";\
67                                $(SYSTEMC_CXX_$(SIMULATOR_SYSTEMC)) $(CFLAGS) -c -o $@ $<;
68
69$(DIR_OBJ)                      :
70                                @\
71                                $(ECHO) "Create directory   : $@";\
72                                $(MKDIR) $@
73
74common_clean                    :
75                                @\
76                                $(ECHO) "Delete     temporary files in directory $(PWD)";\
77                                $(RM)   $(OBJECTS_COMMON)     \
78                                        *~                    \
79                                        $(DIR_SRC)/*~         \
80                                        $(DIR_INC)/*~;
81
82common_clean_all                : common_clean
83                                @\
84                                $(RM)   $(DIR_OBJ)
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.