annotate mk/objective.mk @ 580:07e77b804697 trunk

[svn] ditto for static libraries
author nenolod
date Thu, 02 Feb 2006 16:15:10 -0800
parents 785ec2ad4ea4
children 572cbb4c25ba
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
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
6 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
7 SUBDIRS = none
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 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
9
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
10 default: all
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
11 all: build
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
12
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
13 install:
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
14 $(MAKE) install-prehook
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
15 $(INSTALL) -d -m 755 $(DESTDIR)/$(LIBDIR)
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
16 @if test "$(OBJECTIVE_DIRECTORIES)" != "none"; then \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
17 for i in $(OBJECTIVE_DIRECTORIES); do \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
18 printf "%10s %-20s\n" MKDIR $$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
19 $(INSTALL) -d -m 755 $(DESTDIR)/$$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
20 done; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
21 fi
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
22 @if test "$(OBJECTIVE_LIBS)" != "none"; then \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
23 for i in $(OBJECTIVE_LIBS); do \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
24 printf "%10s %-20s\n" INSTALL $$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
25 $(INSTALL) $(INSTALL_OVERRIDE) $$i $(DESTDIR)/$(LIBDIR)/$$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
26 done; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
27 fi
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
28 @if test "$(OBJECTIVE_BINS)" != "none"; then \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
29 for i in $(OBJECTIVE_BINS); do \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
30 printf "%10s %-20s\n" INSTALL $$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
31 $(INSTALL) $(INSTALL_OVERRIDE) $$i $(DESTDIR)/$(BINDIR)/$$i; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
32 done; \
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
33 fi;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
34 $(MAKE) install-posthook
564
ca034eafe72f [svn] Add confirmation messages.
nenolod
parents: 563
diff changeset
35 @echo "[all objectives installed]"
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
36
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
37 clean:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
38 $(MAKE) clean-prehook
567
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
39 @if test "$(SUBDIRS)" != "none"; then \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
40 for i in $(SUBDIRS); do \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
41 echo "[cleaning subobjective: $$i]"; \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
42 (cd $$i; $(MAKE) clean; cd ..); \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
43 done; \
2ed2993cd920 [svn] fix make clean
nenolod
parents: 566
diff changeset
44 fi
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
45 $(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
46 $(RM) *.o *.lo *.so *.a *.sl
564
ca034eafe72f [svn] Add confirmation messages.
nenolod
parents: 563
diff changeset
47 @echo "[all objectives cleaned]"
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
48
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
49 distclean: clean
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
50 $(RM) mk/rules.mk
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
51
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
52 build:
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
53 $(MAKE) build-prehook
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
54 @if test "$(SUBDIRS)" != "none"; then \
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
55 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
56 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
57 (cd $$i; $(MAKE); cd ..); \
570
ee984d579bbe [svn] Announce objective completion.
nenolod
parents: 569
diff changeset
58 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
59 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
60 fi
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
61 @for i in $(OBJECTIVE_LIBS); do \
568
f34898e3333a [svn] Announce when we're building a library or binary objective, not just a component objective.
nenolod
parents: 567
diff changeset
62 echo "[building library objective: $$i]"; \
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
63 $(MAKE) $$i; \
570
ee984d579bbe [svn] Announce objective completion.
nenolod
parents: 569
diff changeset
64 echo "[finished library objective: $$i]"; \
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
65 done
569
7c385d45f6c8 [svn] Add library "dependencies" care of $(OBJECTIVE_LIBS_NOINST)
nenolod
parents: 568
diff changeset
66 @for i in $(OBJECTIVE_LIBS_NOINST); do \
7c385d45f6c8 [svn] Add library "dependencies" care of $(OBJECTIVE_LIBS_NOINST)
nenolod
parents: 568
diff changeset
67 echo "[building library dependency: $$i]"; \
7c385d45f6c8 [svn] Add library "dependencies" care of $(OBJECTIVE_LIBS_NOINST)
nenolod
parents: 568
diff changeset
68 $(MAKE) $$i; \
570
ee984d579bbe [svn] Announce objective completion.
nenolod
parents: 569
diff changeset
69 echo "[finished library dependency: $$i]"; \
569
7c385d45f6c8 [svn] Add library "dependencies" care of $(OBJECTIVE_LIBS_NOINST)
nenolod
parents: 568
diff changeset
70 done
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
71 @for i in $(OBJECTIVE_BINS); do \
568
f34898e3333a [svn] Announce when we're building a library or binary objective, not just a component objective.
nenolod
parents: 567
diff changeset
72 echo "[building binary objective: $$i]"; \
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
73 $(MAKE) $$i; \
570
ee984d579bbe [svn] Announce objective completion.
nenolod
parents: 569
diff changeset
74 echo "[finished binary objective: $$i]"; \
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
75 done
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
76 $(MAKE) build-posthook
564
ca034eafe72f [svn] Add confirmation messages.
nenolod
parents: 563
diff changeset
77 @echo "[all objectives built]"
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
78
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
79 .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
80 printf "%10s %-20s\n" CC $<
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
81 $(CC) $(CFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
82
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
83 .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
84 printf "%10s %-20s\n" CXX $<;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
85 $(CXX) $(CXXFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
86
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
87 .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
88 printf "%10s %-20s\n" CXX $<;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
89 $(CXX) $(CXXFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
90
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
91 .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
92 printf "%10s %-20s\n" CXX $<;
562
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
93 $(CXX) $(CXXFLAGS) -c $< -o $@
5cdadcf74ec3 [svn] needed requirements for objective-based buildsystem (automake replacement)
nenolod
parents:
diff changeset
94
578
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
95 %.so: $(OBJECTS)
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
96 make $(OBJECTS)
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
97 printf "%10s %-20s\n" LINK $@
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
98 $(CC) -fPIC -DPIC -shared -o $@ $(OBJECTS) $(LDFLAGS) $(LIBADD)
d89a7b85528d [svn] buildsystem improvements
nenolod
parents: 570
diff changeset
99
580
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
100 %.a: $(OBJECTS)
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
101 make $(OBJECTS)
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
102 printf "%10s %-20s\n" LINK $@
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
103 $(AR) cq $@ $(OBJECTS)
07e77b804697 [svn] ditto for static libraries
nenolod
parents: 579
diff changeset
104
579
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
105 $(OBJECTIVE_BINS): $(OBJECTS)
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
106 make $(OBJECTS)
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
107 printf "%10s %-20s\n" LINK $@
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
108 $(CC) -o $@ $(OBJECTS) $(LDFLAGS) $(LIBADD)
785ec2ad4ea4 [svn] try to add a "default" make rule for $(OBJECTIVE_BINS)
nenolod
parents: 578
diff changeset
109
563
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
110 clean-prehook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
111 clean-posthook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
112 build-prehook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
113 build-posthook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
114 install-prehook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
115 install-posthook:
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
116
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
117 # compatibility with automake follows
0879e7ad85b1 [svn] some buildsystem changes... nothing notable yet
nenolod
parents: 562
diff changeset
118 am--refresh: