annotate mk/objective.mk @ 660:58f773ef62c1 trunk

[svn] directory creation stuff
author nenolod
date Wed, 22 Feb 2006 17:12:10 -0800
parents a019c0e28b28
children 3e03da73a514
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
1 # Shut up GNU make
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
2 .SILENT:
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
3
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
4 OBJECTIVE_DIRECTORIES = none
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
5 OBJECTIVE_LIBS = none
581
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
6 OBJECTIVE_LIBS_NOINST = none
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
7 OBJECTIVE_BINS = none
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
8 SUBDIRS = none
658
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
9 HEADERS = none
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
10
595
13a8fd9cbc33 [svn] fix some path issues
nenolod
parents: 593
diff changeset
11 LIBDIR = $(libdir)
13a8fd9cbc33 [svn] fix some path issues
nenolod
parents: 593
diff changeset
12 BINDIR = $(bindir)
658
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
13 INCLUDEDIR = $(includedir)
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
14 CFLAGS += -DHAVE_CONFIG_H
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
15
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
16 default: all
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
17 all: build
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
18
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
19 install:
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
20 $(MAKE) install-prehook
660
58f773ef62c1 [svn] directory creation stuff
nenolod
parents: 658
diff changeset
21 $(INSTALL) -d -m 755 $(DESTDIR)/$(BINDIR)
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
22 $(INSTALL) -d -m 755 $(DESTDIR)/$(LIBDIR)
660
58f773ef62c1 [svn] directory creation stuff
nenolod
parents: 658
diff changeset
23 $(INSTALL) -d -m 755 $(DESTDIR)/$(INCLUDEDIR)
593
81a746ef39d0 [svn] install subobjectives
nenolod
parents: 581
diff changeset
24 @if test "$(SUBDIRS)" != "none"; then \
81a746ef39d0 [svn] install subobjectives
nenolod
parents: 581
diff changeset
25 for i in $(SUBDIRS); do \
81a746ef39d0 [svn] install subobjectives
nenolod
parents: 581
diff changeset
26 echo "[installing subobjective: $$i]"; \
81a746ef39d0 [svn] install subobjectives
nenolod
parents: 581
diff changeset
27 (cd $$i; $(MAKE) install; cd ..); \
81a746ef39d0 [svn] install subobjectives
nenolod
parents: 581
diff changeset
28 done; \
81a746ef39d0 [svn] install subobjectives
nenolod
parents: 581
diff changeset
29 fi
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
30 @if test "$(OBJECTIVE_DIRECTORIES)" != "none"; then \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
31 for i in $(OBJECTIVE_DIRECTORIES); do \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
32 printf "%10s %-20s\n" MKDIR $$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
33 $(INSTALL) -d -m 755 $(DESTDIR)/$$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
34 done; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
35 fi
658
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
36 @if test "$(HEADERS)" != "none"; then \
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
37 for i in $(HEADERS); do \
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
38 printf "%10s %-20s\n" INSTALL $$i; \
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
39 $(INSTALL) $(INSTALL_OVERRIDE) $$i $(DESTDIR)/$(INCLUDEDIR)/$$i; \
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
40 done; \
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
41 fi
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
42 @if test "$(OBJECTIVE_LIBS)" != "none"; then \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
43 for i in $(OBJECTIVE_LIBS); do \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
44 printf "%10s %-20s\n" INSTALL $$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
45 $(INSTALL) $(INSTALL_OVERRIDE) $$i $(DESTDIR)/$(LIBDIR)/$$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
46 done; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
47 fi
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
48 @if test "$(OBJECTIVE_BINS)" != "none"; then \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
49 for i in $(OBJECTIVE_BINS); do \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
50 printf "%10s %-20s\n" INSTALL $$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
51 $(INSTALL) $(INSTALL_OVERRIDE) $$i $(DESTDIR)/$(BINDIR)/$$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
52 done; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
53 fi;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
54 $(MAKE) install-posthook
564
ca034eafe72f [svn] Add confirmation messages.
nenolod
parents: 563
diff changeset
55 @echo "[all objectives installed]"
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
56
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
57 clean:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
58 $(MAKE) clean-prehook
567
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
59 @if test "$(SUBDIRS)" != "none"; then \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
60 for i in $(SUBDIRS); do \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
61 echo "[cleaning subobjective: $$i]"; \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
62 (cd $$i; $(MAKE) clean; cd ..); \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
63 done; \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
64 fi
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
65 $(MAKE) clean-posthook
568
f34898e3333a [svn] Announce when we're building a library or binary objective, not just a component objective.
nenolod
parents: 567
diff changeset
66 $(RM) *.o *.lo *.so *.a *.sl
564
ca034eafe72f [svn] Add confirmation messages.
nenolod
parents: 563
diff changeset
67 @echo "[all objectives cleaned]"
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
68
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
69 distclean: clean
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
70 $(RM) mk/rules.mk
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
71
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
72 build:
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
73 $(MAKE) build-prehook
658
a019c0e28b28 [svn] If the makefile has a HEADERS variable, then install them to the
nenolod
parents: 626
diff changeset
74 +@if test "$(SUBDIRS)" != "none"; then \
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
75 for i in $(SUBDIRS); do \
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
76 echo "[building subobjective: $$i]"; \
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
77 (cd $$i; $(MAKE); cd ..); \
570
ee984d579bbe [svn] Announce objective completion.
nenolod
parents: 569
diff changeset
78 echo "[finished subobjective: $$i]"; \
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
79 done; \
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
80 fi
581
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
81 @if test "$(OBJECTIVE_LIBS)" != "none"; then \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
82 for i in $(OBJECTIVE_LIBS); do \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
83 echo "[building library objective: $$i]"; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
84 $(MAKE) $$i; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
85 echo "[finished library objective: $$i]"; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
86 done; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
87 fi
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
88 @if test "$(OBJECTIVE_LIBS_NOINST)" != "none"; then \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
89 for i in $(OBJECTIVE_LIBS_NOINST); do \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
90 echo "[building library dependency: $$i]"; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
91 $(MAKE) $$i; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
92 echo "[finished library dependency: $$i]"; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
93 done; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
94 fi
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
95 @if test "$(OBJECTIVE_BINS)" != "none"; then \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
96 for i in $(OBJECTIVE_BINS); do \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
97 echo "[building binary objective: $$i]"; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
98 $(MAKE) $$i; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
99 echo "[finished binary objective: $$i]"; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
100 done; \
572cbb4c25ba [svn] more fixes
nenolod
parents: 580
diff changeset
101 fi
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
102 $(MAKE) build-posthook
564
ca034eafe72f [svn] Add confirmation messages.
nenolod
parents: 563
diff changeset
103 @echo "[all objectives built]"
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
104
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
105 .c.o:
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
106 printf "%10s %-20s\n" CC $<
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
107 $(CC) $(CFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
108
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
109 .cc.o:
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
110 printf "%10s %-20s\n" CXX $<;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
111 $(CXX) $(CXXFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
112
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
113 .cpp.o:
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
114 printf "%10s %-20s\n" CXX $<;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
115 $(CXX) $(CXXFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
116
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
117 .cxx.o:
566
ab7027a06ca9 [svn] convert mpg123 over... right now we don't use the "x86-optimized code", although I doubt it makes a lick of
nenolod
parents: 564
diff changeset
118 printf "%10s %-20s\n" CXX $<;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
119 $(CXX) $(CXXFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
120
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
121 %.so: $(OBJECTS)
626
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
122 if test "x$(OBJECTS)" != "x"; then \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
123 make $(OBJECTS); \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
124 printf "%10s %-20s\n" LINK $@; \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
125 $(CC) -fPIC -DPIC -shared -o $@ $(OBJECTS) $(LDFLAGS) $(LIBADD); \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
126 fi
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
127
580
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
128 %.a: $(OBJECTS)
626
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
129 if test "x$(OBJECTS)" != "x"; then \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
130 make $(OBJECTS); \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
131 printf "%10s %-20s\n" LINK $@; \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
132 $(AR) cq $@ $(OBJECTS); \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
133 fi
580
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
134
579
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
135 $(OBJECTIVE_BINS): $(OBJECTS)
626
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
136 if test "x$(OBJECTS)" != "x"; then \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
137 make $(OBJECTS); \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
138 printf "%10s %-20s\n" LINK $@; \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
139 $(CC) -o $@ $(OBJECTS) $(LDFLAGS) $(LIBADD); \
eb0c533e7c48 [svn] do not forkbomb if we have a malformed makefile
nenolod
parents: 595
diff changeset
140 fi
579
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
141
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
142 clean-prehook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
143 clean-posthook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
144 build-prehook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
145 build-posthook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
146 install-prehook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
147 install-posthook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
148
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
149 # compatibility with automake follows
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
150 am--refresh: