flex: fix build for nommu systems
The flex binary uses fork() so it breaks on !MMU builds. Since we usually don't require flex in the target and the common scenario is that we just want libfl in staging reverse the options so that BR2_PACKAGE_FLEX just builds and install libfl.a and change the LIBFL option to BR2_PACKAGE_FLEX_BINARY to install the binary in the target. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
e2af182225
commit
bd72a13a4c
@ -6,10 +6,10 @@ config BR2_PACKAGE_FLEX
|
||||
|
||||
http://www.gnu.org/software/flex/
|
||||
|
||||
config BR2_PACKAGE_FLEX_LIBFL
|
||||
bool "Install libfl.a under staging_dir/usr/lib"
|
||||
default y
|
||||
config BR2_PACKAGE_FLEX_BINARY
|
||||
bool "Install tool in the target"
|
||||
# needs fork()
|
||||
depends on BR2_USE_MMU
|
||||
depends on BR2_PACKAGE_FLEX
|
||||
help
|
||||
Install libfl.a under staging_dir/usr/lib for further development
|
||||
on a host machine.
|
||||
Install the flex binary tool in the target filesystem.
|
||||
|
@ -16,30 +16,20 @@ FLEX_DEPENDENCIES = \
|
||||
# we don't have a host-gettext/libintl
|
||||
HOST_FLEX_DEPENDENCIES =
|
||||
|
||||
ifeq ($(BR2_PACKAGE_FLEX_BINARY),y)
|
||||
# lex -> flex
|
||||
define FLEX_INSTALL_LEX
|
||||
cd $(TARGET_DIR)/usr/bin && ln -snf flex lex
|
||||
endef
|
||||
|
||||
define FLEX_UNINSTALL_LEX
|
||||
-rm $(TARGET_DIR)/usr/bin/lex
|
||||
endef
|
||||
|
||||
FLEX_POST_INSTALL_HOOKS += FLEX_INSTALL_LEX
|
||||
FLEX_POST_CLEAN_HOOKS += FLEX_UNINSTALL_LEX
|
||||
|
||||
# libfl installation
|
||||
ifeq ($(BR2_PACKAGE_FLEX_LIBFL),y)
|
||||
define FLEX_INSTALL_LIBFL
|
||||
install -D $(FLEX_DIR)/libfl.a $(STAGING_DIR)/usr/lib/libfl.a
|
||||
else
|
||||
|
||||
define FLEX_DISABLE_PROGRAM
|
||||
$(SED) 's/^bin_PROGRAMS.*//' $(@D)/Makefile.in
|
||||
endef
|
||||
FLEX_POST_PATCH_HOOKS += FLEX_DISABLE_PROGRAM
|
||||
|
||||
define FLEX_UNINSTALL_LIBFL
|
||||
-rm $(STAGING_DIR)/lib/libfl.a
|
||||
endef
|
||||
|
||||
FLEX_POST_INSTALL_HOOKS += FLEX_INSTALL_LIBFL
|
||||
FLEX_POST_CLEAN_HOOKS += FLEX_UNINSTALL_LIBFL
|
||||
endif
|
||||
|
||||
$(eval $(autotools-package))
|
||||
|
Loading…
Reference in New Issue
Block a user