This exists to fix a problem where the python swig API was generated multiple
times in parallel with "make -j3". This problems turns out to be due to the
multiple target rule that this commit removes. Such a rule doesn't mean "this
commands generate multiple files at once" but means "you can use this command
for each of these targets".
Fix this by including Makefile.gen instead of calling it in its own make
process. That way we don't need this "meta rule" which just calls another
Makefile but can use the "real" rules immediately.
Signed-off-by: Uli Schlachter <redacted>
C=
endif
-ifeq "@PYTHON@" ""
-JOBHACK=
-else
-JOBHACK=-j1
-endif
-
.PHONY: all man modules clean distclean install version_extra_recompile
.SECONDARY:
@$(MAKE) -C man $(C)
modules: $(LIBZNC)
- @$(MAKE) -C modules $(C) $(JOBHACK)
+ @$(MAKE) -C modules $(C)
clean:
rm -rf $(CLEAN)
$(INSTALL_DATA) $(srcdir)/include/znc/*.h $(DESTDIR)$(includedir)/znc
$(INSTALL_DATA) include/znc/zncconfig.h $(DESTDIR)$(includedir)/znc
$(INSTALL_DATA) znc.pc $(DESTDIR)$(PKGCONFIGDIR)
- @$(MAKE) -C modules $(JOBHACK) install DESTDIR=$(DESTDIR);
+ @$(MAKE) -C modules install DESTDIR=$(DESTDIR);
if test -n "$(LIBZNC)"; then \
test -d $(DESTDIR)$(LIBZNCDIR) || $(INSTALL) -d $(DESTDIR)$(LIBZNCDIR) || exit 1 ; \
$(INSTALL_PROGRAM) $(LIBZNC) $(DESTDIR)$(LIBZNCDIR) || exit 1 ; \
$(Q)$(CXX) $(MODFLAGS) $(LDFLAGS) $(MODLINK) -o $@ $< $(PY_LDFLAGS) $(PYDEPONMOD)
ifneq "$(SWIG)" ""
-modpython/znc_core.py modpython/_znc_core.cpp modpython/functions.cpp modpython/swigpyrun.h: modpython/codegen.pl modpython/functions.in Makefile
- @mkdir -p modpython .depend
- $(Q)$(MAKE) -f $(srcdir)/modpython/Makefile.gen $(C) SWIG="$(SWIG)" srcdir="$(srcdir)" PERL="$(PERL)" VERBOSE="$(VERBOSE)" SED="$(SED)"
+include $(srcdir)/modpython/Makefile.gen
endif
modpython.o: modpython/functions.cpp