summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <waker@users.sourceforge.net>2013-12-24 14:07:16 +0100
committerGravatar Alexey Yakovenko <waker@users.sourceforge.net>2013-12-24 14:07:16 +0100
commit44a9ec5bca140979a35ab21704ea1aada1c2f0f4 (patch)
tree6e1da8572bdba3c10997a168f529a34cbd719caf
parent1a1b7402f57b0530145b6db9797a40d69501ba19 (diff)
added/fixed few things necessary to cross-compile i686 ddb on x86_64 host (WIP)
-rw-r--r--PORTABLE_BUILD2
-rw-r--r--PORTABLE_VERSION2
-rw-r--r--configure.ac4
-rw-r--r--plugins/converter/Makefile.am2
-rw-r--r--plugins/gtkui/Makefile.am4
-rw-r--r--plugins/lastfm/Makefile.am2
-rw-r--r--plugins/pltbrowser/Makefile.am2
-rw-r--r--plugins/shellexecui/Makefile.am2
-rw-r--r--plugins/vfs_curl/Makefile.am2
-rwxr-xr-xscripts/static_build.sh32
-rw-r--r--tools/apbuild/apsymbols.h.i6862
11 files changed, 38 insertions, 18 deletions
diff --git a/PORTABLE_BUILD b/PORTABLE_BUILD
index b8626c4c..d00491fd 100644
--- a/PORTABLE_BUILD
+++ b/PORTABLE_BUILD
@@ -1 +1 @@
-4
+1
diff --git a/PORTABLE_VERSION b/PORTABLE_VERSION
index a918a2aa..d64531f1 100644
--- a/PORTABLE_VERSION
+++ b/PORTABLE_VERSION
@@ -1 +1 @@
-0.6.0
+devel
diff --git a/configure.ac b/configure.ac
index c1457b0d..2980f33b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -291,7 +291,9 @@ dnl curl lib
AS_IF([test "${enable_staticlink}" != "no"], [
HAVE_CURL=yes
CURL_LIBS="../../$LIB/lib/libcurl.a -lrt"
+ CURL_CFLAGS="-I../../$LIB/include"
AC_SUBST(CURL_LIBS)
+ AC_SUBST(CURL_CFLAGS)
], [
AC_CHECK_LIB([curl], [main], [HAVE_CURL=yes])
CURL_LIBS="-lcurl"
@@ -386,6 +388,8 @@ AS_IF([test "${enable_vfs_curl}" != "no"], [
HAVE_VFS_CURL=yes
VFS_CURL_LIBS="$CURL_LIBS"
AC_SUBST(VFS_CURL_LIBS)
+ VFS_CURL_CFLAGS="$CURL_CFLAGS"
+ AC_SUBST(VFS_CURL_CFLAGS)
])
])
diff --git a/plugins/converter/Makefile.am b/plugins/converter/Makefile.am
index d14d3f40..54cbea95 100644
--- a/plugins/converter/Makefile.am
+++ b/plugins/converter/Makefile.am
@@ -52,7 +52,7 @@ converter_gtk3_la_LDFLAGS = -module
if STATICLINK
GTK_ROOT_300=@top_srcdir@/$(LIB)/gtk-3.0.0
-converter_gtk3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfreetype -lfontconfig $(SM_LIBADD)
+converter_gtk3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfreetype $(SM_LIBADD)
converter_gtk3_la_CFLAGS = -std=c99 -I$(GTK_ROOT_300)/include/gtk-3.0 -I$(GTK_ROOT_300)/include/pango-1.0 -I$(GTK_ROOT_300)/include/gio-unix-2.0/ -I$(GTK_ROOT_300)/include/atk-1.0 -I$(GTK_ROOT_300)/include/cairo -I$(GTK_ROOT_300)/include/gdk-pixbuf-2.0 -I$(GTK_ROOT_300)/include/freetype2 -I$(GTK_ROOT_300)/include/glib-2.0 -I$(GTK_ROOT_300)/lib/glib-2.0/include $(SM_CFLAGS)
diff --git a/plugins/gtkui/Makefile.am b/plugins/gtkui/Makefile.am
index afce48f5..830775e2 100644
--- a/plugins/gtkui/Makefile.am
+++ b/plugins/gtkui/Makefile.am
@@ -157,7 +157,7 @@ ddb_gui_GTK2_la_LDFLAGS = -module
if STATICLINK
GTK_ROOT_216=@top_srcdir@/$(LIB)/gtk-2.16.0
-ddb_gui_GTK2_la_LIBADD = $(LDADD) -L$(GTK_ROOT_216)/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 $(SM_LIBADD) ../libparser/libparser.a $(GTKGLEXT2_LIBS)
+ddb_gui_GTK2_la_LIBADD = $(LDADD) -L$(GTK_ROOT_216)/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 $(SM_LIBADD) ../libparser/libparser.a $(GTKGLEXT2_LIBS)
ddb_gui_GTK2_la_CFLAGS = -std=c99 -I$(GTK_ROOT_216)/include/gtk-2.0 -I$(GTK_ROOT_216)/lib/gtk-2.0/include -I$(GTK_ROOT_216)/include/atk-1.0 -I$(GTK_ROOT_216)/include/cairo -I$(GTK_ROOT_216)/include/pango-1.0 -I$(GTK_ROOT_216)/include -I$(GTK_ROOT_216)/include/glib-2.0 -I$(GTK_ROOT_216)/lib/glib-2.0/include $(SM_CFLAGS) $(GTKGLEXT_CFLAGS_GTK2)
else
@@ -237,7 +237,7 @@ if STATICLINK
ddb_gui_GTK3_la_SOURCES = $(GTKUI_SOURCES_GTK3)
GTK_ROOT_300=@top_srcdir@/$(LIB)/gtk-3.0.0
-ddb_gui_GTK3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lfreetype -lfontconfig $(SM_LIBADD) ../libparser/libparser.a $(GTKGLEXT3_LIBS)
+ddb_gui_GTK3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lfreetype $(SM_LIBADD) ../libparser/libparser.a $(GTKGLEXT3_LIBS)
ddb_gui_GTK3_la_CFLAGS = -std=c99 -I$(GTK_ROOT_300)/include/gtk-3.0 -I$(GTK_ROOT_300)/include/pango-1.0 -I$(GTK_ROOT_300)/include/gio-unix-2.0/ -I$(GTK_ROOT_300)/include/atk-1.0 -I$(GTK_ROOT_300)/include/cairo -I$(GTK_ROOT_300)/include/gdk-pixbuf-2.0 -I$(GTK_ROOT_300)/include/freetype2 -I$(GTK_ROOT_300)/include/glib-2.0 -I$(GTK_ROOT_300)/lib/glib-2.0/include $(SM_CFLAGS) $(GTKGLEXT_CFLAGS_GTK3)
else
diff --git a/plugins/lastfm/Makefile.am b/plugins/lastfm/Makefile.am
index 87499d7e..b7f9b8d2 100644
--- a/plugins/lastfm/Makefile.am
+++ b/plugins/lastfm/Makefile.am
@@ -5,5 +5,5 @@ lastfm_la_SOURCES = lastfm.c
lastfm_la_LDFLAGS = -module
lastfm_la_LIBADD = $(LDADD) $(CURL_LIBS)
-AM_CFLAGS = -std=c99
+AM_CFLAGS = -std=c99 $(CURL_CFLAGS)
endif
diff --git a/plugins/pltbrowser/Makefile.am b/plugins/pltbrowser/Makefile.am
index 73923b55..66adf45c 100644
--- a/plugins/pltbrowser/Makefile.am
+++ b/plugins/pltbrowser/Makefile.am
@@ -35,7 +35,7 @@ pltbrowser_gtk3_la_LDFLAGS = -module
if STATICLINK
GTK_ROOT_300=@top_srcdir@/$(LIB)/gtk-3.0.0
-pltbrowser_gtk3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfreetype -lfontconfig $(SM_LIBADD)
+pltbrowser_gtk3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfreetype $(SM_LIBADD)
pltbrowser_gtk3_la_CFLAGS = -std=c99 -I$(GTK_ROOT_300)/include/gtk-3.0 -I$(GTK_ROOT_300)/include/pango-1.0 -I$(GTK_ROOT_300)/include/gio-unix-2.0/ -I$(GTK_ROOT_300)/include/atk-1.0 -I$(GTK_ROOT_300)/include/cairo -I$(GTK_ROOT_300)/include/gdk-pixbuf-2.0 -I$(GTK_ROOT_300)/include/freetype2 -I$(GTK_ROOT_300)/include/glib-2.0 -I$(GTK_ROOT_300)/lib/glib-2.0/include $(SM_CFLAGS)
diff --git a/plugins/shellexecui/Makefile.am b/plugins/shellexecui/Makefile.am
index e8945130..4fb4e018 100644
--- a/plugins/shellexecui/Makefile.am
+++ b/plugins/shellexecui/Makefile.am
@@ -37,7 +37,7 @@ shellexecui_gtk3_la_LDFLAGS = -module
if STATICLINK
GTK_ROOT_300=@top_srcdir@/$(LIB)/gtk-3.0.0
-shellexecui_gtk3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfreetype -lfontconfig $(SM_LIBADD)
+shellexecui_gtk3_la_LIBADD = $(LDADD) -L$(GTK_ROOT_300)/lib -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0 -lfreetype $(SM_LIBADD)
shellexecui_gtk3_la_CFLAGS = -std=c99 -I$(GTK_ROOT_300)/include/gtk-3.0 -I$(GTK_ROOT_300)/include/pango-1.0 -I$(GTK_ROOT_300)/include/gio-unix-2.0/ -I$(GTK_ROOT_300)/include/atk-1.0 -I$(GTK_ROOT_300)/include/cairo -I$(GTK_ROOT_300)/include/gdk-pixbuf-2.0 -I$(GTK_ROOT_300)/include/freetype2 -I$(GTK_ROOT_300)/include/glib-2.0 -I$(GTK_ROOT_300)/lib/glib-2.0/include $(SM_CFLAGS)
diff --git a/plugins/vfs_curl/Makefile.am b/plugins/vfs_curl/Makefile.am
index 4c69c51f..f092e3fe 100644
--- a/plugins/vfs_curl/Makefile.am
+++ b/plugins/vfs_curl/Makefile.am
@@ -5,5 +5,5 @@ vfs_curl_la_SOURCES = vfs_curl.c
vfs_curl_la_LDFLAGS = -module
vfs_curl_la_LIBADD = $(LDADD) $(VFS_CURL_LIBS)
-AM_CFLAGS = $(CFLAGS) -std=c99
+AM_CFLAGS = $(CFLAGS) $(VFS_CURL_CFLAGS) -std=c99
endif
diff --git a/scripts/static_build.sh b/scripts/static_build.sh
index 9b8937d7..b1cdfe0e 100755
--- a/scripts/static_build.sh
+++ b/scripts/static_build.sh
@@ -1,11 +1,27 @@
-#!/bin/sh
+#!/bin/bash
VERSION=`cat PORTABLE_VERSION | perl -ne 'chomp and print'`
ORIGIN=`pwd | perl -ne 'chomp and print'`
AP=$ORIGIN/tools/apbuild
-ARCH=`uname -m | perl -ne 'chomp and print'`
+#ARCH=`uname -m | perl -ne 'chomp and print'`
+if [[ "$ARCH" == "i686" ]]; then
+ export CFLAGS='-m32'
+ export LDFLAGS='-m32'
+ export CONFIGURE_FLAGS="--build=i686-unknown-linux-gnu"
+ export LD_LIBRARY_PATH="$ORIGIN/../deadbeef-deps/lib-x86-32/lib"
+ export PKG_CONFIG_PATH="$ORIGIN/../deadbeef-deps/lib-x86-32/lib/pkgconfig"
+elif [[ "$ARCH" == "x86_64" ]]; then
+ export CFLAGS='-m64'
+ export LDFLAGS='-m64'
+ export CONFIGURE_FLAGS="--build=x86_64-unknown-linux-gnu"
+ export LD_LIBRARY_PATH="$ORIGIN/../deadbeef-deps/lib-x86-64/lib"
+ export PKG_CONFIG_PATH="$ORIGIN/../deadbeef-deps/lib-x86-64/lib/pkgconfig"
+else
+ echo unknown arch $ARCH
+ exit -1
+fi
cd tools/apbuild
-./apinit
+./apinit || exit -1
cd ../../
export APBUILD_STATIC_LIBGCC=1
@@ -13,16 +29,16 @@ export APBUILD_CXX1=1
export CC=$AP/apgcc
export CXX=$AP/apgcc
-./autogen.sh
+./autogen.sh || exit -1
-./configure --enable-staticlink --disable-artwork-imlib2 --prefix=/opt/deadbeef
+./configure CFLAGS=$CFLAGS LDFLAGS=$LDFLAGS $CONFIGURE_FLAGS --enable-staticlink --disable-artwork-imlib2 --prefix=/opt/deadbeef || exit -1
sed -i 's/-lstdc++ -lm -lgcc_s -lc -lgcc_s/-lm -lc/g' libtool
sed -i 's/hardcode_into_libs=yes/hardcode_into_libs=no/g' libtool
make clean
-make -j8 DESTDIR=`pwd`/static/$ARCH/deadbeef-$VERSION
-make DESTDIR=`pwd`/static/$ARCH/deadbeef-$VERSION install
+make -j8 DESTDIR=`pwd`/static/$ARCH/deadbeef-$VERSION || exit -1
+make DESTDIR=`pwd`/static/$ARCH/deadbeef-$VERSION install || exit -1
echo "building pluginfo tool..."
cd tools/pluginfo
-make
+make || exit -1
cd ../../
diff --git a/tools/apbuild/apsymbols.h.i686 b/tools/apbuild/apsymbols.h.i686
index 67021823..25b35a19 100644
--- a/tools/apbuild/apsymbols.h.i686
+++ b/tools/apbuild/apsymbols.h.i686
@@ -6,7 +6,7 @@ APBUILD_NOTE_METADATA("apbuild.version=" APBUILD_VERSION);
#endif
/* apbuild generated symbol exclusion list */
-__asm__(".symver __ctype_toupper,__ctype_toupper@GLIBC2.0");
+/*__asm__(".symver __ctype_toupper,__ctype_toupper@GLIBC2.0");*/
__asm__(".symver memcpy,memcpy@GLIBC_2.0");
__asm__(".symver _sys_errlist,_sys_errlist@GLIBC_2.0");
__asm__(".symver _sys_nerr,_sys_nerr@GLIBC_2.0");