aboutsummaryrefslogtreecommitdiff
path: root/depends
diff options
context:
space:
mode:
Diffstat (limited to 'depends')
-rw-r--r--depends/Makefile13
-rw-r--r--depends/README.usage6
-rw-r--r--depends/config.site.in37
-rw-r--r--depends/funcs.mk24
-rw-r--r--depends/packages/bdb.mk3
-rw-r--r--depends/packages/boost.mk4
-rw-r--r--depends/packages/freetype.mk2
-rw-r--r--depends/packages/libICE.mk23
-rw-r--r--depends/packages/libSM.mk23
-rw-r--r--depends/packages/libX11.mk2
-rw-r--r--depends/packages/libXau.mk2
-rw-r--r--depends/packages/native_cctools.mk8
-rw-r--r--depends/packages/native_cdrkit.mk2
-rw-r--r--depends/packages/native_comparisontool.mk2
-rw-r--r--depends/packages/openssl.mk16
-rw-r--r--depends/packages/packages.mk13
-rw-r--r--depends/packages/protobuf.mk2
-rw-r--r--depends/packages/qrencode.mk2
-rw-r--r--depends/packages/qt.mk3
-rw-r--r--depends/packages/qt46.mk66
-rw-r--r--depends/packages/xcb_proto.mk2
-rw-r--r--depends/packages/xtrans.mk2
-rw-r--r--depends/patches/qt46/stlfix.patch10
23 files changed, 211 insertions, 56 deletions
diff --git a/depends/Makefile b/depends/Makefile
index fc763bedeb..e2ef7ee49b 100644
--- a/depends/Makefile
+++ b/depends/Makefile
@@ -6,6 +6,7 @@ SDK_PATH ?= $(BASEDIR)/SDKs
NO_QT ?=
NO_WALLET ?=
NO_UPNP ?=
+USE_LINUX_STATIC_QT5 ?=
FALLBACK_DOWNLOAD_PATH ?= https://bitcoincore.org/depends-sources
BUILD = $(shell ./config.guess)
@@ -30,6 +31,7 @@ endif
base_build_dir=$(BASEDIR)/work/build
base_staging_dir=$(BASEDIR)/work/staging
+base_download_dir=$(BASEDIR)/work/download
canonical_host:=$(shell ./config.sub $(HOST))
build:=$(shell ./config.sub $(BUILD))
@@ -121,5 +123,12 @@ $(host_prefix)/share/config.site : config.site.in $(host_prefix)/.stamp_$(final_
$(AT)touch $@
install: $(host_prefix)/share/config.site
-download: $(all_sources)
-.PHONY: install cached
+download-one: $(all_sources)
+download-osx:
+ @$(MAKE) -s HOST=x86_64-apple-darwin11 download-one
+download-linux:
+ @$(MAKE) -s HOST=x86_64-unknown-linux-gnu download-one
+download-win:
+ @$(MAKE) -s HOST=x86_64-w64-mingw32 download-one
+download: download-osx download-linux download-win
+.PHONY: install cached download-one download-osx download-linux download-win download
diff --git a/depends/README.usage b/depends/README.usage
index d3c57956f1..f5aa5314a1 100644
--- a/depends/README.usage
+++ b/depends/README.usage
@@ -23,9 +23,13 @@ NO_QT: Don't download/build/cache qt and its dependencies
NO_WALLET: Don't download/build/cache libs needed to enable the wallet
NO_UPNP: Don't download/build/cache packages needed for enabling upnp
DEBUG: disable some optimizations and enable more runtime checking
+USE_LINUX_STATIC_QT5: Build a static qt5 rather than shared qt4. Linux only.
If some packages are not built, for example 'make NO_WALLET=1', the appropriate
options will be passed to bitcoin's configure. In this case, --disable-wallet.
Additional targets:
-download: run 'make download' to fetch sources without building them
+download: run 'make download' to fetch all sources without building them
+download-osx: run 'make download-osx' to fetch all sources needed for osx builds
+download-win: run 'make download-win' to fetch all sources needed for win builds
+download-linux: run 'make download-linux' to fetch all sources needed for linux builds
diff --git a/depends/config.site.in b/depends/config.site.in
index df076956bd..873f66018d 100644
--- a/depends/config.site.in
+++ b/depends/config.site.in
@@ -48,32 +48,37 @@ if test x@host_os@ = xmingw32; then
fi
fi
-export PATH=$prefix/native/bin:$PATH
-export PKG_CONFIG="`which pkg-config` --static"
+PATH=$prefix/native/bin:$PATH
+PKG_CONFIG="`which pkg-config` --static"
+
+# These two need to remain exported because pkg-config does not see them
+# otherwise. That means they must be unexported at the end of configure.ac to
+# avoid ruining the cache. Sigh.
+
export PKG_CONFIG_LIBDIR=$prefix/lib/pkgconfig
export PKG_CONFIG_PATH=$prefix/share/pkgconfig
-export CPPFLAGS="-I$prefix/include/ $CPPFLAGS"
-export LDFLAGS="-L$prefix/lib $LDFLAGS"
+CPPFLAGS="-I$prefix/include/ $CPPFLAGS"
+LDFLAGS="-L$prefix/lib $LDFLAGS"
-export CC="@CC@"
-export CXX="@CXX@"
-export OBJC="${CC}"
-export OBJCXX="${CXX}"
-export CCACHE=$prefix/native/bin/ccache
+CC="@CC@"
+CXX="@CXX@"
+OBJC="${CC}"
+OBJCXX="${CXX}"
+CCACHE=$prefix/native/bin/ccache
if test -n "@AR@"; then
- export AR=@AR@
+ AR=@AR@
ac_cv_path_ac_pt_AR=${AR}
fi
if test -n "@RANLIB@"; then
- export RANLIB=@RANLIB@
+ RANLIB=@RANLIB@
ac_cv_path_ac_pt_RANLIB=${RANLIB}
fi
if test -n "@NM@"; then
- export NM=@NM@
+ NM=@NM@
ac_cv_path_ac_pt_NM=${NM}
fi
@@ -82,14 +87,14 @@ if test -n "@debug@"; then
fi
if test -n "@CFLAGS@"; then
- export CFLAGS="@CFLAGS@ $CFLAGS"
+ CFLAGS="@CFLAGS@ $CFLAGS"
fi
if test -n "@CXXFLAGS@"; then
- export CXXFLAGS="@CXXFLAGS@ $CXXFLAGS"
+ CXXFLAGS="@CXXFLAGS@ $CXXFLAGS"
fi
if test -n "@CPPFLAGS@"; then
- export CPPFLAGS="@CPPFLAGS@ $CPPFLAGS"
+ CPPFLAGS="@CPPFLAGS@ $CPPFLAGS"
fi
if test -n "@LDFLAGS@"; then
- export LDFLAGS="@LDFLAGS@ $LDFLAGS"
+ LDFLAGS="@LDFLAGS@ $LDFLAGS"
fi
diff --git a/depends/funcs.mk b/depends/funcs.mk
index c1fc0a0e33..79015c047c 100644
--- a/depends/funcs.mk
+++ b/depends/funcs.mk
@@ -20,18 +20,19 @@ $(sort $(foreach dep,$(2),$(2) $(call int_get_all_dependencies,$(1),$($(dep)_dep
endef
define fetch_file
-(test -f $(SOURCES_PATH)/$(4) || \
- ( mkdir -p $$($(1)_extract_dir) && \
- ( $(build_DOWNLOAD) "$$($(1)_extract_dir)/$(4).temp" "$(2)/$(3)" || \
- $(build_DOWNLOAD) "$$($(1)_extract_dir)/$(4).temp" "$(FALLBACK_DOWNLOAD_PATH)/$(3)" ) && \
- echo "$(5) $$($(1)_extract_dir)/$(4).temp" > $$($(1)_extract_dir)/.$(4).hash && \
- $(build_SHA256SUM) -c $$($(1)_extract_dir)/.$(4).hash && \
- mv $$($(1)_extract_dir)/$(4).temp $(SOURCES_PATH)/$(4) ))
+(test -f $$($(1)_source_dir)/$(4) || \
+ ( mkdir -p $$($(1)_download_dir) && echo Fetching $(1)... && \
+ ( $(build_DOWNLOAD) "$$($(1)_download_dir)/$(4).temp" "$(2)/$(3)" || \
+ $(build_DOWNLOAD) "$$($(1)_download_dir)/$(4).temp" "$(FALLBACK_DOWNLOAD_PATH)/$(3)" ) && \
+ echo "$(5) $$($(1)_download_dir)/$(4).temp" > $$($(1)_download_dir)/.$(4).hash && \
+ $(build_SHA256SUM) -c $$($(1)_download_dir)/.$(4).hash && \
+ mv $$($(1)_download_dir)/$(4).temp $$($(1)_source_dir)/$(4) && \
+ rm -rf $$($(1)_download_dir) ))
endef
define int_get_build_recipe_hash
$(eval $(1)_all_file_checksums:=$(shell $(build_SHA256SUM) $(meta_depends) packages/$(1).mk $(addprefix $(PATCHES_PATH)/$(1)/,$($(1)_patches))))
-$(eval $(1)_recipe_hash:=$(shell echo -n "$($(1)_all_file_checksums)" | $(build_SHA256SUM)))
+$(eval $(1)_recipe_hash:=$(shell echo -n "$($(1)_all_file_checksums)" | cut -d" " -f1 | $(build_SHA256SUM)))
endef
define int_get_build_id
@@ -45,17 +46,19 @@ final_build_id_long+=$($(package)_build_id_long)
#compute package-specific paths
$(1)_build_subdir?=.
$(1)_download_file?=$($(1)_file_name)
-$(1)_source:=$(SOURCES_PATH)/$($(1)_file_name)
+$(1)_source_dir:=$(SOURCES_PATH)
+$(1)_source:=$$($(1)_source_dir)/$($(1)_file_name)
$(1)_staging_dir=$(base_staging_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)
$(1)_staging_prefix_dir:=$$($(1)_staging_dir)$($($(1)_type)_prefix)
$(1)_extract_dir:=$(base_build_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)
+$(1)_download_dir:=$(base_download_dir)/$(1)-$($(1)_version)
$(1)_build_dir:=$$($(1)_extract_dir)/$$($(1)_build_subdir)
$(1)_patch_dir:=$(base_build_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)/.patches-$($(1)_build_id)
$(1)_prefixbin:=$($($(1)_type)_prefix)/bin/
$(1)_cached:=$(BASE_CACHE)/$(host)/$(1)/$(1)-$($(1)_version)-$($(1)_build_id).tar.gz
#stamps
-$(1)_fetched=$$($(1)_extract_dir)/.stamp_fetched
+$(1)_fetched=$$($(1)_source_dir)/download-stamps/.stamp_fetched-$(1)-$($(1)_file_name)
$(1)_extracted=$$($(1)_extract_dir)/.stamp_extracted
$(1)_preprocessed=$$($(1)_extract_dir)/.stamp_preprocessed
$(1)_cleaned=$$($(1)_extract_dir)/.stamp_cleaned
@@ -150,7 +153,6 @@ endef
define int_add_cmds
$($(1)_fetched):
- $(AT)echo Fetching $(1)...
$(AT)mkdir -p $$(@D) $(SOURCES_PATH)
$(AT)cd $$(@D); $(call $(1)_fetch_cmds,$(1))
$(AT)touch $$@
diff --git a/depends/packages/bdb.mk b/depends/packages/bdb.mk
index f39925723b..68841afdb8 100644
--- a/depends/packages/bdb.mk
+++ b/depends/packages/bdb.mk
@@ -8,8 +8,7 @@ $(package)_build_subdir=build_unix
define $(package)_set_vars
$(package)_config_opts=--disable-shared --enable-cxx --disable-replication
$(package)_config_opts_mingw32=--enable-mingw
-$(package)_config_opts_x86_64_linux=--with-pic
-$(package)_config_opts_arm_linux=--with-pic
+$(package)_config_opts_linux=--with-pic
endef
define $(package)_preprocess_cmds
diff --git a/depends/packages/boost.mk b/depends/packages/boost.mk
index 98ed3de772..f50828c546 100644
--- a/depends/packages/boost.mk
+++ b/depends/packages/boost.mk
@@ -21,8 +21,8 @@ $(package)_archiver_$(host_os)=$($(package)_ar)
$(package)_toolset_darwin=darwin
$(package)_archiver_darwin=$($(package)_libtool)
$(package)_config_libraries=chrono,filesystem,program_options,system,thread,test
-$(package)_cxxflags_x86_64_linux=-fPIC
-$(package)_cxxflags_arm_linux=-fPIC
+$(package)_cxxflags=-fvisibility=hidden
+$(package)_cxxflags_linux=-fPIC
endef
define $(package)_preprocess_cmds
diff --git a/depends/packages/freetype.mk b/depends/packages/freetype.mk
index b83cbd93ea..f7d6e0f9fc 100644
--- a/depends/packages/freetype.mk
+++ b/depends/packages/freetype.mk
@@ -6,7 +6,7 @@ $(package)_sha256_hash=c0848b29d52ef3ca27ad92e08351f023c5e24ce8cea7d8fe69fc96358
define $(package)_set_vars
$(package)_config_opts=--without-zlib --without-png --disable-static
- $(package)_config_opts_x86_64_linux=--with-pic
+ $(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
diff --git a/depends/packages/libICE.mk b/depends/packages/libICE.mk
new file mode 100644
index 0000000000..fc60323b1c
--- /dev/null
+++ b/depends/packages/libICE.mk
@@ -0,0 +1,23 @@
+package=libICE
+$(package)_version=1.0.9
+$(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/
+$(package)_file_name=$(package)-$($(package)_version).tar.bz2
+$(package)_sha256_hash=8f7032f2c1c64352b5423f6b48a8ebdc339cc63064af34d66a6c9aa79759e202
+$(package)_dependencies=xtrans xproto
+
+define $(package)_set_vars
+ $(package)_config_opts=--disable-static --disable-docs --disable-specs --without-xsltproc
+ $(package)_config_opts_linux=--with-pic
+endef
+
+define $(package)_config_cmds
+ $($(package)_autoconf)
+endef
+
+define $(package)_build_cmds
+ $(MAKE)
+endef
+
+define $(package)_stage_cmds
+ $(MAKE) DESTDIR=$($(package)_staging_dir) install
+endef
diff --git a/depends/packages/libSM.mk b/depends/packages/libSM.mk
new file mode 100644
index 0000000000..0f9307ca76
--- /dev/null
+++ b/depends/packages/libSM.mk
@@ -0,0 +1,23 @@
+package=libSM
+$(package)_version=1.2.2
+$(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/
+$(package)_file_name=$(package)-$($(package)_version).tar.bz2
+$(package)_sha256_hash=0baca8c9f5d934450a70896c4ad38d06475521255ca63b717a6510fdb6e287bd
+$(package)_dependencies=xtrans xproto libICE
+
+define $(package)_set_vars
+ $(package)_config_opts=--without-libuuid --without-xsltproc --disable-docs --disable-static
+ $(package)_config_opts_linux=--with-pic
+endef
+
+define $(package)_config_cmds
+ $($(package)_autoconf)
+endef
+
+define $(package)_build_cmds
+ $(MAKE)
+endef
+
+define $(package)_stage_cmds
+ $(MAKE) DESTDIR=$($(package)_staging_dir) install
+endef
diff --git a/depends/packages/libX11.mk b/depends/packages/libX11.mk
index 144021e34b..178d592ee6 100644
--- a/depends/packages/libX11.mk
+++ b/depends/packages/libX11.mk
@@ -7,7 +7,7 @@ $(package)_dependencies=libxcb xtrans xextproto xproto
define $(package)_set_vars
$(package)_config_opts=--disable-xkb --disable-static
-$(package)_config_opts_x86_64_linux=--with-pic
+$(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
diff --git a/depends/packages/libXau.mk b/depends/packages/libXau.mk
index 8c9b21846b..e87df2e4de 100644
--- a/depends/packages/libXau.mk
+++ b/depends/packages/libXau.mk
@@ -7,7 +7,7 @@ $(package)_dependencies=xproto
define $(package)_set_vars
$(package)_config_opts=--disable-shared
- $(package)_config_opts_x86_64_linux=--with-pic
+ $(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
diff --git a/depends/packages/native_cctools.mk b/depends/packages/native_cctools.mk
index ad989cb544..1675afe781 100644
--- a/depends/packages/native_cctools.mk
+++ b/depends/packages/native_cctools.mk
@@ -39,11 +39,11 @@ $(package)_ldflags+=-m32 -Wl,-rpath=\\$$$$$$$$\$$$$$$$$ORIGIN/../lib
$(package)_ldflags+=-L$$(native_cctools_extract_dir)/clang+llvm-3.2-x86-linux-ubuntu-12.04/lib
endef
define $(package)_extract_cmds
- tar --strip-components=1 -xf $(SOURCES_PATH)/$($(package)_toolchain4_file_name) && \
+ tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_toolchain4_file_name) && \
ln -sf $($(package)_source) cctools2odcctools/$($(package)_file_name) && \
- ln -sf $(SOURCES_PATH)/$($(package)_ld64_file_name) cctools2odcctools/$($(package)_ld64_file_name) && \
- ln -sf $(SOURCES_PATH)/$($(package)_dyld_file_name) cctools2odcctools/$($(package)_dyld_file_name) && \
- tar xf $(SOURCES_PATH)/$($(package)_clang_file_name) && \
+ ln -sf $($(package)_source_dir)/$($(package)_ld64_file_name) cctools2odcctools/$($(package)_ld64_file_name) && \
+ ln -sf $($(package)_source_dir)/$($(package)_dyld_file_name) cctools2odcctools/$($(package)_dyld_file_name) && \
+ tar xf $($(package)_source_dir)/$($(package)_clang_file_name) && \
mkdir -p $(SDK_PATH) sdks &&\
cd sdks; ln -sf $(OSX_SDK) MacOSX$(OSX_SDK_VERSION).sdk
endef
diff --git a/depends/packages/native_cdrkit.mk b/depends/packages/native_cdrkit.mk
index 2cc388b4b3..cf694edb30 100644
--- a/depends/packages/native_cdrkit.mk
+++ b/depends/packages/native_cdrkit.mk
@@ -1,6 +1,6 @@
package=native_cdrkit
$(package)_version=1.1.11
-$(package)_download_path=http://distro.ibiblio.org/fatdog/source/c
+$(package)_download_path=http://distro.ibiblio.org/fatdog/source/600/c
$(package)_file_name=cdrkit-$($(package)_version).tar.bz2
$(package)_sha256_hash=b50d64c214a65b1a79afe3a964c691931a4233e2ba605d793eb85d0ac3652564
$(package)_patches=cdrkit-deterministic.patch
diff --git a/depends/packages/native_comparisontool.mk b/depends/packages/native_comparisontool.mk
index 3d430d4306..d1b86dc2de 100644
--- a/depends/packages/native_comparisontool.mk
+++ b/depends/packages/native_comparisontool.mk
@@ -17,5 +17,5 @@ endef
define $(package)_stage_cmds
mkdir -p $($(package)_staging_prefix_dir)/share/$($(package)_install_dirname) && \
- mv $(SOURCES_PATH)/$($(package)_file_name) $($(package)_staging_prefix_dir)/share/$($(package)_install_dirname)/$($(package)_install_filename)
+ cp $($(package)_source) $($(package)_staging_prefix_dir)/share/$($(package)_install_dirname)/$($(package)_install_filename)
endef
diff --git a/depends/packages/openssl.mk b/depends/packages/openssl.mk
index 3ccdaf6f2f..ad64494c1f 100644
--- a/depends/packages/openssl.mk
+++ b/depends/packages/openssl.mk
@@ -1,21 +1,25 @@
package=openssl
-$(package)_version=1.0.1i
+$(package)_version=1.0.1j
$(package)_download_path=https://www.openssl.org/source
$(package)_file_name=$(package)-$($(package)_version).tar.gz
-$(package)_sha256_hash=3c179f46ca77069a6a0bac70212a9b3b838b2f66129cb52d568837fc79d8fcc7
+$(package)_sha256_hash=1b60ca8789ba6f03e8ef20da2293b8dc131c39d83814e775069f02d26354edf3
define $(package)_set_vars
$(package)_config_env=AR="$($(package)_ar)" RANLIB="$($(package)_ranlib)" CC="$($(package)_cc)"
$(package)_config_opts=--prefix=$(host_prefix) --openssldir=$(host_prefix)/etc/openssl no-zlib no-shared no-dso
$(package)_config_opts+=no-krb5 no-camellia no-capieng no-cast no-cms no-dtls1 no-gost no-gmp no-heartbeats no-idea no-jpake no-md2
-$(package)_config_opts+=no-mdc2 no-rc5 no-rdrand no-rfc3779 no-rsax no-sctp no-seed no-sha0 no-static_engine no-whirlpool no-rc2 no-rc4 no-ssl3
+$(package)_config_opts+=no-mdc2 no-rc5 no-rdrand no-rfc3779 no-rsax no-sctp no-seed no-sha0 no-static_engine no-whirlpool no-rc2 no-rc4 no-ssl2 no-ssl3
$(package)_config_opts+=$($(package)_cflags) $($(package)_cppflags)
-$(package)_config_opts_x86_64_linux=-fPIC linux-x86_64
-$(package)_config_opts_arm_linux=-fPIC linux-generic32
+$(package)_config_opts_linux=-fPIC
+$(package)_config_opts_x86_64_linux=linux-x86_64
+$(package)_config_opts_i686_linux=linux-generic32
+$(package)_config_opts_arm_linux=linux-generic32
+$(package)_config_opts_aarch64_linux=linux-generic64
+$(package)_config_opts_mipsel_linux=linux-generic32
+$(package)_config_opts_mips_linux=linux-generic32
$(package)_config_opts_x86_64_darwin=darwin64-x86_64-cc
$(package)_config_opts_x86_64_mingw32=mingw64
$(package)_config_opts_i686_mingw32=mingw
-$(package)_config_opts_i686_linux=linux-generic32 -fPIC
endef
define $(package)_preprocess_cmds
diff --git a/depends/packages/packages.mk b/depends/packages/packages.mk
index 260cadb214..bbf53cc2dc 100644
--- a/depends/packages/packages.mk
+++ b/depends/packages/packages.mk
@@ -2,8 +2,17 @@ packages:=boost openssl
native_packages := native_ccache native_comparisontool
qt_native_packages = native_protobuf
-qt_packages = qt qrencode protobuf
-qt_linux_packages=expat dbus libxcb xcb_proto libXau xproto freetype fontconfig libX11 xextproto libXext xtrans
+qt_packages = qrencode protobuf
+
+qt46_linux_packages = qt46 expat dbus libxcb xcb_proto libXau xproto freetype libX11 xextproto libXext xtrans libICE libSM
+qt5_linux_packages= qt expat dbus libxcb xcb_proto libXau xproto freetype fontconfig libX11 xextproto libXext xtrans
+
+qt_darwin_packages=qt
+qt_mingw32_packages=qt
+
+qt_linux_$(USE_LINUX_STATIC_QT5):=$(qt5_linux_packages)
+qt_linux_:=$(qt46_linux_packages)
+qt_linux_packages:=$(qt_linux_$(USE_LINUX_STATIC_QT5))
wallet_packages=bdb
diff --git a/depends/packages/protobuf.mk b/depends/packages/protobuf.mk
index 716f837853..5affad2837 100644
--- a/depends/packages/protobuf.mk
+++ b/depends/packages/protobuf.mk
@@ -7,7 +7,7 @@ $(package)_dependencies=native_$(package)
define $(package)_set_vars
$(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc
- $(package)_config_opts_x86_64_linux=--with-pic
+ $(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
diff --git a/depends/packages/qrencode.mk b/depends/packages/qrencode.mk
index 69d2982cbc..1ad329e94d 100644
--- a/depends/packages/qrencode.mk
+++ b/depends/packages/qrencode.mk
@@ -6,7 +6,7 @@ $(package)_sha256_hash=dfd71487513c871bad485806bfd1fdb304dedc84d2b01a8fb8e0940b5
define $(package)_set_vars
$(package)_config_opts=--disable-shared -without-tools --disable-sdltest
-$(package)_config_opts_x86_64_linux=--with-pic
+$(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
diff --git a/depends/packages/qt.mk b/depends/packages/qt.mk
index 5fbab57dd4..6a8e714a48 100644
--- a/depends/packages/qt.mk
+++ b/depends/packages/qt.mk
@@ -48,6 +48,7 @@ define $(package)_preprocess_cmds
sed -i.old "s|updateqm.commands = \$$$$\$$$$LRELEASE|updateqm.commands = $($(package)_extract_dir)/qttools/bin/lrelease|" qttranslations/translations/translations.pro && \
sed -i.old "s/src_plugins.depends = src_sql src_xml src_network/src_plugins.depends = src_xml src_network/" qtbase/src/src.pro && \
sed -i.old "/XIproto.h/d" qtbase/src/plugins/platforms/xcb/qxcbxsettings.cpp && \
+ sed -i.old 's/if \[ "$$$$XPLATFORM_MAC" = "yes" \]; then xspecvals=$$$$(macSDKify/if \[ "$$$$BUILD_ON_MAC" = "yes" \]; then xspecvals=$$$$(macSDKify/' qtbase/configure && \
mkdir -p qtbase/mkspecs/macx-clang-linux &&\
cp -f qtbase/mkspecs/macx-clang/Info.plist.lib qtbase/mkspecs/macx-clang-linux/ &&\
cp -f qtbase/mkspecs/macx-clang/Info.plist.app qtbase/mkspecs/macx-clang-linux/ &&\
@@ -93,5 +94,5 @@ endef
define $(package)_postprocess_cmds
rm -rf mkspecs/ lib/cmake/ && \
- rm lib/libQt5Bootstrap.a lib/lib*.la lib/lib*.prl
+ rm lib/libQt5Bootstrap.a lib/lib*.la lib/*.prl plugins/*/*.prl
endef
diff --git a/depends/packages/qt46.mk b/depends/packages/qt46.mk
new file mode 100644
index 0000000000..8fb30a5c44
--- /dev/null
+++ b/depends/packages/qt46.mk
@@ -0,0 +1,66 @@
+PACKAGE=qt46
+$(package)_version=4.6.4
+$(package)_download_path=http://download.qt-project.org/archive/qt/4.6/
+$(package)_file_name=qt-everywhere-opensource-src-$($(package)_version).tar.gz
+$(package)_sha256_hash=9ad4d46c721b53a429ed5a2eecfd3c239a9ab566562f183f99d3125f1a234250
+$(package)_dependencies=openssl freetype dbus libX11 xproto libXext libICE libSM
+$(package)_patches=stlfix.patch
+
+define $(package)_set_vars
+$(package)_config_opts = -prefix $(host_prefix) -headerdir $(host_prefix)/include/qt4 -bindir $(build_prefix)/bin
+$(package)_config_opts += -release -no-separate-debug-info -opensource -confirm-license
+$(package)_config_opts += -stl -qt-zlib
+
+$(package)_config_opts += -nomake examples -nomake tests -nomake tools -nomake translations -nomake demos -nomake docs
+$(package)_config_opts += -no-audio-backend -no-glib -no-nis -no-cups -no-iconv -no-gif -no-pch
+$(package)_config_opts += -no-xkb -no-xrender -no-xrandr -no-xfixes -no-xcursor -no-xinerama -no-xsync -no-xinput -no-mitshm -no-xshape
+$(package)_config_opts += -no-libtiff -no-fontconfig -openssl-linked
+$(package)_config_opts += -no-sql-db2 -no-sql-ibase -no-sql-oci -no-sql-tds -no-sql-mysql
+$(package)_config_opts += -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2
+$(package)_config_opts += -no-xmlpatterns -no-multimedia -no-phonon -no-scripttools -no-declarative
+$(package)_config_opts += -no-phonon-backend -no-webkit -no-javascript-jit -no-script
+$(package)_config_opts += -no-svg -no-libjpeg -no-libtiff -no-libpng -no-libmng -no-qt3support -no-opengl
+
+$(package)_config_opts_x86_64_linux += -platform linux-g++-64
+$(package)_config_opts_i686_linux = -platform linux-g++-32
+$(package)_build_env = QT_RCC_TEST=1
+endef
+
+define $(package)_preprocess_cmds
+ sed -i.old "s|/include /usr/include||" config.tests/unix/freetype/freetype.pri && \
+ sed -i.old "s|src_plugins.depends = src_gui src_sql src_svg|src_plugins.depends = src_gui src_sql|" src/src.pro && \
+ sed -i.old "s|\.lower(|\.toLower(|g" src/network/ssl/qsslsocket_openssl.cpp && \
+ sed -i.old "s|Key_BackSpace|Key_Backspace|" src/gui/itemviews/qabstractitemview.cpp && \
+ sed -i.old "s|/usr/X11R6/lib64|$(host_prefix)/lib|" mkspecs/*/*.conf && \
+ sed -i.old "s|/usr/X11R6/lib|$(host_prefix)/lib|" mkspecs/*/*.conf && \
+ sed -i.old "s|/usr/X11R6/include|$(host_prefix)/include|" mkspecs/*/*.conf && \
+ sed -i.old "s|QMAKE_LFLAGS_SHLIB\t+= -shared|QMAKE_LFLAGS_SHLIB\t+= -shared -Wl,--exclude-libs,ALL|" mkspecs/common/g++.conf && \
+ sed -i.old "/SSLv2_client_method/d" src/network/ssl/qsslsocket_openssl.cpp src/network/ssl/qsslsocket_openssl_symbols.cpp && \
+ sed -i.old "/SSLv2_server_method/d" src/network/ssl/qsslsocket_openssl.cpp src/network/ssl/qsslsocket_openssl_symbols.cpp && \
+ patch -p1 < $($(package)_patch_dir)/stlfix.patch
+endef
+
+define $(package)_config_cmds
+ export PKG_CONFIG_SYSROOT_DIR=/ && \
+ export PKG_CONFIG_LIBDIR=$(host_prefix)/lib/pkgconfig && \
+ export PKG_CONFIG_PATH=$(host_prefix)/share/pkgconfig && \
+ export CPATH=$(host_prefix)/include && \
+ OPENSSL_LIBS='-L$(host_prefix)/lib -lssl -lcrypto' ./configure $($(package)_config_opts) && \
+ cd tools/linguist/lrelease; ../../../bin/qmake -o Makefile lrelease.pro
+endef
+
+define $(package)_build_cmds
+ export CPATH=$(host_prefix)/include && \
+ $(MAKE) -C src && \
+ $(MAKE) -C tools/linguist/lrelease
+endef
+
+define $(package)_stage_cmds
+ $(MAKE) -C src INSTALL_ROOT=$($(package)_staging_dir) install && \
+ $(MAKE) -C tools/linguist/lrelease INSTALL_ROOT=$($(package)_staging_dir) install
+endef
+
+define $(package)_postprocess_cmds
+ rm -rf mkspecs/ lib/cmake/ lib/*.prl lib/*.la && \
+ find native/bin -type f -exec mv {} {}-qt4 \;
+endef
diff --git a/depends/packages/xcb_proto.mk b/depends/packages/xcb_proto.mk
index 726e3048c3..0c7c958d62 100644
--- a/depends/packages/xcb_proto.mk
+++ b/depends/packages/xcb_proto.mk
@@ -6,7 +6,7 @@ $(package)_sha256_hash=7ef40ddd855b750bc597d2a435da21e55e502a0fefa85b274f2c92280
define $(package)_set_vars
$(package)_config_opts=--disable-shared
- $(package)_config_opts_x86_64_linux=--with-pic
+ $(package)_config_opts_linux=--with-pic
endef
define $(package)_config_cmds
diff --git a/depends/packages/xtrans.mk b/depends/packages/xtrans.mk
index b973149797..99eefa6d5e 100644
--- a/depends/packages/xtrans.mk
+++ b/depends/packages/xtrans.mk
@@ -6,7 +6,7 @@ $(package)_sha256_hash=054d4ee3efd52508c753e9f7bc655ef185a29bd2850dd9e2fc2ccc335
$(package)_dependencies=
define $(package)_set_vars
-$(package)_config_opts_x86_64_linux=--with-pic --disable-static
+$(package)_config_opts_linux=--with-pic --disable-static
endef
define $(package)_config_cmds
diff --git a/depends/patches/qt46/stlfix.patch b/depends/patches/qt46/stlfix.patch
new file mode 100644
index 0000000000..f8f6fb04b0
--- /dev/null
+++ b/depends/patches/qt46/stlfix.patch
@@ -0,0 +1,10 @@
+--- old/config.tests/unix/stl/stltest.cpp 2011-06-23 03:45:23.000000000 -0400
++++ new/config.tests/unix/stl/stltest.cpp 2014-08-28 00:54:04.154837604 -0400
+@@ -49,6 +49,7 @@
+ #include <vector>
+ #include <algorithm>
+ #include <iostream>
++#include <cstddef>
+
+ // something mean to see if the compiler and C++ standard lib are good enough
+ template<class K, class T>