You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/mail-filter/mailfilter/files/0.8.4-fix-parallel-build.patch

114 lines
4.4 KiB

https://github.com/nondeterministic/mailfilter/commit/4b3991b1334d83d5f209723ab3ec58d168baff2d
https://bugs.gentoo.org/649514
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -31,15 +31,11 @@ bin_PROGRAMS = mailfilter
rcfile.cc: rcfile.ll rcparser.hh
$(LEX) $(AM_LFLAGS) -Prc -o$@ $<
-# The final `touch' is necessary to be able to invoke flex/bison more
-# than once and to not confuse the ../ylwrap script.
-rcparser.hh: y.tab.c
-y.tab.c: rcfile.yy
- $(YACC) -p rc $(YFLAGS) -o$@ $<; \
- mv -f y.tab.c rcparser.cc; \
- mv -f y.tab.h rcparser.hh; \
- $(CXXCOMPILE) -c rcparser.cc; \
- touch y.tab.c
+rcparser.hh: rcparser.cc
+rcparser.cc: rcfile.yy
+ $(YACC) $(YFLAGS) -b rc -p rc $<; \
+ mv rc.tab.c rcparser.cc; \
+ mv rc.tab.h rcparser.hh
# Almost the same as above, but this time for the RFC 822 parser:
rfc822.cc: rfc822.ll rfc822parser.hh
@@ -47,58 +43,41 @@ rfc822.cc: rfc822.ll rfc822parser.hh
rfc822parser.hh: rfc822parser.cc
rfc822parser.cc: rfc822.yy
- $(YACC) $(YFLAGS) -p rfc -o$@ $<; \
- $(CXXCOMPILE) -c rfc822parser.cc; \
- touch y.tab.c
+ $(YACC) $(YFLAGS) -b rfc -p rfc $<; \
+ mv rfc.tab.c rfc822parser.cc; \
+ mv rfc.tab.h rfc822parser.hh
-# This thing is a workaround to avoid compile errors.
-# We always re-generate the source from the flex/bison input, so it
-# always matches the installed versions and does not lead to errors.
-CLEANFILES = rcfile.cc rcparser.hh rcparser.cc y.tab.c ylwrap \
- rfc822parser.output rfc822parser.cc rfc822parser.hh \
- rfc822.cc y.output
-
-nodist_mailfilter_SOURCES = rcfile.cc rcparser.hh y.tab.c rfc822.cc
-
-nodist_mailfilter_OBJECTS = y.tab.$(OBJEXT)
-
-# Looks like automake still wants to distribute rcfile.cc, even if it
-# is in nodist_*_sources.
-dist-hook:
- rm -f $(distdir)/rcfile.cc \
- $(distdir)/rfc822parser.cc \
- $(distdir)/rfcparser.cc
+CLEANFILES = *.output
# If this gets updated, remember to update the doxygen.in config file!
-mailfilter_SOURCES = md5c.c md5.h \
- defines.hh \
- rcfile.ll rcfile.hh \
- rfc822.ll \
- mailfilter.hh mailfilter.cc \
- header.hh header.cc \
- weeder.hh weeder.cc \
- preferences.hh preferences.cc \
- feedback.hh feedback.cc \
- filter.hh filter.cc \
- score.hh score.cc \
- account.hh account.cc \
- protocol.hh protocol.cc \
- connection.hh \
- socket.hh socket.cc \
- pop3.hh pop3.cc \
- apop.hh apop.cc \
+mailfilter_SOURCES = md5c.c md5.h \
+ defines.hh \
+ rcfile.ll rcfile.hh \
+ rcparser.hh rcparser.cc \
+ rfc822.ll rfc822parser.hh rfc822parser.cc \
+ mailfilter.hh mailfilter.cc \
+ header.hh header.cc \
+ weeder.hh weeder.cc \
+ preferences.hh preferences.cc \
+ feedback.hh feedback.cc \
+ filter.hh filter.cc \
+ score.hh score.cc \
+ account.hh account.cc \
+ protocol.hh protocol.cc \
+ connection.hh \
+ socket.hh socket.cc \
+ pop3.hh pop3.cc \
+ apop.hh apop.cc \
imap.hh imap.cc
if !GETOPT
mailfilter_SOURCES += getopt.c getopt1.c getopt.h
endif
-mailfilter_LDADD = rcparser.o rfc822parser.o
-
-INCLUDES = -I$(includedir) \
- -I$(srcdir) -I$(top_srcdir)/include -I$(top_srcdir) \
- -DLOCALEDIR=\"$(datadir)/locale\" \
- -I$(top_srcdir)/intl \
- -I$(top_builddir) -I$(top_builddir)/include -I.
+AM_CPPFLAGS = -I$(includedir) \
+ -I$(srcdir) -I$(top_srcdir)/include -I$(top_srcdir) \
+ -DLOCALEDIR=\"$(datadir)/locale\" \
+ -I$(top_srcdir)/intl \
+ -I$(top_builddir) -I$(top_builddir)/include -I.
LIBS = @LEXLIB@ @LIBS@