Skip to content

Commit

Permalink
added/fixed few things necessary to cross-compile i686 ddb on x86_64 …
Browse files Browse the repository at this point in the history
…host (WIP)
  • Loading branch information
Oleksiy-Yakovenko committed Dec 24, 2013
1 parent cf6f97d commit 5c802df
Show file tree
Hide file tree
Showing 11 changed files with 38 additions and 18 deletions.
2 changes: 1 addition & 1 deletion PORTABLE_BUILD
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4
1
2 changes: 1 addition & 1 deletion PORTABLE_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.6.0
devel
4 changes: 4 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down Expand Up @@ -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)
])
])

Expand Down
2 changes: 1 addition & 1 deletion plugins/converter/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand Down
4 changes: 2 additions & 2 deletions plugins/gtkui/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion plugins/lastfm/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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
2 changes: 1 addition & 1 deletion plugins/pltbrowser/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand Down
2 changes: 1 addition & 1 deletion plugins/shellexecui/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand Down
2 changes: 1 addition & 1 deletion plugins/vfs_curl/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -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
32 changes: 24 additions & 8 deletions scripts/static_build.sh
Original file line number Diff line number Diff line change
@@ -1,28 +1,44 @@
#!/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
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 ../../
2 changes: 1 addition & 1 deletion tools/apbuild/apsymbols.h.i686
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ APBUILD_NOTE_METADATA("apbuild.version=" APBUILD_VERSION);
#endif

/* apbuild generated symbol exclusion list */
__asm__(".symver __ctype_toupper,[email protected]");
/*__asm__(".symver __ctype_toupper,[email protected]");*/
__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");
Expand Down

0 comments on commit 5c802df

Please sign in to comment.