buildroot/package/flex/0003-build-make-it-possible-to-disable-the-build-of-the-d.patch
Thomas Petazzoni 131995ff5a flex: rework patches to avoid host/target difference
Currently, the target and host flex packages do not behave the same in
terms of patching: the target variant has a patch hook that disables
building the programs (because they are not needed, and do not build
on no-MMU platforms). However, this hook is obviously not executed for
host-flex, because we really want the host flex binary to be built.

In preparation for the introduction of out-of-tree package build, it
is important that we don't do different things in the patch hooks for
the target and host variant of a given package, because the source
tree will be shared between the target and host builds.

To solve this, we introduce a --disable-program configure option,
through a patch to the flex configure.ac and Makefile.am. This patch
makes the current 0001-flex-disable-documentation.patch no longer
needed.

Furthermore, building the documentation is a PITA: flex.1 depends on
configure.ac and a few other files generated during the build. Touching
flex.1 does not work, because automake will forcibly remove the files
when its prerequisites are too old, so pre-requisites of flex.1 will
always be more recent than flex.1. So, we add a patch that adds a
--disable-doc configure option.

Fixes:
    http://autobuild.buildroot.org/results/f70/f70b39632535bb9692d0a032166b2f4104532967/
    http://autobuild.buildroot.org/results/525/52567afdfe7992b3518de0e01227ba14aa300f21/
    [...]

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[yann.morin.1998@free.fr:
  - rebase on-top of master,
  - add patch to not build the documentation, because simply touching
    flex.1 is no longer enough.
  - keep install in target/, for shared builds
]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Adrian Perez de Castro <aperez@igalia.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-10-11 23:51:47 +02:00

59 lines
1.6 KiB
Diff

From b89b8475a5b2f9444c32f7d254b35968da3c8a23 Mon Sep 17 00:00:00 2001
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
Date: Fri, 29 Sep 2017 18:03:51 +0200
Subject: [PATCH] build: make it possible to disable the build of the
documentation
When targetting embedded evices, the documentation is not needed.
Building the documentation default to whether the program is built.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Makefile.am | 8 +++++++-
configure.ac | 6 ++++++
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/Makefile.am b/Makefile.am
index fce30b2..ee75b64 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -41,9 +41,15 @@ EXTRA_DIST = \
.indent.pro \
autogen.sh
+MAYBE_SUBDIRS =
+
+if ENABLE_DOC
+MAYBE_SUBDIRS += doc
+endif
+
SUBDIRS = \
src \
- doc \
+ $(MAYBE_SUBDIRS) \
examples \
po \
tests \
diff --git a/configure.ac b/configure.ac
index c54e98f..b3ae450 100644
--- a/configure.ac
+++ b/configure.ac
@@ -80,6 +80,12 @@ AC_ARG_ENABLE([program],
[], [enable_program=yes])
AM_CONDITIONAL([ENABLE_PROGRAM], [test "x$enable_program" = xyes])
+AC_ARG_ENABLE([doc],
+ [AS_HELP_STRING([--disable-doc],
+ [do not build the documentation])],
+ [], [enable_doc=${enable_program}])
+AM_CONDITIONAL([ENABLE_DOC], [test "x$enable_doc" = xyes -a "x$enable_program" = xyes])
+
# --disable-bootstrap is intended only to workaround problems with bootstrap
# (e.g. when cross-compiling flex or when bootstrapping has bugs).
# Ideally we should be able to bootstrap even when cross-compiling.
--
2.11.0