From 580225af20b6c692da76eb43b20382a47b3ed170 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Thu, 7 Feb 2013 12:35:04 +0000 Subject: package: remove scripts listed in _CONFIG_SCRIPTS from target The -config scripts are useless on the target, since they are only needed for development, so we remove them automatically. Signed-off-by: Thomas Petazzoni Acked-by: Arnout Vandecappelle (Essensium/Mind) Acked-by: "Samuel Martin" Signed-off-by: Peter Korsgaard --- docs/manual/adding-packages-generic.txt | 7 ++++++- package/pkg-generic.mk | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt index 13d200dec..78df24ade 100644 --- a/docs/manual/adding-packages-generic.txt +++ b/docs/manual/adding-packages-generic.txt @@ -90,6 +90,9 @@ The argument to be given to +LIBFOO_CONFIG_SCRIPTS+ is the file name(s) of the shell script(s) needing fixing. All these names are relative to '$(STAGING_DIR)/usr/bin' and if needed multiple names can be given. +In addition, the scripts listed in +LIBFOO_CONFIG_SCRIPTS+ are removed +from +$(TARGET_DIR)/usr/bin+, since they are not needed on the target. + Example 1: Package divine installs shell script '$(STAGING_DIR)/usr/bin/divine-config'. @@ -288,7 +291,9 @@ information is (assuming the package name is +libfoo+) : * +LIBFOO_CONFIG_SCRIPTS+ lists the names of the files in '$(STAGING_DIR)/usr/bin' that need some special fixing to make them cross-compiling friendly. Multiple file names separated by space can - be given and all are relative to '$(STAGING_DIR)/usr/bin'. + be given and all are relative to '$(STAGING_DIR)/usr/bin'. The files + listed in +LIBFOO_CONFIG_SCRIPTS+ are also removed from + +$(TARGET_DIR)/usr/bin+ since they are not needed on the target. * +LIBFOO_DEVICES+ lists the device files to be created by Buildroot when using the static device table. The syntax to use is the diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 066b6c863..57b0fd08c 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -153,6 +153,11 @@ $(BUILD_DIR)/%/.stamp_target_installed: $($(PKG)_INSTALL_INIT_SYSV)) $($(PKG)_INSTALL_TARGET_CMDS) $(foreach hook,$($(PKG)_POST_INSTALL_TARGET_HOOKS),$(call $(hook))$(sep)) +ifeq ($(BR2_HAVE_DEVFILES),) + $(Q)if test -n "$($(PKG)_CONFIG_SCRIPTS)" ; then \ + $(RM) -f $(addprefix $(TARGET_DIR)/usr/bin/,$($(PKG)_CONFIG_SCRIPTS)) ; \ + fi +endif $(Q)touch $@ # Clean package -- cgit v1.2.3