784770d19ef921486821d3d5dffb5ca6ebda8487
6 .SECONDEXPANSION
: # sorry
13 v-tag
= $(call v-tag_
$V,$1)
14 v-tag_0
= @printf
" %-12s %s\n" "$1" "$@";
17 CFLAGS
= -O2
-g
-pedantic
-Wall
-Werror
28 PROGS
+= dvd-sector-copy
29 dvd-sector-copy_SRCS
= dvd-sector-copy.c
30 dvd-sector-copy_LIBS
= -ldvdread
-lm
33 SCRIPTS
+= dvdrip-upload
37 $$(V_AT
)mkdir
-p
$$(dir $$@
)
38 $$(call v-tag
,CC
[$1])$$(CC
) -c
$$(CFLAGS
) $$(CFLAGS_
$1) -o
$$@
-MD
-MF obj.
$1/$$*.dep
$$<
39 clean::; rm -rf obj.
$1
41 $(foreach a
,$(ARCH
), $(eval
$(call setup-arch
,$a)))
43 objects
= $(addsuffix $(or
$2,.o
),$(basename $(filter %.c
%.s
%.S
,$1)))
45 ALL_PROGS
+= $(foreach a
,$(ARCH
), \
46 $(foreach p
,$(PROGS
), $(bindir)/$p.
$a))
47 TARGETS
+= $(ALL_PROGS
)
48 program-name
= $(basename $1)
49 program-arch
= $(patsubst .
%,%,$(suffix $1))
50 program-sources
= $($(call program-name
,$1)_SRCS
) \
51 $($(call program-name
,$1)_SRCS_
$(call program-arch
,$1))
52 program-objects
= $(addprefix obj.
$(call program-arch
,$1)/, \
53 $(call objects
,$(call program-sources
,$1),$2))
54 $(ALL_PROGS
): $(bindir)/%: $$(call program-objects
,$$*) $$($$(call program-name
,$$*)_DEPS
)
55 $(call v-tag
,LD
[$(call program-arch
,$*)])$(LD
) \
56 $(LDFLAGS
) $(LDFLAGS_
$(call program-arch
,$*)) -o
$@ \
57 $(call program-objects
,$*) \
58 $($(call program-name
,$*)_LIBS
) \
59 $($(call program-name
,$*)_LIBS_
$(call program-arch
,$*))
61 ALL_SCRIPTS
= $(addprefix $(bindir)/, $(SCRIPTS
))
62 TARGETS
+= $(ALL_SCRIPTS
)
63 $(ALL_SCRIPTS
): $(bindir)/%: %
64 $(call v-tag
,SCRIPT
)install $* $@
69 clean::; rm -f
$(TARGETS
)
71 -include $(foreach p
,$(notdir $(ALL_PROGS
)), $(call program-objects
,$p,.dep
))