From: Romain Naour <romain.naour@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 2/2] package/libsquash: really install shared library
Date: Sat, 12 Jan 2019 13:10:24 +0100 [thread overview]
Message-ID: <20190112121024.27896-2-romain.naour@gmail.com> (raw)
In-Reply-To: <20190112121024.27896-1-romain.naour@gmail.com>
While testing the new supertuxkart 0.10-beta1 version, the build failed
due to missing libsquash shared library.
Indeed, by default (see config file) the shared library is not build
and all symlinks created by LIBSQUISH_INSTALL_{STAGING,TARGET}_CMDS are
curently broken.
To fix that, add USE_SHARED=1 to LIBSQUISH_MAKE_ENV.
Also add a patch to allow reinstall the package.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
---
There is a new CMakeFiles.txt but it doesn't install libsquish.pc file.
@Peter: This patch should be backported to all stable version
(i.e since the bump to 1.15, commit 374e39df819598a0049a9c485ce5b2adbe2c90a1)
---
...d-f-option-for-ln-to-remove-existing-dest.patch | 32 ++++++++++++++++++++++
package/libsquish/libsquish.mk | 11 ++++----
2 files changed, 37 insertions(+), 6 deletions(-)
create mode 100644 package/libsquish/0001-Makefile-add-f-option-for-ln-to-remove-existing-dest.patch
diff --git a/package/libsquish/0001-Makefile-add-f-option-for-ln-to-remove-existing-dest.patch b/package/libsquish/0001-Makefile-add-f-option-for-ln-to-remove-existing-dest.patch
new file mode 100644
index 0000000000..ab9e64f0ff
--- /dev/null
+++ b/package/libsquish/0001-Makefile-add-f-option-for-ln-to-remove-existing-dest.patch
@@ -0,0 +1,32 @@
+From 1e541293ac19c49f886220b64de6006c5c700144 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Sat, 12 Jan 2019 12:50:54 +0100
+Subject: [PATCH] Makefile: add -f option for ln to remove existing destination
+ files
+
+While reinstalling the library, all symlinks are present.
+Ask ln to remove them with -f.
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index fd7d6c8..2683819 100644
+--- a/Makefile
++++ b/Makefile
+@@ -25,8 +25,8 @@ install: $(LIB) $(LIBA) libsquish.pc
+ $(INSTALL_FILE) $(LIBA) $(INSTALL_DIR)/$(LIB_PATH)
+ ifneq ($(USE_SHARED),0)
+ $(INSTALL_FILE) $(LIB) $(INSTALL_DIR)/$(LIB_PATH)
+- ln -s $(LIB) $(INSTALL_DIR)/$(LIB_PATH)/$(SOLIB)
+- ln -s $(LIB) $(INSTALL_DIR)/$(LIB_PATH)/libsquish.so
++ ln -sf $(LIB) $(INSTALL_DIR)/$(LIB_PATH)/$(SOLIB)
++ ln -sf $(LIB) $(INSTALL_DIR)/$(LIB_PATH)/libsquish.so
+ $(INSTALL_DIRECTORY) $(INSTALL_DIR)/$(LIB_PATH)/pkgconfig
+ $(INSTALL_FILE) libsquish.pc $(INSTALL_DIR)/$(LIB_PATH)/pkgconfig
+ endif
+--
+2.14.5
+
diff --git a/package/libsquish/libsquish.mk b/package/libsquish/libsquish.mk
index 67892dd9eb..b1a80e5b60 100644
--- a/package/libsquish/libsquish.mk
+++ b/package/libsquish/libsquish.mk
@@ -12,26 +12,25 @@ LIBSQUISH_STRIP_COMPONENTS = 0
LIBSQUISH_LICENSE = MIT
LIBSQUISH_LICENSE_FILES = LICENSE.txt
+LIBSQUISH_MAKE_ENV = USE_SHARED=1
+
define LIBSQUISH_BUILD_CMDS
- $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)
+ $(TARGET_CONFIGURE_OPTS) $(LIBSQUISH_MAKE_ENV) $(MAKE) -C $(@D)
endef
define LIBSQUISH_INSTALL_STAGING_CMDS
mkdir -p $(STAGING_DIR)/usr/include
mkdir -p $(STAGING_DIR)/usr/lib
- $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \
+ $(TARGET_CONFIGURE_OPTS) $(LIBSQUISH_MAKE_ENV) $(MAKE) -C $(@D) \
install PREFIX=/usr INSTALL_DIR=$(STAGING_DIR)/usr
$(INSTALL) -D -m 644 $(@D)/libsquish.pc $(STAGING_DIR)/usr/lib/pkgconfig/libsquish.pc
- ln -sf libsquish.so.0.0 $(STAGING_DIR)/usr/lib/libsquish.so
- ln -sf libsquish.so.0.0 $(STAGING_DIR)/usr/lib/libsquish.so.0
endef
define LIBSQUISH_INSTALL_TARGET_CMDS
mkdir -p $(TARGET_DIR)/usr/include
mkdir -p $(TARGET_DIR)/usr/lib
- $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \
+ $(TARGET_CONFIGURE_OPTS) $(LIBSQUISH_MAKE_ENV) $(MAKE) -C $(@D) \
install PREFIX=/usr INSTALL_DIR=$(TARGET_DIR)/usr
- ln -sf libsquish.so.0.0 $(TARGET_DIR)/usr/lib/libsquish.so.0
endef
$(eval $(generic-package))
--
2.14.5
next prev parent reply other threads:[~2019-01-12 12:10 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-12 12:10 [Buildroot] [PATCH 1/2] package/libsquish: add license file hash Romain Naour
2019-01-12 12:10 ` Romain Naour [this message]
2019-01-12 12:31 ` [Buildroot] [PATCH 2/2] package/libsquash: really install shared library Romain Naour
2019-01-12 15:36 ` Thomas De Schampheleire
2019-01-12 16:04 ` Thomas De Schampheleire
2019-01-24 15:46 ` Peter Korsgaard
2019-01-12 14:48 ` [Buildroot] [PATCH 1/2] package/libsquish: add license file hash Thomas Petazzoni
2019-01-24 15:46 ` Peter Korsgaard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190112121024.27896-2-romain.naour@gmail.com \
--to=romain.naour@gmail.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.