Salome HOME
Join modifications from BR_Dev_For_4_0 tag V4_1_1.
[modules/med.git] / adm_local_without_kernel / unix / make_module.in
1 # generic rule to put in top module Makefile 
2 # (for example with module SALOME, SALOME/Makefile.in and SALOME/src/Makefile.in)
3
4 # build all lib in all subdir
5 lib:$(SUBDIRS:%=lib_%)
6
7 $(SUBDIRS:%=lib_%):lib_%:%
8         cd $< ; $(MAKE) lib
9
10 # build all bin in all subdir
11 bin:
12         @@SETX@; for d in $(SUBDIRS); do        \
13            (cd $$d && $(MAKE) $@) || exit 1;    \
14         done
15
16 # launch check in all subdir
17 check: tests
18 tests:
19         @@SETX@; for d in $(SUBDIRS); do        \
20            (cd $$d && $(MAKE) $@) || exit 1;    \
21         done
22
23 # copy all header files in common directory
24 inc:
25         @@SETX@; for d in $(SUBDIRS); do        \
26            (cd $$d && $(MAKE) $@) || exit 1;    \
27         done
28
29 exportinc:
30         @@SETX@; for d in $(SUBDIRS); do        \
31            (cd $$d && $(MAKE) $@) || exit 1;    \
32         done
33
34 # copy all idl files in common directory
35 idl:
36         @@SETX@; for d in $(SUBDIRS); do        \
37            (cd $$d && $(MAKE) $@) || exit 1;    \
38         done
39
40 dep: depend
41
42 depend:
43         @@SETX@; for d in $(SUBDIRS); do        \
44            (cd $$d && $(MAKE) $@) || exit 1;    \
45         done
46
47 # copy all resources files in common directory
48 RESOURCES_FILES_ALL := $(notdir $(wildcard $(srcdir)/resources/*))
49 RESOURCES_FILES_ALL := $(filter-out CVS, $(RESOURCES_FILES_ALL))
50 RESOURCES_FILES_ALL := $(filter-out %.po, $(RESOURCES_FILES_ALL))
51 RESOURCES_FILES_ALL := $(filter-out %.in, $(RESOURCES_FILES_ALL))
52 RESOURCES_FILES ?= $(RESOURCES_FILES_ALL)
53
54 resources: resources-cp
55         @@SETX@; for d in $(SUBDIRS); do        \
56            (cd $$d && $(MAKE) $@) || exit 1;    \
57         done
58
59 resources-cp: $(RESOURCES_FILES:%=$(top_builddir)/share/salome/resources/$(MODULE_NAME)/%)
60
61 $(RESOURCES_FILES:%=$(top_builddir)/share/salome/resources/$(MODULE_NAME)/%): $(top_builddir)/share/salome/resources/$(MODULE_NAME)/% : %
62         cp -fr $< $@;
63
64 data:
65         @if test "X$(top_builddir)" = "X."; then                                                         \
66         ((cd examples && $(MAKE) $@) || exit 1);                         \
67         fi;
68 # Commented because we need not to make docs when we make BUILD         
69 # docs: 
70 #       @if test "X$(top_builddir)" = "X."; then \
71 #       ((cd doc && $(MAKE) $@) || exit 1); \
72 #       fi;     
73
74 install: install-resources
75         @@SETX@; for d in $(SUBDIRS); do        \
76            (cd $$d && $(MAKE) $@) || exit 1;    \
77         done
78         @if test "X$(top_builddir)" = "X."; then        \
79            $(LT) --mode=finish $(libdir) ;              \
80         fi
81
82 uninstall: uninstall-resources
83         @@SETX@; for d in $(SUBDIRS); do        \
84            (cd $$d && $(MAKE) $@) || exit 1;    \
85         done
86
87 cleandep:
88         @@SETX@; for d in $(SUBDIRS); do        \
89            (cd $$d && $(MAKE) $@) || exit 1;    \
90         done
91
92 mostlyclean:
93         @@SETX@; for d in $(SUBDIRS); do        \
94            (cd $$d && $(MAKE) $@) || exit 1;    \
95         done
96
97 clean:
98         @@SETX@; for d in $(SUBDIRS); do        \
99            (cd $$d && $(MAKE) $@) || exit 1;    \
100         done
101         -$(RM) .depend *~ *% core *.core *.bak *.new *.old
102
103 distclean: clean
104         @@SETX@; for d in $(SUBDIRS); do        \
105            (cd $$d && $(MAKE) $@) || exit 1;    \
106         done
107         -$(RM) $(RESOURCES_FILES:%=$(top_builddir)/share/salome/resources/$(MODULE_NAME)/%)
108         -$(RM) Makefile
109
110 install-resources: resources-cp
111 # one resources directory for all salome modules
112         $(INSTALL) -d $(datadir)/resources/$(MODULE_NAME)
113         @for f in X $(RESOURCES_FILES:%=$(top_builddir)/share/salome/resources/$(MODULE_NAME)/%); do \
114            if test $$f != X; then                                                        \
115              ($(INSTALL_DATA) $$f $(datadir)/resources/$(MODULE_NAME)/. || exit 1);                      \
116            fi;                                                                           \
117         done
118
119 # Uninstall resources files
120 uninstall-resources:
121         @for f in X $(RESOURCES_FILES); do            \
122            if test $$f != X; then                                             \
123              $(LT_UNINSTALL) $(datadir)/resources/$(MODULE_NAME)/$$f ;                        \
124            fi;                                                                \
125         done
126