* [Buildroot] [PATCH 00/10] Misc shared only build fixes
@ 2014-12-27 21:58 Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 01/10] package/lm-sensors: disable static library for shared-only build Romain Naour
` (9 more replies)
0 siblings, 10 replies; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
This series aims to disable static libraries and enable shared
libraries when it's possible for shared only build.
Romain Naour (10):
package/lm-sensors: disable static library for shared-only build
package/libnspr: disable static library for shared only build
package/libsvgtiny: enable shared library build
package/keyutils: disable static library for shared only build
package/lockdev: handle static/shared only build
package/libxmlrpc: fix shared libraries build for uClibc
package/libxmlrpc: handle static/shared only install
package/dvb-apps: rename patches to follow the new name convention
package/dvb-app: handle static/shared only build
package/dvb-app: remove tests
package/dvb-apps/0001-Fix-generate-keynames.patch | 30 +++++++++++++++++++
.../dvb-apps/0002-Fix-compiler-warning-flags.patch | 25 ++++++++++++++++
.../0003-handle-static-shared-only-build.patch | 35 ++++++++++++++++++++++
package/dvb-apps/0004-Makefile-remove-test.patch | 27 +++++++++++++++++
.../dvb-apps-0001-Fix-generate-keynames.patch | 30 -------------------
.../dvb-apps-0002-Fix-compiler-warning-flags.patch | 25 ----------------
.../dvb-apps-0003-support-static-only-build.patch | 20 -------------
package/dvb-apps/dvb-apps.mk | 6 +++-
package/keyutils/keyutils.mk | 4 +++
package/libnspr/libnspr.mk | 6 ++++
package/libsvgtiny/libsvgtiny.mk | 16 ++++++++--
....in-fix-shared-libraries-build-for-uClibc.patch | 27 +++++++++++++++++
package/libxmlrpc/libxmlrpc.mk | 11 +++++++
package/lm-sensors/lm-sensors.mk | 6 ++++
package/lockdev/lockdev.mk | 35 ++++++++++++++--------
15 files changed, 211 insertions(+), 92 deletions(-)
create mode 100644 package/dvb-apps/0001-Fix-generate-keynames.patch
create mode 100644 package/dvb-apps/0002-Fix-compiler-warning-flags.patch
create mode 100644 package/dvb-apps/0003-handle-static-shared-only-build.patch
create mode 100644 package/dvb-apps/0004-Makefile-remove-test.patch
delete mode 100644 package/dvb-apps/dvb-apps-0001-Fix-generate-keynames.patch
delete mode 100644 package/dvb-apps/dvb-apps-0002-Fix-compiler-warning-flags.patch
delete mode 100644 package/dvb-apps/dvb-apps-0003-support-static-only-build.patch
create mode 100644 package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch
--
1.9.3
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 01/10] package/lm-sensors: disable static library for shared-only build
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 02/10] package/libnspr: disable static library for shared only build Romain Naour
` (8 subsequent siblings)
9 siblings, 0 replies; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/lm-sensors/lm-sensors.mk | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/package/lm-sensors/lm-sensors.mk b/package/lm-sensors/lm-sensors.mk
index a79977f..c26f919 100644
--- a/package/lm-sensors/lm-sensors.mk
+++ b/package/lm-sensors/lm-sensors.mk
@@ -31,6 +31,12 @@ else
LM_SENSORS_MAKE_OPTS += BUILD_SHARED_LIB=1
endif
+ifeq ($(BR2_SHARED_LIBS),y)
+LM_SENSORS_MAKE_OPTS += BUILD_STATIC_LIB=0
+else
+LM_SENSORS_MAKE_OPTS += BUILD_STATIC_LIB=1
+endif
+
define LM_SENSORS_BUILD_CMDS
$(MAKE) $(TARGET_CONFIGURE_OPTS) $(LM_SENSORS_MAKE_OPTS) -C $(@D)
endef
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 02/10] package/libnspr: disable static library for shared only build
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 01/10] package/lm-sensors: disable static library for shared-only build Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-01 16:48 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 03/10] package/libsvgtiny: enable shared library build Romain Naour
` (7 subsequent siblings)
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/libnspr/libnspr.mk | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/package/libnspr/libnspr.mk b/package/libnspr/libnspr.mk
index 4beff68..702978c 100644
--- a/package/libnspr/libnspr.mk
+++ b/package/libnspr/libnspr.mk
@@ -27,6 +27,12 @@ LIBNSPR_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) SHARED_LIBRARY= install
LIBNSPR_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) SHARED_LIBRARY= install
endif
+ifeq ($(BR2_SHARED_LIBS),y)
+LIBNSPR_MAKE_OPTS = LIBRARY=
+LIBNSPR_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) LIBRARY= install
+LIBNSPR_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LIBRARY= install
+endif
+
ifeq ($(BR2_arm),y)
ifeq ($(BR2_ARM_CPU_HAS_THUMB2),y)
LIBNSPR_CONF_OPTS += --enable-thumb2
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 03/10] package/libsvgtiny: enable shared library build
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 01/10] package/lm-sensors: disable static library for shared-only build Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 02/10] package/libnspr: disable static library for shared only build Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 11:38 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 04/10] package/keyutils: disable static library for shared only build Romain Naour
` (6 subsequent siblings)
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/libsvgtiny/libsvgtiny.mk | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/package/libsvgtiny/libsvgtiny.mk b/package/libsvgtiny/libsvgtiny.mk
index a2d494e..6cb666f 100644
--- a/package/libsvgtiny/libsvgtiny.mk
+++ b/package/libsvgtiny/libsvgtiny.mk
@@ -11,18 +11,28 @@ LIBSVGTINY_DEPENDENCIES = libxml2 host-gperf host-pkgconf
LIBSVGTINY_LICENSE = MIT
LIBSVGTINY_LICENSE_FILES = README
+# Prefer shared libraries if available
+ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y)
+LIBSVGTINY_COMPONENT_TYPE = lib-shared
+else
+LIBSVGTINY_COMPONENT_TYPE = lib-static
+endif
+
define LIBSVGTINY_BUILD_CMDS
- $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=/usr
+ $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=/usr \
+ COMPONENT_TYPE=$(LIBSVGTINY_COMPONENT_TYPE)
endef
define LIBSVGTINY_INSTALL_STAGING_CMDS
$(TARGET_CONFIGURE_OPTS) \
- $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(STAGING_DIR) install
+ $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(STAGING_DIR) \
+ COMPONENT_TYPE=$(LIBSVGTINY_COMPONENT_TYPE) install
endef
define LIBSVGTINY_INSTALL_TARGET_CMDS
$(TARGET_CONFIGURE_OPTS) \
- $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(TARGET_DIR) install
+ $(MAKE) -C $(@D) PREFIX=/usr DESTDIR=$(TARGET_DIR) \
+ COMPONENT_TYPE=$(LIBSVGTINY_COMPONENT_TYPE) install
endef
$(eval $(generic-package))
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 04/10] package/keyutils: disable static library for shared only build
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (2 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 03/10] package/libsvgtiny: enable shared library build Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 11:39 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared " Romain Naour
` (5 subsequent siblings)
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/keyutils/keyutils.mk | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/package/keyutils/keyutils.mk b/package/keyutils/keyutils.mk
index 2038c0d..36588e6 100644
--- a/package/keyutils/keyutils.mk
+++ b/package/keyutils/keyutils.mk
@@ -23,6 +23,10 @@ ifeq ($(BR2_STATIC_LIBS),y)
KEYUTILS_MAKE_PARAMS += NO_SOLIB=1
endif
+ifeq ($(BR2_SHARED_LIBS),y)
+KEYUTILS_MAKE_PARAMS += NO_ARLIB=1
+endif
+
define KEYUTILS_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) $(MAKE) $(KEYUTILS_MAKE_PARAMS) -C $(@D)
endef
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared only build
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (3 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 04/10] package/keyutils: disable static library for shared only build Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2014-12-28 6:07 ` Baruch Siach
2015-01-02 11:43 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 06/10] package/libxmlrpc: fix shared libraries build for uClibc Romain Naour
` (4 subsequent siblings)
9 siblings, 2 replies; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/lockdev/lockdev.mk | 35 ++++++++++++++++++++++-------------
1 file changed, 22 insertions(+), 13 deletions(-)
diff --git a/package/lockdev/lockdev.mk b/package/lockdev/lockdev.mk
index 59561ba..e789a79 100644
--- a/package/lockdev/lockdev.mk
+++ b/package/lockdev/lockdev.mk
@@ -13,30 +13,39 @@ LOCKDEV_LICENSE_FILES = LICENSE
LOCKDEV_INSTALL_STAGING = YES
ifeq ($(BR2_STATIC_LIBS),y)
-define LOCKDEV_BUILD_CMDS
- $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) static
+LOCKDEV_BUILD_ARGS = static
+LOCKDEV_INSTALL_ARGS = install_dev
+else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
+LOCKDEV_BUILD_ARGS = static shared
+LOCKDEV_INSTALL_ARGS = install_dev install_run
+else # BR2_SHARED_LIBS
+LOCKDEV_BUILD_ARGS = shared
+LOCKDEV_INSTALL_ARGS = install_run
+endif
+
+ifeq ($(BR2_SHARED_STATIC_LIBS)$(BR2_SHARED_LIBS),y)
+define LOCKDEV_CREATE_LINKS_STAGING
+ ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so
+ ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so.1
endef
-define LOCKDEV_INSTALL_STAGING_CMDS
- $(MAKE1) basedir=$(STAGING_DIR)/usr -C $(@D) install_dev
+define LOCKDEV_CREATE_LINKS_TARGET
+ ln -sf liblockdev.$(LOCKDEV_VERSION).so $(TARGET_DIR)/usr/lib/liblockdev.so.1
endef
-
-else # BR2_STATIC_LIBS
+endif
define LOCKDEV_BUILD_CMDS
- $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) static shared
+ $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(LOCKDEV_BUILD_ARGS)
endef
define LOCKDEV_INSTALL_STAGING_CMDS
- $(MAKE1) basedir=$(STAGING_DIR)/usr -C $(@D) install_dev install_run
- ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so
- ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so.1
+ $(MAKE1) basedir=$(STAGING_DIR)/usr -C $(@D) $(LOCKDEV_INSTALL_ARGS)
+ $(LOCKDEV_CREATE_LINKS_STAGING)
endef
define LOCKDEV_INSTALL_TARGET_CMDS
- $(MAKE1) basedir=$(TARGET_DIR)/usr -C $(@D) install_run
- ln -sf liblockdev.$(LOCKDEV_VERSION).so $(TARGET_DIR)/usr/lib/liblockdev.so.1
+ $(MAKE1) basedir=$(TARGET_DIR)/usr -C $(@D) $(LOCKDEV_INSTALL_ARGS)
+ $(LOCKDEV_CREATE_LINKS_TARGET)
endef
-endif # BR2_STATIC_LIBS
$(eval $(generic-package))
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 06/10] package/libxmlrpc: fix shared libraries build for uClibc
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (4 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared " Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 11:48 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install Romain Naour
` (3 subsequent siblings)
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
libxmlrpc is able to build shared libraries only for (e)glibc system
since the regexp in config.mk.in is based on "linux-gnu".
Change this regexp to match "linux-uclibc".
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
....in-fix-shared-libraries-build-for-uClibc.patch | 27 ++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch
diff --git a/package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch b/package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch
new file mode 100644
index 0000000..5970df5
--- /dev/null
+++ b/package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch
@@ -0,0 +1,27 @@
+From 5d68179a54b0a34d989722dcbe3b6eb962feb27d Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Tue, 23 Dec 2014 16:04:18 +0100
+Subject: [PATCH] config.mk.in: fix shared libraries build for uClibc
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ config.mk.in | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/config.mk.in b/config.mk.in
+index c5d4160..45461cf 100644
+--- a/config.mk.in
++++ b/config.mk.in
+@@ -166,7 +166,8 @@ shliblefn = $(1:%=%.shlibledummy)
+ # HOST_OS is usually has a version number suffix, e.g. "aix5.3.0.0", so
+ # we compare based on prefix.
+
+-ifeq ($(patsubst linux-gnu%,linux-gnu,$(HOST_OS)),linux-gnu)
++# linux-uclibc is also a linux
++ifeq ($(patsubst linux-%,linux-,$(HOST_OS)),linux-)
+ # Assume linker is GNU Compiler (gcc)
+ SHARED_LIB_TYPE = unix
+ MUST_BUILD_SHLIB = Y
+--
+1.9.3
+
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (5 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 06/10] package/libxmlrpc: fix shared libraries build for uClibc Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 12:18 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 08/10] package/dvb-apps: rename patches to follow the new name convention Romain Naour
` (2 subsequent siblings)
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
It's not possible to disable/enable static and shared libraries.
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
To be tested with static only build.
(probably brocken since shared libraries will be build)
---
package/libxmlrpc/libxmlrpc.mk | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk
index c3788d6..5796ae6 100644
--- a/package/libxmlrpc/libxmlrpc.mk
+++ b/package/libxmlrpc/libxmlrpc.mk
@@ -35,4 +35,15 @@ LIBXMLRPC_MAKE_ENV = \
CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)"
+
+ifeq ($(BR2_SHARED_LIBS),y)
+LIBXMLRPC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) \
+ install-shared-libraries install-headers install-bin
+endif
+
+ifeq ($(BR2_STATIC_LIBS),y)
+LIBXMLRPC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) \
+ install-static-libraries install-headers install-bin
+endif
+
$(eval $(autotools-package))
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 08/10] package/dvb-apps: rename patches to follow the new name convention
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (6 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 12:21 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 10/10] package/dvb-app: remove tests Romain Naour
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/dvb-apps/0001-Fix-generate-keynames.patch | 30 ++++++++++++++++++++++
.../dvb-apps/0002-Fix-compiler-warning-flags.patch | 25 ++++++++++++++++++
.../dvb-apps/0003-support-static-only-build.patch | 20 +++++++++++++++
.../dvb-apps-0001-Fix-generate-keynames.patch | 30 ----------------------
.../dvb-apps-0002-Fix-compiler-warning-flags.patch | 25 ------------------
.../dvb-apps-0003-support-static-only-build.patch | 20 ---------------
6 files changed, 75 insertions(+), 75 deletions(-)
create mode 100644 package/dvb-apps/0001-Fix-generate-keynames.patch
create mode 100644 package/dvb-apps/0002-Fix-compiler-warning-flags.patch
create mode 100644 package/dvb-apps/0003-support-static-only-build.patch
delete mode 100644 package/dvb-apps/dvb-apps-0001-Fix-generate-keynames.patch
delete mode 100644 package/dvb-apps/dvb-apps-0002-Fix-compiler-warning-flags.patch
delete mode 100644 package/dvb-apps/dvb-apps-0003-support-static-only-build.patch
diff --git a/package/dvb-apps/0001-Fix-generate-keynames.patch b/package/dvb-apps/0001-Fix-generate-keynames.patch
new file mode 100644
index 0000000..498607d
--- /dev/null
+++ b/package/dvb-apps/0001-Fix-generate-keynames.patch
@@ -0,0 +1,30 @@
+Fix generate-keynames.sh script for cross-compilation
+
+generate-keynames.sh reads /usr/include/linux to find the keyname
+symbols. However, when cross-compiling, the include path points
+somewhere else. Allow the user to pass CROSS_ROOT to point to the
+root of the cross-compilation environment.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+diff -rup dvb-apps-83c746462ccb.orig/util/av7110_loadkeys/generate-keynames.sh dvb-apps-83c746462ccb/util/av7110_loadkeys/generate-keynames.sh
+--- dvb-apps-83c746462ccb.orig/util/av7110_loadkeys/generate-keynames.sh 2012-12-06 10:38:07.000000000 +0100
++++ dvb-apps-83c746462ccb/util/av7110_loadkeys/generate-keynames.sh 2013-08-29 21:47:09.717991439 +0200
+@@ -18,7 +18,7 @@ echo "};" >> $1
+ echo >> $1
+ echo >> $1
+ echo "static struct input_key_name key_name [] = {" >> $1
+-for x in $(cat /usr/include/linux/input.h input_fake.h | \
++for x in $(cat ${CROSS_ROOT}/usr/include/linux/input.h input_fake.h | \
+ egrep "#define[ \t]+KEY_" | grep -v KEY_MAX | \
+ cut -f 1 | cut -f 2 -d " " | sort -u) ; do
+ echo " { \"$(echo $x | cut -b 5-)\", $x }," >> $1
+@@ -26,7 +26,7 @@ done
+ echo "};" >> $1
+ echo >> $1
+ echo "static struct input_key_name btn_name [] = {" >> $1
+-for x in $(cat /usr/include/linux/input.h input_fake.h | \
++for x in $(cat ${CROSS_ROOT}/usr/include/linux/input.h input_fake.h | \
+ egrep "#define[ \t]+BTN_" | \
+ cut -f 1 | cut -f 2 -d " " | sort -u) ; do
+ echo " { \"$(echo $x | cut -b 5-)\", $x }," >> $1
diff --git a/package/dvb-apps/0002-Fix-compiler-warning-flags.patch b/package/dvb-apps/0002-Fix-compiler-warning-flags.patch
new file mode 100644
index 0000000..9da0408
--- /dev/null
+++ b/package/dvb-apps/0002-Fix-compiler-warning-flags.patch
@@ -0,0 +1,25 @@
+When building for avr32, the build fails as follows.
+
+ cc1: error: unrecognized command line option "-Wno-packed-bitfield-compat"
+
+An example of an autobuild failure arising from this is the following.
+
+ http://autobuild.buildroot.net/results/92e/92e472004812a3616f62d766a9ea07a997a66e89/
+
+Clearly, not all toolchains provide a gcc that understands
+the -Wno-packed-bitfield-compat flag; remove usage of this flag.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/util/scan/Makefile b/util/scan/Makefile
+--- a/util/scan/Makefile 2013-11-24 17:04:10.000000000 +0000
++++ b/util/scan/Makefile 2013-12-13 09:37:11.967975173 +0000
+@@ -14,7 +14,7 @@ inst_bin = $(binaries)
+
+ removing = atsc_psip_section.c atsc_psip_section.h
+
+-CPPFLAGS += -Wno-packed-bitfield-compat -D__KERNEL_STRICT_NAMES
++CPPFLAGS += -D__KERNEL_STRICT_NAMES
+
+ .PHONY: all
+
diff --git a/package/dvb-apps/0003-support-static-only-build.patch b/package/dvb-apps/0003-support-static-only-build.patch
new file mode 100644
index 0000000..236f1a3
--- /dev/null
+++ b/package/dvb-apps/0003-support-static-only-build.patch
@@ -0,0 +1,20 @@
+Make.rules: don't build .so libraries when static=1
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Make.rules
+===================================================================
+--- a/Make.rules
++++ b/Make.rules
+@@ -9,7 +9,11 @@
+ CFLAGS_LIB ?= -fPIC
+ CFLAGS += $(CFLAGS_LIB)
+
++ifeq ($(static),1)
++libraries = $(lib_name).a
++else
+ libraries = $(lib_name).so $(lib_name).a
++endif
+
+ .PHONY: library
+
diff --git a/package/dvb-apps/dvb-apps-0001-Fix-generate-keynames.patch b/package/dvb-apps/dvb-apps-0001-Fix-generate-keynames.patch
deleted file mode 100644
index 498607d..0000000
--- a/package/dvb-apps/dvb-apps-0001-Fix-generate-keynames.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Fix generate-keynames.sh script for cross-compilation
-
-generate-keynames.sh reads /usr/include/linux to find the keyname
-symbols. However, when cross-compiling, the include path points
-somewhere else. Allow the user to pass CROSS_ROOT to point to the
-root of the cross-compilation environment.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
-diff -rup dvb-apps-83c746462ccb.orig/util/av7110_loadkeys/generate-keynames.sh dvb-apps-83c746462ccb/util/av7110_loadkeys/generate-keynames.sh
---- dvb-apps-83c746462ccb.orig/util/av7110_loadkeys/generate-keynames.sh 2012-12-06 10:38:07.000000000 +0100
-+++ dvb-apps-83c746462ccb/util/av7110_loadkeys/generate-keynames.sh 2013-08-29 21:47:09.717991439 +0200
-@@ -18,7 +18,7 @@ echo "};" >> $1
- echo >> $1
- echo >> $1
- echo "static struct input_key_name key_name [] = {" >> $1
--for x in $(cat /usr/include/linux/input.h input_fake.h | \
-+for x in $(cat ${CROSS_ROOT}/usr/include/linux/input.h input_fake.h | \
- egrep "#define[ \t]+KEY_" | grep -v KEY_MAX | \
- cut -f 1 | cut -f 2 -d " " | sort -u) ; do
- echo " { \"$(echo $x | cut -b 5-)\", $x }," >> $1
-@@ -26,7 +26,7 @@ done
- echo "};" >> $1
- echo >> $1
- echo "static struct input_key_name btn_name [] = {" >> $1
--for x in $(cat /usr/include/linux/input.h input_fake.h | \
-+for x in $(cat ${CROSS_ROOT}/usr/include/linux/input.h input_fake.h | \
- egrep "#define[ \t]+BTN_" | \
- cut -f 1 | cut -f 2 -d " " | sort -u) ; do
- echo " { \"$(echo $x | cut -b 5-)\", $x }," >> $1
diff --git a/package/dvb-apps/dvb-apps-0002-Fix-compiler-warning-flags.patch b/package/dvb-apps/dvb-apps-0002-Fix-compiler-warning-flags.patch
deleted file mode 100644
index 9da0408..0000000
--- a/package/dvb-apps/dvb-apps-0002-Fix-compiler-warning-flags.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-When building for avr32, the build fails as follows.
-
- cc1: error: unrecognized command line option "-Wno-packed-bitfield-compat"
-
-An example of an autobuild failure arising from this is the following.
-
- http://autobuild.buildroot.net/results/92e/92e472004812a3616f62d766a9ea07a997a66e89/
-
-Clearly, not all toolchains provide a gcc that understands
-the -Wno-packed-bitfield-compat flag; remove usage of this flag.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/util/scan/Makefile b/util/scan/Makefile
---- a/util/scan/Makefile 2013-11-24 17:04:10.000000000 +0000
-+++ b/util/scan/Makefile 2013-12-13 09:37:11.967975173 +0000
-@@ -14,7 +14,7 @@ inst_bin = $(binaries)
-
- removing = atsc_psip_section.c atsc_psip_section.h
-
--CPPFLAGS += -Wno-packed-bitfield-compat -D__KERNEL_STRICT_NAMES
-+CPPFLAGS += -D__KERNEL_STRICT_NAMES
-
- .PHONY: all
-
diff --git a/package/dvb-apps/dvb-apps-0003-support-static-only-build.patch b/package/dvb-apps/dvb-apps-0003-support-static-only-build.patch
deleted file mode 100644
index 236f1a3..0000000
--- a/package/dvb-apps/dvb-apps-0003-support-static-only-build.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Make.rules: don't build .so libraries when static=1
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Make.rules
-===================================================================
---- a/Make.rules
-+++ b/Make.rules
-@@ -9,7 +9,11 @@
- CFLAGS_LIB ?= -fPIC
- CFLAGS += $(CFLAGS_LIB)
-
-+ifeq ($(static),1)
-+libraries = $(lib_name).a
-+else
- libraries = $(lib_name).so $(lib_name).a
-+endif
-
- .PHONY: library
-
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (7 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 08/10] package/dvb-apps: rename patches to follow the new name convention Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 12:25 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 10/10] package/dvb-app: remove tests Romain Naour
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
.../0003-handle-static-shared-only-build.patch | 35 ++++++++++++++++++++++
.../dvb-apps/0003-support-static-only-build.patch | 20 -------------
package/dvb-apps/dvb-apps.mk | 6 +++-
3 files changed, 40 insertions(+), 21 deletions(-)
create mode 100644 package/dvb-apps/0003-handle-static-shared-only-build.patch
delete mode 100644 package/dvb-apps/0003-support-static-only-build.patch
diff --git a/package/dvb-apps/0003-handle-static-shared-only-build.patch b/package/dvb-apps/0003-handle-static-shared-only-build.patch
new file mode 100644
index 0000000..12a3f00
--- /dev/null
+++ b/package/dvb-apps/0003-handle-static-shared-only-build.patch
@@ -0,0 +1,35 @@
+From 2058cfd89b691fd05f37de6201fdb71b90889faa Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Thu, 25 Dec 2014 19:22:16 +0100
+Subject: [PATCH] Make.rules: Handle static/shared only build
+
+Only build .a library when static=1
+Only build .so library when shared=1
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ Make.rules | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/Make.rules b/Make.rules
+index 3410d7b..788397d 100644
+--- a/Make.rules
++++ b/Make.rules
+@@ -9,7 +9,13 @@ ifneq ($(lib_name),)
+ CFLAGS_LIB ?= -fPIC
+ CFLAGS += $(CFLAGS_LIB)
+
+-libraries = $(lib_name).so $(lib_name).a
++ifeq ($(static),1)
++libraries = $(lib_name).a
++endif
++
++ifeq ($(shared),1)
++libraries += $(lib_name).so
++endif
+
+ .PHONY: library
+
+--
+1.9.3
+
diff --git a/package/dvb-apps/0003-support-static-only-build.patch b/package/dvb-apps/0003-support-static-only-build.patch
deleted file mode 100644
index 236f1a3..0000000
--- a/package/dvb-apps/0003-support-static-only-build.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Make.rules: don't build .so libraries when static=1
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Make.rules
-===================================================================
---- a/Make.rules
-+++ b/Make.rules
-@@ -9,7 +9,11 @@
- CFLAGS_LIB ?= -fPIC
- CFLAGS += $(CFLAGS_LIB)
-
-+ifeq ($(static),1)
-+libraries = $(lib_name).a
-+else
- libraries = $(lib_name).so $(lib_name).a
-+endif
-
- .PHONY: library
-
diff --git a/package/dvb-apps/dvb-apps.mk b/package/dvb-apps/dvb-apps.mk
index 892af63..c29c7fb 100644
--- a/package/dvb-apps/dvb-apps.mk
+++ b/package/dvb-apps/dvb-apps.mk
@@ -16,7 +16,11 @@ DVB_APPS_LDLIBS += -liconv
endif
ifeq ($(BR2_STATIC_LIBS),y)
-DVB_APPS_MAKE_OPTS += static=1
+DVB_APPS_MAKE_OPTS += static=1 shared=0
+else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
+DVB_APPS_MAKE_OPTS += static=1 shared=1
+else # BR2_SHARED_LIBS
+DVB_APPS_MAKE_OPTS += static=0 shared=1
endif
DVB_APPS_INSTALL_STAGING = YES
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 10/10] package/dvb-app: remove tests
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
` (8 preceding siblings ...)
2014-12-27 21:58 ` [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build Romain Naour
@ 2014-12-27 21:58 ` Romain Naour
2015-01-02 12:26 ` Thomas Petazzoni
9 siblings, 1 reply; 24+ messages in thread
From: Romain Naour @ 2014-12-27 21:58 UTC (permalink / raw)
To: buildroot
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
package/dvb-apps/0004-Makefile-remove-test.patch | 27 ++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 package/dvb-apps/0004-Makefile-remove-test.patch
diff --git a/package/dvb-apps/0004-Makefile-remove-test.patch b/package/dvb-apps/0004-Makefile-remove-test.patch
new file mode 100644
index 0000000..45bfad9
--- /dev/null
+++ b/package/dvb-apps/0004-Makefile-remove-test.patch
@@ -0,0 +1,27 @@
+From c578772d6abc5fdf3ec83f632c371373e5baf9f1 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Fri, 26 Dec 2014 01:04:58 +0100
+Subject: [PATCH] Makefile: remove test
+
+Tests needs static libraries, remove them for shared only build.
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ Makefile | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 65a2273..105c460 100644
+--- a/Makefile
++++ b/Makefile
+@@ -10,7 +10,6 @@ DVB_API_MINOR := $(word 3, $(shell grep -m1 "DVB_API_VERSION_MINOR" $(VERSION_FI
+
+ all clean install:
+ $(MAKE) -C lib $@
+- $(MAKE) -C test $@
+ $(MAKE) -C util $@
+
+ update:
+--
+1.9.3
+
--
1.9.3
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared only build
2014-12-27 21:58 ` [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared " Romain Naour
@ 2014-12-28 6:07 ` Baruch Siach
2015-01-02 11:43 ` Thomas Petazzoni
1 sibling, 0 replies; 24+ messages in thread
From: Baruch Siach @ 2014-12-28 6:07 UTC (permalink / raw)
To: buildroot
Hi Romain,
On Sat, Dec 27, 2014 at 10:58:23PM +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> package/lockdev/lockdev.mk | 35 ++++++++++++++++++++++-------------
> 1 file changed, 22 insertions(+), 13 deletions(-)
>
> diff --git a/package/lockdev/lockdev.mk b/package/lockdev/lockdev.mk
> index 59561ba..e789a79 100644
> --- a/package/lockdev/lockdev.mk
> +++ b/package/lockdev/lockdev.mk
> @@ -13,30 +13,39 @@ LOCKDEV_LICENSE_FILES = LICENSE
> LOCKDEV_INSTALL_STAGING = YES
>
> ifeq ($(BR2_STATIC_LIBS),y)
> -define LOCKDEV_BUILD_CMDS
> - $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) static
> +LOCKDEV_BUILD_ARGS = static
> +LOCKDEV_INSTALL_ARGS = install_dev
> +else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
> +LOCKDEV_BUILD_ARGS = static shared
> +LOCKDEV_INSTALL_ARGS = install_dev install_run
> +else # BR2_SHARED_LIBS
> +LOCKDEV_BUILD_ARGS = shared
> +LOCKDEV_INSTALL_ARGS = install_run
> +endif
> +
> +ifeq ($(BR2_SHARED_STATIC_LIBS)$(BR2_SHARED_LIBS),y)
> +define LOCKDEV_CREATE_LINKS_STAGING
> + ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so
> + ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so.1
I suggest to split LOCKDEV_VERSION and use LOCKDEV_MAJOR for the symlink
suffix. This should be somewhat more future proof. Though since this 'ln'
predates your patch maybe a separate patch is better.
baruch
--
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 02/10] package/libnspr: disable static library for shared only build
2014-12-27 21:58 ` [Buildroot] [PATCH 02/10] package/libnspr: disable static library for shared only build Romain Naour
@ 2015-01-01 16:48 ` Thomas Petazzoni
0 siblings, 0 replies; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-01 16:48 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:20 +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> package/libnspr/libnspr.mk | 6 ++++++
> 1 file changed, 6 insertions(+)
Applied, thanks.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 03/10] package/libsvgtiny: enable shared library build
2014-12-27 21:58 ` [Buildroot] [PATCH 03/10] package/libsvgtiny: enable shared library build Romain Naour
@ 2015-01-02 11:38 ` Thomas Petazzoni
0 siblings, 0 replies; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 11:38 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:21 +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> package/libsvgtiny/libsvgtiny.mk | 16 +++++++++++++---
> 1 file changed, 13 insertions(+), 3 deletions(-)
>
> diff --git a/package/libsvgtiny/libsvgtiny.mk b/package/libsvgtiny/libsvgtiny.mk
> index a2d494e..6cb666f 100644
> --- a/package/libsvgtiny/libsvgtiny.mk
> +++ b/package/libsvgtiny/libsvgtiny.mk
> @@ -11,18 +11,28 @@ LIBSVGTINY_DEPENDENCIES = libxml2 host-gperf host-pkgconf
> LIBSVGTINY_LICENSE = MIT
> LIBSVGTINY_LICENSE_FILES = README
>
> +# Prefer shared libraries if available
This comment was not really clear, so I reworded it a little bit and
applied your patch, thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 04/10] package/keyutils: disable static library for shared only build
2014-12-27 21:58 ` [Buildroot] [PATCH 04/10] package/keyutils: disable static library for shared only build Romain Naour
@ 2015-01-02 11:39 ` Thomas Petazzoni
0 siblings, 0 replies; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 11:39 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:22 +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> package/keyutils/keyutils.mk | 4 ++++
> 1 file changed, 4 insertions(+)
Applied, thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared only build
2014-12-27 21:58 ` [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared " Romain Naour
2014-12-28 6:07 ` Baruch Siach
@ 2015-01-02 11:43 ` Thomas Petazzoni
1 sibling, 0 replies; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 11:43 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:23 +0100, Romain Naour wrote:
> ifeq ($(BR2_STATIC_LIBS),y)
> -define LOCKDEV_BUILD_CMDS
> - $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) static
> +LOCKDEV_BUILD_ARGS = static
> +LOCKDEV_INSTALL_ARGS = install_dev
> +else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
> +LOCKDEV_BUILD_ARGS = static shared
> +LOCKDEV_INSTALL_ARGS = install_dev install_run
> +else # BR2_SHARED_LIBS
> +LOCKDEV_BUILD_ARGS = shared
> +LOCKDEV_INSTALL_ARGS = install_run
This case doesn't work: if you don't use the install_dev target, the
header files of lockdev will not be installed to the staging directory.
So you have to use install_dev, or rework the makefile to have two
separate targets to install the static library and the header files.
I'll mark your patch as Changes Requested in patchwork.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 06/10] package/libxmlrpc: fix shared libraries build for uClibc
2014-12-27 21:58 ` [Buildroot] [PATCH 06/10] package/libxmlrpc: fix shared libraries build for uClibc Romain Naour
@ 2015-01-02 11:48 ` Thomas Petazzoni
0 siblings, 0 replies; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 11:48 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:24 +0100, Romain Naour wrote:
> libxmlrpc is able to build shared libraries only for (e)glibc system
> since the regexp in config.mk.in is based on "linux-gnu".
>
> Change this regexp to match "linux-uclibc".
>
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> ....in-fix-shared-libraries-build-for-uClibc.patch | 27 ++++++++++++++++++++++
> 1 file changed, 27 insertions(+)
> create mode 100644 package/libxmlrpc/0005-config.mk.in-fix-shared-libraries-build-for-uClibc.patch
Thanks, applied. Please submit the patch to the upstream libxmlrpc
project.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install
2014-12-27 21:58 ` [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install Romain Naour
@ 2015-01-02 12:18 ` Thomas Petazzoni
2015-01-04 14:23 ` Romain Naour
0 siblings, 1 reply; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 12:18 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:25 +0100, Romain Naour wrote:
> diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk
> index c3788d6..5796ae6 100644
> --- a/package/libxmlrpc/libxmlrpc.mk
> +++ b/package/libxmlrpc/libxmlrpc.mk
> @@ -35,4 +35,15 @@ LIBXMLRPC_MAKE_ENV = \
> CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
> LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)"
>
> +
> +ifeq ($(BR2_SHARED_LIBS),y)
> +LIBXMLRPC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) \
> + install-shared-libraries install-headers install-bin
> +endif
> +
> +ifeq ($(BR2_STATIC_LIBS),y)
> +LIBXMLRPC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) \
> + install-static-libraries install-headers install-bin
> +endif
This does not work: in a BR2_SHARED_LIBS configuration, libraries are
no longer installed in the staging directory:
$ cat defconfig
BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2014.11.tar.bz2"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17=y
BR2_TOOLCHAIN_EXTERNAL_LARGEFILE=y
BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_LIBXMLRPC=y
# BR2_TARGET_ROOTFS_TAR is not set
$ make
[...]
$ LANG=C ls output/staging/usr/lib/libxmlrpc*
ls: cannot access output/staging/usr/lib/libxmlrpc*: No such file or directory
I'll mark the patch as Rejected in patchwork.
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 08/10] package/dvb-apps: rename patches to follow the new name convention
2014-12-27 21:58 ` [Buildroot] [PATCH 08/10] package/dvb-apps: rename patches to follow the new name convention Romain Naour
@ 2015-01-02 12:21 ` Thomas Petazzoni
0 siblings, 0 replies; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 12:21 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:26 +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> package/dvb-apps/0001-Fix-generate-keynames.patch | 30 ++++++++++++++++++++++
> .../dvb-apps/0002-Fix-compiler-warning-flags.patch | 25 ++++++++++++++++++
> .../dvb-apps/0003-support-static-only-build.patch | 20 +++++++++++++++
> .../dvb-apps-0001-Fix-generate-keynames.patch | 30 ----------------------
> .../dvb-apps-0002-Fix-compiler-warning-flags.patch | 25 ------------------
> .../dvb-apps-0003-support-static-only-build.patch | 20 ---------------
> 6 files changed, 75 insertions(+), 75 deletions(-)
> create mode 100644 package/dvb-apps/0001-Fix-generate-keynames.patch
> create mode 100644 package/dvb-apps/0002-Fix-compiler-warning-flags.patch
> create mode 100644 package/dvb-apps/0003-support-static-only-build.patch
> delete mode 100644 package/dvb-apps/dvb-apps-0001-Fix-generate-keynames.patch
> delete mode 100644 package/dvb-apps/dvb-apps-0002-Fix-compiler-warning-flags.patch
> delete mode 100644 package/dvb-apps/dvb-apps-0003-support-static-only-build.patch
Applied, thanks.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build
2014-12-27 21:58 ` [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build Romain Naour
@ 2015-01-02 12:25 ` Thomas Petazzoni
2015-01-04 11:56 ` Romain Naour
0 siblings, 1 reply; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 12:25 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:27 +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> .../0003-handle-static-shared-only-build.patch | 35 ++++++++++++++++++++++
> .../dvb-apps/0003-support-static-only-build.patch | 20 -------------
> package/dvb-apps/dvb-apps.mk | 6 +++-
> 3 files changed, 40 insertions(+), 21 deletions(-)
> create mode 100644 package/dvb-apps/0003-handle-static-shared-only-build.patch
> delete mode 100644 package/dvb-apps/0003-support-static-only-build.patch
Does not build with the following configuration:
BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2014.11.tar.bz2"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17=y
BR2_TOOLCHAIN_EXTERNAL_LARGEFILE=y
BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_DVB_APPS=y
# BR2_TARGET_ROOTFS_TAR is not set
It gives:
CC dvbcfg_test
arm-linux-gcc: error: ../../lib/libdvbcfg/libdvbcfg.a: Aucun fichier ou dossier de ce type
../../Make.rules:81: recipe for target 'dvbcfg_test' failed
Do you actually test your patches before sending them? I don't mind
seeing corner cases being broken, but here it's the canonical case: a
BR2_SHARED_LIBS=y build (which is the default) on a major architecture
(ARM).
Patch rejected.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 10/10] package/dvb-app: remove tests
2014-12-27 21:58 ` [Buildroot] [PATCH 10/10] package/dvb-app: remove tests Romain Naour
@ 2015-01-02 12:26 ` Thomas Petazzoni
2015-01-04 11:56 ` Romain Naour
0 siblings, 1 reply; 24+ messages in thread
From: Thomas Petazzoni @ 2015-01-02 12:26 UTC (permalink / raw)
To: buildroot
Dear Romain Naour,
On Sat, 27 Dec 2014 22:58:28 +0100, Romain Naour wrote:
> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
> ---
> package/dvb-apps/0004-Makefile-remove-test.patch | 27 ++++++++++++++++++++++++
> 1 file changed, 27 insertions(+)
> create mode 100644 package/dvb-apps/0004-Makefile-remove-test.patch
Ok, now I understand why patch 09/10 was not working.
If patch 09/10 needs patch 10/10 to work, then patch 10/10 needs to be
*before* patch 09/10 in the series, or be squashed into it.
Patch rejected, please resend an updated version.
Also, if you could send to upstream dvb-apps those patches (and the
other ones we have), it would be great.
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build
2015-01-02 12:25 ` Thomas Petazzoni
@ 2015-01-04 11:56 ` Romain Naour
0 siblings, 0 replies; 24+ messages in thread
From: Romain Naour @ 2015-01-04 11:56 UTC (permalink / raw)
To: buildroot
Hi Thomas,
Le 02/01/2015 13:25, Thomas Petazzoni a ?crit :
> Dear Romain Naour,
>
> On Sat, 27 Dec 2014 22:58:27 +0100, Romain Naour wrote:
>> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
>> ---
>> .../0003-handle-static-shared-only-build.patch | 35 ++++++++++++++++++++++
>> .../dvb-apps/0003-support-static-only-build.patch | 20 -------------
>> package/dvb-apps/dvb-apps.mk | 6 +++-
>> 3 files changed, 40 insertions(+), 21 deletions(-)
>> create mode 100644 package/dvb-apps/0003-handle-static-shared-only-build.patch
>> delete mode 100644 package/dvb-apps/0003-support-static-only-build.patch
>
> Does not build with the following configuration:
>
> BR2_arm=y
> BR2_TOOLCHAIN_EXTERNAL=y
> BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
> BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2014.11.tar.bz2"
> BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17=y
> BR2_TOOLCHAIN_EXTERNAL_LARGEFILE=y
> BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
> BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
> # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
> BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
> BR2_TOOLCHAIN_EXTERNAL_CXX=y
> BR2_INIT_NONE=y
> BR2_SYSTEM_BIN_SH_NONE=y
> # BR2_PACKAGE_BUSYBOX is not set
> BR2_PACKAGE_DVB_APPS=y
> # BR2_TARGET_ROOTFS_TAR is not set
>
> It gives:
>
> CC dvbcfg_test
> arm-linux-gcc: error: ../../lib/libdvbcfg/libdvbcfg.a: Aucun fichier ou dossier de ce type
> ../../Make.rules:81: recipe for target 'dvbcfg_test' failed
>
> Do you actually test your patches before sending them? I don't mind
> seeing corner cases being broken, but here it's the canonical case: a
> BR2_SHARED_LIBS=y build (which is the default) on a major architecture
> (ARM).
See patch 10/10
Usually, I test my patches before sending them, at least a build test.
But I can make mistakes, thanks for the review and testing.
In order to upstream the patch 0003-handle-static-shared-only-build.patch, I
reworked the logic.
Instead of enabling static/shared libraries with
ifeq ($(static),1)
libraries = $(lib_name).a
endif
ifeq ($(shared),1)
libraries += $(lib_name).so
endif
which require to set one of the two variables to build something, I renamed
these variable to disable static/shared libraries one by one:
ifeq ($(disable_static),)
libraries = $(lib_name).a
endif
ifeq ($(disable_shared),)
libraries += $(lib_name).so
endif
This preserves the original behavior.
Best regards,
Romain
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 10/10] package/dvb-app: remove tests
2015-01-02 12:26 ` Thomas Petazzoni
@ 2015-01-04 11:56 ` Romain Naour
0 siblings, 0 replies; 24+ messages in thread
From: Romain Naour @ 2015-01-04 11:56 UTC (permalink / raw)
To: buildroot
Hi Thomas,
Le 02/01/2015 13:26, Thomas Petazzoni a ?crit :
> Dear Romain Naour,
>
> On Sat, 27 Dec 2014 22:58:28 +0100, Romain Naour wrote:
>> Signed-off-by: Romain Naour <romain.naour@openwide.fr>
>> ---
>> package/dvb-apps/0004-Makefile-remove-test.patch | 27 ++++++++++++++++++++++++
>> 1 file changed, 27 insertions(+)
>> create mode 100644 package/dvb-apps/0004-Makefile-remove-test.patch
>
> Ok, now I understand why patch 09/10 was not working.
>
> If patch 09/10 needs patch 10/10 to work, then patch 10/10 needs to be
> *before* patch 09/10 in the series, or be squashed into it.
My bad, I haven't reordered these patches.
I have sent them in the same order I commited locally...
Ok, I'll squash them.
>
> Patch rejected, please resend an updated version.
>
> Also, if you could send to upstream dvb-apps those patches (and the
> other ones we have), it would be great.
>
Ok, I'll send patches upstream.
Best regards,
Romain
^ permalink raw reply [flat|nested] 24+ messages in thread
* [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install
2015-01-02 12:18 ` Thomas Petazzoni
@ 2015-01-04 14:23 ` Romain Naour
0 siblings, 0 replies; 24+ messages in thread
From: Romain Naour @ 2015-01-04 14:23 UTC (permalink / raw)
To: buildroot
Hi Thomas,
Le 02/01/2015 13:18, Thomas Petazzoni a ?crit :
> Dear Romain Naour,
>
> On Sat, 27 Dec 2014 22:58:25 +0100, Romain Naour wrote:
>
>> diff --git a/package/libxmlrpc/libxmlrpc.mk b/package/libxmlrpc/libxmlrpc.mk
>> index c3788d6..5796ae6 100644
>> --- a/package/libxmlrpc/libxmlrpc.mk
>> +++ b/package/libxmlrpc/libxmlrpc.mk
>> @@ -35,4 +35,15 @@ LIBXMLRPC_MAKE_ENV = \
>> CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
>> LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)"
>>
>> +
>> +ifeq ($(BR2_SHARED_LIBS),y)
>> +LIBXMLRPC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) \
>> + install-shared-libraries install-headers install-bin
>> +endif
>> +
>> +ifeq ($(BR2_STATIC_LIBS),y)
>> +LIBXMLRPC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) \
>> + install-static-libraries install-headers install-bin
>> +endif
>
> This does not work: in a BR2_SHARED_LIBS configuration, libraries are
> no longer installed in the staging directory:
Yes, indeed... sorry :-/
Let's use install target and trash this patch.
>
> $ cat defconfig
> BR2_arm=y
> BR2_TOOLCHAIN_EXTERNAL=y
> BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
> BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2014.11.tar.bz2"
> BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17=y
> BR2_TOOLCHAIN_EXTERNAL_LARGEFILE=y
> BR2_TOOLCHAIN_EXTERNAL_INET_IPV6=y
> BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
> # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
> BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
> BR2_TOOLCHAIN_EXTERNAL_CXX=y
> BR2_INIT_NONE=y
> BR2_SYSTEM_BIN_SH_NONE=y
> # BR2_PACKAGE_BUSYBOX is not set
> BR2_PACKAGE_LIBXMLRPC=y
> # BR2_TARGET_ROOTFS_TAR is not set
> $ make
> [...]
> $ LANG=C ls output/staging/usr/lib/libxmlrpc*
> ls: cannot access output/staging/usr/lib/libxmlrpc*: No such file or directory
>
> I'll mark the patch as Rejected in patchwork.
>
Thanks for testing.
(hopefully this patch hasn't been commited)
Best regards,
Romain
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2015-01-04 14:23 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-27 21:58 [Buildroot] [PATCH 00/10] Misc shared only build fixes Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 01/10] package/lm-sensors: disable static library for shared-only build Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 02/10] package/libnspr: disable static library for shared only build Romain Naour
2015-01-01 16:48 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 03/10] package/libsvgtiny: enable shared library build Romain Naour
2015-01-02 11:38 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 04/10] package/keyutils: disable static library for shared only build Romain Naour
2015-01-02 11:39 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 05/10] package/lockdev: handle static/shared " Romain Naour
2014-12-28 6:07 ` Baruch Siach
2015-01-02 11:43 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 06/10] package/libxmlrpc: fix shared libraries build for uClibc Romain Naour
2015-01-02 11:48 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 07/10] package/libxmlrpc: handle static/shared only install Romain Naour
2015-01-02 12:18 ` Thomas Petazzoni
2015-01-04 14:23 ` Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 08/10] package/dvb-apps: rename patches to follow the new name convention Romain Naour
2015-01-02 12:21 ` Thomas Petazzoni
2014-12-27 21:58 ` [Buildroot] [PATCH 09/10] package/dvb-app: handle static/shared only build Romain Naour
2015-01-02 12:25 ` Thomas Petazzoni
2015-01-04 11:56 ` Romain Naour
2014-12-27 21:58 ` [Buildroot] [PATCH 10/10] package/dvb-app: remove tests Romain Naour
2015-01-02 12:26 ` Thomas Petazzoni
2015-01-04 11:56 ` Romain Naour
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.