Files
znc/modules/Makefile.in
psychon 6169df3f7a Rewrite Makefile.in, remove -s from no-debug
CXXFLAGS and auto-generate .depend if GCC is used.


git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@829 726aef4b-f618-498e-8847-2d620e286838
2007-08-19 15:27:16 +00:00

89 lines
1.8 KiB
Makefile

CXX = @CXX@
CXXFLAGS = @CXXFLAGS@
LDFLAGS = @LDFLAGS@
INCLUDES = @INCLUDES@ -I..
LIBS = @LIBS@
PERL = @PERL@
MODDIR = @MODDIR@
prefix = @prefix@
ifneq "$(PERL)" ""
PERLCC = -DHAVE_PERL `$(PERL) -MExtUtils::Embed -e perl_inc`
PERLLD = `$(PERL) -MExtUtils::Embed -e perl_inc -e ldopts`
endif
ifeq "@NOSSL@" "1"
FILES = $(foreach file, $(wildcard *.cpp), \
$(if $(shell grep REQUIRESSL $(file)), \
, \
$(basename $(file)) \
))
else
FILES = $(basename $(wildcard *.cpp))
endif
SRCS = $(wildcard ../*.cpp) $(addsuffix .cpp, $(FILES))
OBJS = $(addsuffix .o, $(FILES))
TARGETS = $(addsuffix .so, $(FILES))
INSTALL_TARGS = $(foreach file, $(TARGETS), install_$(file))
CLEAN = *.so *.o
.PHONY: all clean install depend $(INSTALL_TARGS)
all: $(OBJS) $(TARGETS)
.depend:
$(CXX) -MM $(CXXFLAGS) $(SRCS) $(INCLUDES) $(PERLCC) >.depend
depend: .depend
install: all create_install_dir install_metadirs $(INSTALL_TARGS)
@echo -n ""
create_install_dir:
mkdir -p $(DESTDIR)$(MODDIR)/znc
rm -rf $(DESTDIR)$(MODDIR)/znc/*.so
install_metadirs:
for a in *; do \
if [ -d $$a ] && [ -f $${a}.so ]; then \
cp -Rp $$a $(DESTDIR)$(MODDIR)/znc; \
fi \
done
install_%: %.so
install -m 0755 $(subst install_,,$@) $(DESTDIR)$(MODDIR)/znc
clean:
rm -rf $(CLEAN)
%.so: %.o
$(CXX) $(LDFLAGS) -shared -o $@ $<
.cpp.o:
$(CXX) $(CXXFLAGS) $(INCLUDES) -c -o $@ $<
ifneq "$(PERL)" ""
modperl.so: modperl.o
$(CXX) $(LDFLAGS) -shared -o $@ $< $(PERLLD)
modperl.o: modperl.cpp
$(CXX) $(CXXFLAGS) $(INCLUDES) -c -o $@ $< $(PERLCC)
install_modperl.so:
install -m 0755 modperl.so $(DESTDIR)$(MODDIR)/znc
for i in *.pm; do \
install -m 0755 $$i $(DESTDIR)$(MODDIR)/znc; \
done
else
modperl.so:
@echo -n ""
modperl.o:
@echo -n ""
install_modperl.so:
@echo -n ""
endif
-include .depend