![Vivien Didelot](/assets/img/avatar_default.png)
With this new version, the generation of atom-glue fails with the following error: Making all in src/lib make[3]: Entering directory '/mnt/data/src/sfl/zodiac/buildroot/output/build/lldpd-0.9.4/src/lib' GEN atom-glue.c arm-buildroot-linux-uclibcgnueabi-cpp.br_real: fatal error: too many input files compilation terminated. arm-buildroot-linux-uclibcgnueabi-cpp.br_real: fatal error: too many input files compilation terminated. make[3]: *** [Makefile:899: atom-glue.c] Error 1 There is an upstream patch pushed after 0.9.4 which fixes the corresponding Makefile.am, included in this commit. Note that since the provided tarball ships the related Makefile.in file, we need to tell Buildroot to autoreconfigure the package. Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> [Thomas: add comment about AUTORECONF=YES in .mk file.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
44 lines
1.8 KiB
Diff
44 lines
1.8 KiB
Diff
From 106aa50d4e5b336f7dd2d5cf4d882e692d205e91 Mon Sep 17 00:00:00 2001
|
|
From: Vincent Bernat <vincent@bernat.im>
|
|
Date: Sat, 18 Jun 2016 22:18:41 +0200
|
|
Subject: [PATCH] build: make generation of atom-glue compatible with older gcc
|
|
versions
|
|
|
|
With old versions, cpp doesn't accept several files as input. See #186.
|
|
|
|
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
|
|
---
|
|
src/lib/Makefile.am | 8 +++++---
|
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
|
|
index 250e32a..2a5cdb3 100644
|
|
--- a/src/lib/Makefile.am
|
|
+++ b/src/lib/Makefile.am
|
|
@@ -20,8 +20,9 @@ nodist_liblldpctl_la_SOURCES = atom-glue.c
|
|
liblldpctl_la_LIBADD = $(top_builddir)/src/libcommon-daemon-lib.la libfixedpoint.la
|
|
|
|
atom-glue.c: $(ATOM_FILES) Makefile
|
|
- $(AM_V_GEN)($(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \
|
|
+ $(AM_V_GEN)(for f in $(ATOM_FILES:%=$(srcdir)/%); do \
|
|
+ $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \
|
|
$(SED) -n 's+^void init_atom_builder_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \
|
|
sort | \
|
|
$(AWK) '{ atoms[$$2] = 1 } \
|
|
@@ -30,8 +31,9 @@ atom-glue.c: $(ATOM_FILES) Makefile
|
|
print " static int init = 0; if (init) return; init++;"; \
|
|
for (atom in atoms) { print " init_atom_builder_"atom"();" } \
|
|
print "}"; }' && \
|
|
+ for f in $(ATOM_FILES:%=$(srcdir)/%); do \
|
|
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \
|
|
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \
|
|
$(SED) -n 's+^void init_atom_map_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \
|
|
sort -n | \
|
|
$(AWK) '{ atoms[$$2] = 1 } \
|
|
--
|
|
2.9.0
|
|
|