Sunday, 12 January 2014

[PATCH] buildsystem: add support for multilib

>From fc9f7633e1b9186851532cd71172701e2f41c291 Mon Sep 17 00:00:00 2001
From: David Tardon <dtardon@redhat.com>
Date: Sun, 12 Jan 2014 09:17:00 +0100
Subject: [PATCH] add support for multilib

Linux distributions typically put 64-bit libraries into /usr/lib64 to
allow coexistence of 32-bit and 64-bit libraries on one system. The
build system should make allowance for this.
---
makefiles/Makefile.tools | 5 +++++
makefiles/Makefile.top | 1 +
2 files changed, 6 insertions(+)

diff --git a/makefiles/Makefile.tools b/makefiles/Makefile.tools
index a7ae724..5b76f23 100644
--- a/makefiles/Makefile.tools
+++ b/makefiles/Makefile.tools
@@ -19,6 +19,8 @@
# TARGET Target platform (defaults to host)
# PREFIX Absolute installation path prefix
# (defaults to /usr/local)
+# LIBDIR Library installation directory in ${PREFIX}
+# (defaults to lib)
#

###############################################################################
@@ -368,6 +370,9 @@ endif
# Default prefix
PREFIX ?= /usr/local

+# Default libdir
+LIBDIR ?= lib
+
###############################################################################
# Tool defaults
###############################################################################
diff --git a/makefiles/Makefile.top b/makefiles/Makefile.top
index 031a150..6329c47 100644
--- a/makefiles/Makefile.top
+++ b/makefiles/Makefile.top
@@ -287,6 +287,7 @@ define install_pkgconfig
$(Q)$(ECHO) $(ECHOFLAGS) "sed -e... $1 >$(BUILDDIR)/$(1:.in=)"
$(Q)$(SED) \
-e 's#PREFIX#$(PREFIX)#' \
+ -e 's#LIBDIR#$(LIBDIR)#' \
-e 's#MAJOR#$(major-version)#' \
-e 's#MINOR#$(minor-version)#' \
-e 's#PATCH#$(patch-version)#' \
--
1.8.4.2

Hi,

this patch and the follow ups for libraries (only those I am interested
in, sorry) make it much easier to build on typical Linux distributions,
where 64-bit libs are put into /usr/lib64. This patch does not change
anything by itself: unless a library is adapted to take advantage of it,
it builds (and installs) just like before.

D.

No comments:

Post a Comment