$1: $$(call deps_create,$$($1_SOURCES),$(_cobjs)/$1)
$(CC) $$(CFLAGS) $$($1_CPPFLAGS) -o $$@ $$(filter %.o,$$^) \
- $$(LDFLAGS) $$($1_LDFLAGS) $$($1_LIBADD)
+ $$(LDFLAGS) $$($1_LDFLAGS) $$($1_LDADD)
$$(eval $$(call RULE_C_tpl,$1,))
$1.so$3: $$(call deps_create,$$($1_SOURCES),$(_cobjs)/$1)
$(CC) $$(CFLAGS) $$($1_CPPFLAGS) -fPIC -shared -o $$@ $$(filter %.o,$$^) \
- $$(LDFLAGS) $$($1_LDFLAGS) $$($1_LIBADD)
+ $$(LDFLAGS) $$($1_LDFLAGS) $$($1_LDADD)
$$(if $$(word 2,$$(subst ., ,$3)),ln -sf $$@ $1.so.$$(word 1,$$(subst ., ,$3)))
$$(if $$($1_VERSION), ln -sf $$@ $1.so)
install:: $(foreach v,$(filter %_SCRIPTS,$(.VARIABLES)),$(patsubst %_SCRIPTS,install-SCRIPTS/%,$v))
+##
+## rules for *_HEADERS
+##
+
+install-HEADERS/%::
+ $(if $($*dir), $(INSTALL_DIR) $(DESTDIR)$($*dir))
+ $(if $($*dir), $(INSTALL_DATA) $($*_HEADERS) $(DESTDIR)$($*dir))
+
+install:: $(foreach v,$(filter %_HEADERS,$(.VARIABLES)),$(patsubst %_HEADERS,install-HEADERS/%,$v))
+
########################################################################}}}#
#[ Candy ]##############################################################{{{#
########################################################################}}}#
all check clobber distclean install::
- @set -e $(patsubst %,; $(MAKE) -rC % $@,$(SUBDIRS))
+ @$(if $(SUBDIRS),set -e $(patsubst %,; $(MAKE) -rC % $@,$(SUBDIRS)))
CLEAN_RECURSE=1
clean::
clobber distclean:: CLEAN_RECURSE=
clobber distclean:: clean
$(RM) -r .objs* $(DISTCLEANFILES)
+ @[ -f Makefile.in ] && $(RM) Makefile
ifeq (".","$(DEPTH)")
clobber distclean::