summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-06-15 13:09:33 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2014-06-15 13:13:14 +0200
commitbf8903fa567e5c1b5d923c6f1c0aeb1d2fd1192a (patch)
tree64691c16412c4788e2f242abeb418187231d0ec8
parentbf3ec139fd4c0996463d221478eb8ce82694e6de (diff)
cleanup HOST_STYLE, use SYSROOT feature for pkgconf
there are three HOST_STYLE's, not set mean fully automatic installation. auto means prefix is set to /usr and DESTDIR is set to STAGING_HOST_DIR. When using manual, you need to provide your own targets. Instead of using sed to modify *.pc files, use PKG_SYSROOT feature, which does work better and avoids pathcing some pc files. Idea from sh4rm via #musl.
-rw-r--r--TODO1
-rw-r--r--mk/host-bottom.mk54
-rw-r--r--mk/host.mk10
-rw-r--r--mk/package.mk18
-rw-r--r--mk/pkg-bottom.mk8
-rw-r--r--package/alsa-lib/Makefile1
-rw-r--r--package/autoconf/Makefile1
-rw-r--r--package/automake/Makefile1
-rw-r--r--package/bc/Makefile2
-rw-r--r--package/bison/Makefile1
-rw-r--r--package/cairo/Makefile1
-rw-r--r--package/ccache/Makefile2
-rw-r--r--package/classpath/Makefile1
-rw-r--r--package/cups/Makefile1
-rw-r--r--package/e2fsprogs/Makefile5
-rw-r--r--package/eudev/Makefile2
-rw-r--r--package/expat/Makefile2
-rw-r--r--package/fastjar/Makefile2
-rw-r--r--package/fetchmail/Makefile8
-rw-r--r--package/file/Makefile1
-rw-r--r--package/findutils/Makefile1
-rw-r--r--package/flex/Makefile2
-rw-r--r--package/fontconfig/Makefile1
-rw-r--r--package/freetype/Makefile1
-rw-r--r--package/gawk/Makefile1
-rw-r--r--package/gcj/Makefile1
-rw-r--r--package/gdk-pixbuf/Makefile1
-rw-r--r--package/genext2fs/Makefile2
-rw-r--r--package/glib/Makefile3
-rw-r--r--package/gperf/Makefile2
-rw-r--r--package/gpsd/Makefile6
-rw-r--r--package/harfbuzz/Makefile2
-rw-r--r--package/heimdal/Makefile1
-rw-r--r--package/icu4c/Makefile1
-rw-r--r--package/intltool/Makefile2
-rw-r--r--package/jamvm/Makefile1
-rw-r--r--package/jikes/Makefile2
-rw-r--r--package/libICE/Makefile2
-rw-r--r--package/libIDL/Makefile8
-rw-r--r--package/libSM/Makefile2
-rw-r--r--package/libX11/Makefile1
-rw-r--r--package/libXau/Makefile5
-rw-r--r--package/libXext/Makefile1
-rw-r--r--package/libXi/Makefile1
-rw-r--r--package/libXinerama/Makefile1
-rw-r--r--package/libXrender/Makefile1
-rw-r--r--package/libXt/Makefile1
-rw-r--r--package/libXtst/Makefile1
-rw-r--r--package/libatomic_ops/Makefile2
-rw-r--r--package/libcroco/Makefile2
-rw-r--r--package/libffi/Makefile6
-rw-r--r--package/libffi/patches/patch-configure_ac14
-rw-r--r--package/libffi/patches/patch-include_Makefile_am4
-rw-r--r--package/libffi/patches/patch-libffi_pc_in13
-rw-r--r--package/libgc/Makefile2
-rw-r--r--package/liblzo/Makefile1
-rw-r--r--package/libpng/Makefile2
-rw-r--r--package/librsvg/Makefile1
-rw-r--r--package/libtirpc/patches/patch-Makefile_in11
-rw-r--r--package/libtirpc/patches/patch-src_Makefile_in69
-rw-r--r--package/libtool/Makefile1
-rw-r--r--package/libxcb/Makefile1
-rw-r--r--package/libxml2/Makefile1
-rw-r--r--package/libxslt/Makefile1
-rw-r--r--package/lzma/Makefile2
-rw-r--r--package/lzop/Makefile2
-rw-r--r--package/m4/Makefile1
-rw-r--r--package/nasm/Makefile1
-rw-r--r--package/ncurses/Makefile1
-rw-r--r--package/openjdk7/Makefile1
-rw-r--r--package/orbit2/Makefile6
-rw-r--r--package/pango/Makefile1
-rw-r--r--package/patch/Makefile2
-rw-r--r--package/pcre/Makefile1
-rw-r--r--package/pixman/Makefile1
-rw-r--r--package/pkgconf/Makefile2
-rw-r--r--package/python2/Makefile1
-rw-r--r--package/python3/Makefile1
-rw-r--r--package/readline/Makefile1
-rw-r--r--package/sdl-image/Makefile1
-rw-r--r--package/sdl/Makefile1
-rw-r--r--package/sed/Makefile2
-rw-r--r--package/sipsak/Makefile4
-rw-r--r--package/swig/Makefile1
-rw-r--r--package/tinyxml/Makefile1
-rw-r--r--package/util-linux/patches/patch-libblkid_blkid_pc_in16
-rw-r--r--package/util-linux/patches/patch-libuuid_uuid_pc_in16
-rw-r--r--package/util-linux/patches/patch-misc-utils_uuidd_820
-rw-r--r--package/util-macros/Makefile1
-rw-r--r--package/vala/Makefile2
-rw-r--r--package/xcb-proto/Makefile1
-rw-r--r--package/xtrans/Makefile1
-rw-r--r--package/xz/Makefile2
-rw-r--r--package/yasm/Makefile2
94 files changed, 81 insertions, 321 deletions
diff --git a/TODO b/TODO
index d03c7b678..360f31700 100644
--- a/TODO
+++ b/TODO
@@ -2,7 +2,6 @@ global:
- projects dir idea
- lowercase package conversion
- AUTOTOOL_STYLE automatic adds autotool
-- HOST_STYLE auto default
toolchain stuff:
- config.site/config.cache usage for speedup?
diff --git a/mk/host-bottom.mk b/mk/host-bottom.mk
index 8ef4a868e..84998df38 100644
--- a/mk/host-bottom.mk
+++ b/mk/host-bottom.mk
@@ -16,54 +16,53 @@ endif
@cd ${WRKBUILD}; \
for i in $$(find . -name config.sub);do \
if [ -f $$i ]; then \
- ${CP} $$i $$i.bak; \
${CP} ${SCRIPT_DIR}/config.sub $$i; \
fi; \
done; \
for i in $$(find . -name config.guess);do \
if [ -f $$i ]; then \
- ${CP} $$i $$i.bak; \
${CP} ${SCRIPT_DIR}/config.guess $$i; \
fi; \
done;
@${MAKE} hostpre-configure $(MAKE_TRACE)
-ifneq (${HOST_STYLE},manual)
-ifeq ($(strip ${HOST_STYLE}),)
- cd ${WRKBUILD}; rm -f config.{cache,status}; \
+ifeq (${HOST_STYLE},)
+ cd ${WRKBUILD}; \
env ${HOST_CONFIGURE_ENV} \
${BASH} ${WRKSRC}/${CONFIGURE_PROG} \
--program-prefix= \
--program-suffix= \
- --prefix=/usr \
- --bindir=/usr/bin \
- --datadir=/usr/share \
- --mandir=/usr/share/man \
- --libexecdir=/usr/libexec \
- --localstatedir=/var \
- --sysconfdir=/etc \
+ --prefix=${STAGING_HOST_DIR}/usr \
+ --bindir=${STAGING_HOST_DIR}/usr/bin \
+ --datadir=${STAGING_HOST_DIR}/usr/share \
+ --mandir=${STAGING_HOST_DIR}/usr/share/man \
+ --libexecdir=${STAGING_HOST_DIR}/usr/libexec \
+ --sysconfdir=${STAGING_HOST_DIR}/etc \
--disable-dependency-tracking \
--disable-libtool-lock \
--disable-nls \
${HOST_CONFIGURE_ARGS} $(MAKE_TRACE)
-else
- cd ${WRKBUILD}; rm -f config.{cache,status}; \
+endif
+ifeq (${HOST_STYLE},auto)
+ cd ${WRKBUILD}; \
env ${HOST_CONFIGURE_ENV} \
${BASH} ${WRKSRC}/${CONFIGURE_PROG} \
--program-prefix= \
--program-suffix= \
- --prefix=${STAGING_HOST_DIR}/usr \
- --bindir=${STAGING_HOST_DIR}/usr/bin \
- --datadir=${STAGING_HOST_DIR}/usr/share \
- --mandir=${STAGING_HOST_DIR}/usr/share/man \
- --libexecdir=${STAGING_HOST_DIR}/usr/libexec \
- --sysconfdir=${STAGING_HOST_DIR}/etc \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --datadir=/usr/share \
+ --mandir=/usr/share/man \
+ --libexecdir=/usr/libexec \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
--disable-dependency-tracking \
--disable-libtool-lock \
--disable-nls \
${HOST_CONFIGURE_ARGS} $(MAKE_TRACE)
endif
-endif
+ifeq (${HOST_STYLE},manual)
${MAKE} host-configure $(MAKE_TRACE)
+endif
touch $@
host-build:
@@ -81,16 +80,15 @@ host-install: ${ALL_HOSTINST}
${_HOST_FAKE_COOKIE}: ${_HOST_BUILD_COOKIE}
@$(CMD_TRACE) "host installing... "
@mkdir -p ${HOST_WRKINST}
-ifneq (${HOST_STYLE},manual)
-ifeq ($(strip ${HOST_STYLE}),)
- cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \
- DESTDIR='${HOST_WRKINST}' ${HOST_FAKE_FLAGS} ${HOST_INSTALL_TARGET} $(MAKE_TRACE)
- env ${HOST_MAKE_ENV} ${MAKE} host-install $(MAKE_TRACE)
-else
+ifeq (${HOST_STYLE},)
cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \
DESTDIR='' ${HOST_FAKE_FLAGS} ${HOST_INSTALL_TARGET} $(MAKE_TRACE)
endif
-else
+ifeq (${HOST_STYLE},auto)
+ cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \
+ DESTDIR='${STAGING_HOST_DIR}' ${HOST_FAKE_FLAGS} ${HOST_INSTALL_TARGET} $(MAKE_TRACE)
+endif
+ifeq (${HOST_STYLE},manual)
env ${HOST_MAKE_ENV} ${MAKE} host-install $(MAKE_TRACE)
endif
env ${HOST_MAKE_ENV} ${MAKE} hostpost-install $(MAKE_TRACE)
diff --git a/mk/host.mk b/mk/host.mk
index 448848181..694334589 100644
--- a/mk/host.mk
+++ b/mk/host.mk
@@ -6,11 +6,12 @@ ifneq (,$(findstring host,$(MAKECMDGOALS)))
WRKDIR?= ${HOST_BUILD_DIR}/w-${PKG_NAME}-${PKG_VERSION}-${PKG_RELEASE}-host
endif
-HOST_CONFIGURE_ENV+= AUTOM4TE=${STAGING_HOST_DIR}/usr/bin/autom4te \
+HOST_CONFIGURE_ENV+= PATH='${HOST_PATH}' \
+ AUTOM4TE=${STAGING_HOST_DIR}/usr/bin/autom4te \
CONFIG_SHELL='$(strip ${SHELL})' \
- PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig' \
+ PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig:${STAGING_HOST_DIR}/usr/share/pkgconfig' \
+ PKG_CONFIG_SYSROOT_DIR='${STAGING_HOST_DIR}' \
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
- PATH='${HOST_PATH}' \
CC='$(strip ${CC_FOR_BUILD})' \
CFLAGS='$(strip ${CFLAGS_FOR_BUILD})' \
CXXFLAGS='$(strip ${CXXFLAGS_FOR_BUILD})' \
@@ -29,7 +30,8 @@ HOST_ALL_TARGET?= all
HOST_INSTALL_TARGET?= install
HOST_MAKE_ENV+= PATH='${HOST_PATH}' \
- PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig' \
+ PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig:${STAGING_HOST_DIR}/usr/share/pkgconfig' \
+ PKG_CONFIG_SYSROOT_DIR='${STAGING_HOST_DIR}' \
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
CC='$(strip ${CC_FOR_BUILD})' \
CFLAGS='$(strip ${CFLAGS_FOR_BUILD})' \
diff --git a/mk/package.mk b/mk/package.mk
index 24650acce..b8039fb5a 100644
--- a/mk/package.mk
+++ b/mk/package.mk
@@ -10,22 +10,23 @@ CONFIGURE_ARGS+= --enable-debug
endif
endif
-AUTOTOOL_ENV+= AUTOM4TE='${STAGING_HOST_DIR}/usr/bin/autom4te' \
+AUTOTOOL_ENV+= PATH='${AUTOTOOL_PATH}' \
+ AUTOM4TE='${STAGING_HOST_DIR}/usr/bin/autom4te' \
M4='${STAGING_HOST_DIR}/usr/bin/m4' \
- LIBTOOLIZE='${STAGING_HOST_DIR}/usr/bin/libtoolize -q' \
- PATH='${AUTOTOOL_PATH}'
+ LIBTOOLIZE='${STAGING_HOST_DIR}/usr/bin/libtoolize -q'
-CONFIGURE_ENV+= GCC_HONOUR_COPTS=s \
+CONFIGURE_ENV+= PATH='${TARGET_PATH}' \
+ GCC_HONOUR_COPTS=s \
AUTOM4TE=${STAGING_HOST_DIR}/usr/bin/autom4te \
M4='${STAGING_HOST_DIR}/usr/bin/m4' \
LIBTOOLIZE='${STAGING_HOST_DIR}/usr/bin/libtoolize -q' \
- PATH='${TARGET_PATH}' \
CONFIG_SHELL='$(strip ${SHELL})' \
CFLAGS='$(strip ${TARGET_CFLAGS})' \
CXXFLAGS='$(strip ${TARGET_CXXFLAGS})' \
CPPFLAGS='$(strip ${TARGET_CPPFLAGS})' \
LDFLAGS='$(strip ${TARGET_LDFLAGS})' \
- PKG_CONFIG_LIBDIR='${STAGING_TARGET_DIR}/usr/lib/pkgconfig' \
+ PKG_CONFIG_LIBDIR='${STAGING_TARGET_DIR}/usr/lib/pkgconfig:${STAGING_TARGET_DIR}/usr/share/pkgconfig' \
+ PKG_CONFIG_SYSROOT_DIR='${STAGING_TARGET_DIR}' \
ac_cv_func_realloc_0_nonnull=yes \
ac_cv_func_malloc_0_nonnull=yes \
cross_compiling=yes \
@@ -55,8 +56,9 @@ MAKE_ENV+= $(GCC_CHECK) \
CXXFLAGS='$(strip ${TARGET_CXXFLAGS})' \
CPPFLAGS='$(strip ${TARGET_CPPFLAGS})' \
LDFLAGS='$(strip ${TARGET_LDFLAGS})' \
+ PKG_CONFIG_LIBDIR='${STAGING_TARGET_DIR}/usr/lib/pkgconfig:${STAGING_TARGET_DIR}/usr/share/pkgconfig' \
+ PKG_CONFIG_SYSROOT_DIR='${STAGING_TARGET_DIR}' \
${HOST_CONFIGURE_OPTS} \
- PKG_CONFIG_LIBDIR='${STAGING_TARGET_DIR}/usr/lib/pkgconfig' \
${TARGET_CONFIGURE_OPTS}
MAKE_FLAGS+= ${XAKE_FLAGS} V=1
@@ -247,7 +249,7 @@ ifeq (,$(filter noremove,$(7)))
endif
@rm -f '$${STAGING_PKG_DIR}/$(1)'
ifeq (,$(filter nostaging,$(7)))
- -@cd $${IDIR_$(1)}; \
+ @-cd $${IDIR_$(1)}; \
x=$$$$(find tmp var -mindepth 1 2>/dev/null); if [[ -n $$$$x ]]; then \
echo 'WARNING: $${IPKG_$(1)} installs files into a' \
'ramdisk location:' >&2; \
diff --git a/mk/pkg-bottom.mk b/mk/pkg-bottom.mk
index 4df541ca4..2972ffcfe 100644
--- a/mk/pkg-bottom.mk
+++ b/mk/pkg-bottom.mk
@@ -135,12 +135,6 @@ endif
echo "scripts/$$(basename $$a)" \
>>'${STAGING_PKG_DIR}/${PKG_NAME}.scripts'; \
done
- @for a in ${WRKINST}/usr/lib/pkgconfig/*.pc; do \
- [[ -e $$a ]] || continue; \
- sed -e "s,^prefix=.*,prefix=${STAGING_TARGET_DIR}/usr," \
- -e "s,^prefix = .*,prefix = ${STAGING_TARGET_DIR}/usr," $$a > \
- ${STAGING_TARGET_DIR}/usr/lib/pkgconfig/$$(basename $$a); \
- done
ifeq (,$(filter noremove,${PKG_OPTS}))
@if test -s '${STAGING_PKG_DIR}/${PKG_NAME}'; then \
cd '${STAGING_TARGET_DIR}'; \
@@ -169,7 +163,7 @@ endif
ifeq (,$(filter nostaging,${PKG_OPTS}))
@-cd ${WRKINST}; \
find usr ! -type d 2>/dev/null | \
- grep -E -v -e '^usr/lib/pkgconfig' -e '^usr/share' -e '^usr/src' -e '^usr/doc' -e '^usr/local' -e '^usr/man' -e '^usr/info' -e '^usr/lib/libc.so' -e '^usr/bin/[a-z0-9-]+-config*' -e '^/usr/lib/libpthread_nonshared.a' | \
+ grep -E -v -e '^usr/share' -e '^usr/src' -e '^usr/doc' -e '^usr/local' -e '^usr/man' -e '^usr/info' -e '^usr/lib/libc.so' -e '^usr/bin/[a-z0-9-]+-config*' -e '^/usr/lib/libpthread_nonshared.a' | \
tee '${STAGING_PKG_DIR}/${PKG_NAME}' | \
$(STAGING_HOST_DIR)/usr/bin/cpio -padlmu '${STAGING_TARGET_DIR}'
@cd '${STAGING_TARGET_DIR}'; grep 'usr/lib/.*\.la$$' \
diff --git a/package/alsa-lib/Makefile b/package/alsa-lib/Makefile
index 6a09e5413..602cbbac9 100644
--- a/package/alsa-lib/Makefile
+++ b/package/alsa-lib/Makefile
@@ -26,7 +26,6 @@ ifneq ($(ADK_HOST_LINUX),y)
HOST_LINUX_ONLY:= 1
endif
-HOST_STYLE:= auto
TARGET_CPPFLAGS+= -D_POSIX_C_SOURCE=1
CONFIGURE_ARGS+= --disable-python
diff --git a/package/autoconf/Makefile b/package/autoconf/Makefile
index 32f2c990b..0823c134c 100644
--- a/package/autoconf/Makefile
+++ b/package/autoconf/Makefile
@@ -20,7 +20,6 @@ include ${TOPDIR}/mk/package.mk
$(eval $(call HOST_template,AUTOCONF,autoconf,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,AUTOCONF,autoconf,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-HOST_STYLE:= auto
XAKE_FLAGS+= PERL="/usr/bin/perl"
autoconf-install:
diff --git a/package/automake/Makefile b/package/automake/Makefile
index a77c0af27..dccdc8453 100644
--- a/package/automake/Makefile
+++ b/package/automake/Makefile
@@ -23,7 +23,6 @@ $(eval $(call HOST_template,AUTOMAKE,automake,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,AUTOMAKE,automake,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
XAKE_FLAGS+= PERL="/usr/bin/perl"
-HOST_STYLE:= auto
automake-install:
${INSTALL_DIR} ${IDIR_AUTOMAKE}/usr/bin
diff --git a/package/bc/Makefile b/package/bc/Makefile
index 803287475..89fdaa330 100644
--- a/package/bc/Makefile
+++ b/package/bc/Makefile
@@ -25,8 +25,6 @@ $(eval $(call HOST_template,BC,bc,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,BC,bc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,DC,dc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-HOST_STYLE:= auto
-
bc-install:
${INSTALL_DIR} ${IDIR_BC}/usr/bin
${INSTALL_BIN} ${WRKBUILD}/bc/bc ${IDIR_BC}/usr/bin/bc
diff --git a/package/bison/Makefile b/package/bison/Makefile
index 7511bceff..f12850a0b 100644
--- a/package/bison/Makefile
+++ b/package/bison/Makefile
@@ -20,7 +20,6 @@ include ${TOPDIR}/mk/package.mk
$(eval $(call HOST_template,BISON,bison,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,BISON,bison,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-HOST_STYLE:= auto
TARGET_LDFLAGS+= -lrt
XAKE_FLAGS+= M4=m4
diff --git a/package/cairo/Makefile b/package/cairo/Makefile
index 3f7d5818a..0eb325f18 100644
--- a/package/cairo/Makefile
+++ b/package/cairo/Makefile
@@ -24,7 +24,6 @@ include ${TOPDIR}/mk/package.mk
$(eval $(call HOST_template,CAIRO,cairo,${PKG_VERSION}-${PKG_RELEASE}))
$(eval $(call PKG_template,CAIRO,cairo,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
-HOST_STYLE:= auto
HOST_CONFIGURE_ARGS+= --enable-ft=yes \
--enable-png=yes \
--enable-fc=yes \
diff --git a/package/ccache/Makefile b/package/ccache/Makefile
index 191d0b82d..b730479ff 100644
--- a/package/ccache/Makefile
+++ b/package/ccache/Makefile
@@ -18,7 +18,5 @@ include $(TOPDIR)/mk/package.