1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
#
# Makefile for module compilation.
#
# This file is part of FoxEye distribution.
# Copiright (C) 1999-2015 Andrej Gritsenko <andrej@rep.kiev.ua>
SHELL = /bin/sh
prefix = @prefix@
exec_prefix = @exec_prefix@
pkglibdir = @libdir@/@PACKAGE@
datadir = @prefix@/share
pkgdatadir = $(datadir)/@PACKAGE@
helpdir = $(pkglibdir)/help
modulesdir = $(pkglibdir)/modules
docdir = $(datadir)/doc/@PACKAGE@-@VERSION@
INCLUDES = -I${top_srcdir}/tree -I${top_srcdir}/core -I${top_srcdir}/ui
INSTALL = @INSTALL@ -m 644
MKDIR_P = @MKDIR_P@
DEFS = @DEFS@ -DSCRIPTSDIR=\"$(pkgdatadir)\" -D_STATIC_INIT=modinit_$(FILENAMESUB)
CC = @CC@
COMPILE = $(CC) -c @CFLAGS@ $(DEFS) $(INCLUDES) @CPPFLAGS@
LINK = @CCLIB@ @CFLAGS@ @LIB_LDFLAGS@
LIBS = @ADD_LC@ @MOD_LIBS@ @LTLIBINTL@
MODLIBS = @MODLIBS@
# GNU make
@MAKE_IS_GNU_TRUE@FILENAME = $(shell /usr/bin/basename `pwd`)
@MAKE_IS_GNU_TRUE@CFILES = $(wildcard *.c)
@MAKE_IS_GNU_TRUE@HFILES = $(wildcard *.h)
@MAKE_IS_GNU_TRUE@HELPFILES = $(wildcard *.help)
@MAKE_IS_GNU_TRUE@DOCFILES = $(wildcard *.ref)
@MAKE_IS_GNU_TRUE@FILENAMESUB = $(shell echo $(FILENAME) | sed 's/-/_/g')
@MAKE_IS_GNU_TRUE@EXTRAMODLIBS = $(shell ($(MODLIBS); echo $$MODLIBS_$(FILENAMESUB)))
# BSD make
@MAKE_IS_GNU_FALSE@FILENAME != /usr/bin/basename $(.CURDIR)
@MAKE_IS_GNU_FALSE@ALLFILES != /bin/ls
@MAKE_IS_GNU_FALSE@CFILES = ${ALLFILES:M*.c}
@MAKE_IS_GNU_FALSE@HFILES = ${ALLFILES:M*.h}
@MAKE_IS_GNU_FALSE@HELPFILES = ${ALLFILES:M*.help}
@MAKE_IS_GNU_FALSE@DOCFILES = ${ALLFILES:M*.ref}
@MAKE_IS_GNU_FALSE@FILENAMESUB = ${FILENAME:S/-/_/g}
@MAKE_IS_GNU_FALSE@EXTRAMODLIBS != $(MODLIBS); echo $$MODLIBS_$(FILENAMESUB)
srcdir = @srcdir@
top_srcdir = ../..
top_builddir = ../..
subdir := modules/$(FILENAME)
mdistdir := ${top_builddir}/@PACKAGE@-@VERSION@/$(subdir)
OBJS = $(CFILES:.c=.o)
DISTFILES = $(CFILES) $(HFILES) $(HELPFILES) $(DOCFILES)
all static: $(OBJS)
modules: $(FILENAME).so
clean:
rm -f *.o *.so core *~
$(FILENAME).so: $(top_builddir)/core/libfoxeye.so $(OBJS)
$(LINK) -o $@ $(OBJS) $(LIBS) $(EXTRAMODLIBS) -L$(top_builddir)/core -lfoxeye
.c.o: $(HFILES) ${top_srcdir}/core/modules.h ${top_srcdir}/core/foxeye.h ${top_srcdir}/core/protos.h
$(COMPILE) -o $@ $<
$(top_builddir)/core/libfoxeye.so:
@cd $(top_builddir)/core; $(MAKE) libfoxeye.so
install-help:
$(MKDIR_P) $(DESTDIR)$(helpdir)
@list='$(HELPFILES)'; for p in $$list; do \
if test -f $$p; then \
hp=`echo $$p|sed s/.help$$//`; \
echo " $(DESTDIR)$(helpdir)/$$hp"; \
$(INSTALL) $$p $(DESTDIR)$(helpdir)/$$hp; \
else :; fi \
done
install-docs:
$(MKDIR_P) $(DESTDIR)$(docdir)
@list='$(DOCFILES)'; for p in $$list; do \
if test -f $$p; then \
echo " $(DESTDIR)$(docdir)/$$p"; \
$(INSTALL) $$p $(DESTDIR)$(docdir)/$$p; \
else :; fi \
done
install install-strip: modules install-help install-docs
$(MKDIR_P) $(DESTDIR)$(modulesdir)
@if test -f $(FILENAME).so; then \
echo " $(DESTDIR)$(modulesdir)/$(FILENAME).so"; \
$(INSTALL) $(FILENAME).so $(DESTDIR)$(modulesdir)/$(FILENAME).so; \
else :; fi
uninstall-help:
@list='$(HELPFILES)'; for p in $$list; do \
hp=`echo $$p|sed s/.help$$//`; \
echo " rm -f $(DESTDIR)$(helpdir)/$$hp"; \
rm -f $(DESTDIR)$(helpdir)/$$hp; \
done
uninstall-docs:
@list='$(DOCFILES)'; for p in $$list; do \
echo " rm -f $(DESTDIR)$(docdir)/$$p"; \
rm -f $(DESTDIR)$(docdir)/$$p; \
done
uninstall: uninstall-help uninstall-docs
@if test -f $(DESTDIR)$(modulesdir)/$(FILENAME).so; then \
echo " rm -f $(DESTDIR)$(modulesdir)/$(FILENAME).so"; \
rm -f $(DESTDIR)$(modulesdir)/$(FILENAME).so; \
else :; fi
dist distdir:
@$(MKDIR_P) $(mdistdir)
@dists="$(DISTFILES)"; \
for file in $$dists; do \
ln $(srcdir)/$$file $(mdistdir) 2> /dev/null \
|| cp -p $(srcdir)/$$file $(mdistdir); \
done
.PHONY: all static modules clean install-help install-docs \
install install-strip uninstall-help uninstall-docs uninstall \
dist distdir
|