wmii/mk/hdr.mk

116 lines
2.9 KiB
Makefile
Raw Normal View History

FILTER = cat
EXCFLAGS = -I$$(echo $(INCPATH)|sed 's/:/ -I/g') -D_XOPEN_SOURCE=600
2009-05-21 22:22:58 +04:00
COMPILE= CC="$(CC)" CFLAGS="$(EXCFLAGS) $(CFLAGS) $$(pkg-config --cflags $(PACKAGES))" $(ROOT)/util/compile
COMPILEPIC= CC="$(CC)" CFLAGS="$(EXCFLAGS) $(CFLAGS) $$(pkg-config --cflags $(PACKAGES)) $(SOCFLAGS)" $(ROOT)/util/compile
LINK= LD="$(LD)" LDFLAGS="$(LDFLAGS) $$(pkg-config --libs $(PACKAGES))" $(ROOT)/util/link
LINKSO= LD="$(LD)" LDFLAGS="$(SOLDFLAGS) $(SHARED) $$(pkg-config --libs $(PACKAGES))" $(ROOT)/util/link
CLEANNAME=$(ROOT)/util/cleanname
SOEXT=so
TAGFILES=
CTAGS=ctags
2009-05-21 22:22:58 +04:00
PACKAGES = 2>/dev/null
include $(ROOT)/config.mk
# I hate this.
MKCFGSH=if test -f $(ROOT)/config.local.mk; then echo $(ROOT)/config.local.mk; else echo /dev/null; fi
MKCFG:=${shell $(MKCFGSH)}
MKCFG!=${MKCFGSH}
include $(MKCFG)
2008-05-30 01:22:56 +04:00
# and this:
# Try to find a sane shell. /bin/sh is a last resort, because it's
# usually bash on Linux, which means, it's painfully slow.
BINSH := $(shell \
if [ -x /bin/dash ]; then echo /bin/dash; \
elif [ -x /bin/ksh ]; then echo /bin/ksh; \
else echo /bin/sh; fi)
BINSH != echo /bin/sh
.SILENT:
2008-02-10 01:43:52 +03:00
.SUFFIXES: .O .o .o_pic .c .sh .rc .$(SOEXT) .awk .1 .man1 .depend .install .uninstall .clean
all:
.c.depend:
echo MKDEP $<
$(MKDEP) $(EXCFLAGS) $(CFLAGS) $< >>.depend
2007-07-03 18:16:14 +04:00
.sh.depend .rc.depend .1.depend .awk.depend:
:
.c.o:
$(COMPILE) $@ $<
.c.o_pic:
$(COMPILEPIC) $@ $<
.o.O:
$(LINK) $@ $<
.c.O:
$(COMPILE) ${<:.c=.o} $<
$(LINK) $@ ${<:.c=.o}
.sh.O:
echo FILTER $(BASE)$<
$(FILTER) $< >$@
sh -n $@
chmod 0755 $@
.rc.O .awk.O:
echo FILTER $(BASE)$<
$(FILTER) $< >$@
chmod 0755 $@
.man1.1:
echo TXT2TAGS $(BASE)$<
txt2tags -o- $< | $(FILTER) >$@
.O.install:
echo INSTALL $$($(CLEANNAME) $(BASE)$*)
2008-12-11 02:04:00 +03:00
cp -f $< $(DESTDIR)$(BIN)/$*
chmod 0755 $(DESTDIR)$(BIN)/$*
.O.uninstall:
echo UNINSTALL $$($(CLEANNAME) $(BASE)$*)
2008-12-11 02:04:00 +03:00
rm -f $(DESTDIR)$(BIN)/$*
.a.install .$(SOEXT).install:
echo INSTALL $$($(CLEANNAME) $(BASE)$<)
2008-12-11 02:04:00 +03:00
cp -f $< $(DESTDIR)$(LIBDIR)/$<
chmod 0644 $(DESTDIR)$(LIBDIR)/$<
.a.uninstall .$(SOEXT).uninstall:
echo UNINSTALL $$($(CLEANNAME) $(BASE)$<)
2008-12-11 02:04:00 +03:00
rm -f $(DESTDIR)$(LIBDIR)/$<
.h.install:
echo INSTALL $$($(CLEANNAME) $(BASE)$<)
2008-12-11 02:04:00 +03:00
cp -f $< $(DESTDIR)$(INCLUDE)/$<
chmod 0644 $(DESTDIR)$(INCLUDE)/$<
.h.uninstall:
echo UNINSTALL $$($(CLEANNAME) $(BASE)$<)
2008-12-11 02:04:00 +03:00
rm -f $(DESTDIR)$(INCLUDE)/$<
.1.install:
2008-02-10 01:43:52 +03:00
set -e; \
2008-08-25 20:47:56 +04:00
man=1; \
2008-02-10 01:43:52 +03:00
path="$(MAN)/man$$man/$*.$$man"; \
echo INSTALL man $$($(CLEANNAME) "$(BASE)/$*($$man)"); \
2008-12-11 02:04:00 +03:00
cp "$<" $(DESTDIR)"$$path"; \
chmod 0644 $(DESTDIR)"$$path"
.1.uninstall:
echo UNINSTALL man $$($(CLEANNAME) $*'(1)')
2008-12-11 02:04:00 +03:00
rm -f $(DESTDIR)$(MAN)/man1/$<
.O.clean:
echo CLEAN $$($(CLEANNAME) $(BASE)$<)
2007-04-19 22:53:07 +04:00
rm -f $< || true 2>/dev/null
rm -f $*.o || true 2>/dev/null
.o.clean .o_pic.clean:
echo CLEAN $$($(CLEANNAME) $(BASE)$<)
2007-04-19 22:53:07 +04:00
rm -f $< || true 2>/dev/null
printinstall:
mkdirs:
clean:
install: printinstall mkdirs
depend: cleandep
include $(ROOT)/mk/common.mk