mirror of
				https://git.wownero.com/wownero/wownero.git
				synced 2024-08-15 01:03:23 +00:00 
			
		
		
		
	Initial depends addition
Depends cross compiles project dependencies for linux, mac and windows and multiple architectures. Depends is original work by Cory Fields and used in bitcoin and a wide range of bitcoin related projects.
This commit is contained in:
		
							parent
							
								
									177148468a
								
							
						
					
					
						commit
						82c224ffa8
					
				
					 54 changed files with 5562 additions and 0 deletions
				
			
		
							
								
								
									
										10
									
								
								contrib/depends/.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								contrib/depends/.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,10 @@
 | 
				
			||||||
 | 
					SDKs/
 | 
				
			||||||
 | 
					work/
 | 
				
			||||||
 | 
					built/
 | 
				
			||||||
 | 
					sources/
 | 
				
			||||||
 | 
					config.site
 | 
				
			||||||
 | 
					x86_64*
 | 
				
			||||||
 | 
					i686*
 | 
				
			||||||
 | 
					mips*
 | 
				
			||||||
 | 
					arm*
 | 
				
			||||||
 | 
					aarch64*
 | 
				
			||||||
							
								
								
									
										181
									
								
								contrib/depends/Makefile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										181
									
								
								contrib/depends/Makefile
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,181 @@
 | 
				
			||||||
 | 
					.NOTPARALLEL :
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					SOURCES_PATH ?= $(BASEDIR)/sources
 | 
				
			||||||
 | 
					BASE_CACHE ?= $(BASEDIR)/built
 | 
				
			||||||
 | 
					SDK_PATH ?= $(BASEDIR)/SDKs
 | 
				
			||||||
 | 
					NO_QT ?=
 | 
				
			||||||
 | 
					NO_WALLET ?=
 | 
				
			||||||
 | 
					NO_UPNP ?=
 | 
				
			||||||
 | 
					FALLBACK_DOWNLOAD_PATH ?= https://bitcoincore.org/depends-sources
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BUILD = $(shell ./config.guess)
 | 
				
			||||||
 | 
					HOST ?= $(BUILD)
 | 
				
			||||||
 | 
					PATCHES_PATH = $(BASEDIR)/patches
 | 
				
			||||||
 | 
					BASEDIR = $(CURDIR)
 | 
				
			||||||
 | 
					HASH_LENGTH:=11
 | 
				
			||||||
 | 
					DOWNLOAD_CONNECT_TIMEOUT:=10
 | 
				
			||||||
 | 
					DOWNLOAD_RETRIES:=3
 | 
				
			||||||
 | 
					HOST_ID_SALT ?= salt
 | 
				
			||||||
 | 
					BUILD_ID_SALT ?= salt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					host:=$(BUILD)
 | 
				
			||||||
 | 
					ifneq ($(HOST),)
 | 
				
			||||||
 | 
					host:=$(HOST)
 | 
				
			||||||
 | 
					host_toolchain:=$(HOST)-
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifneq ($(DEBUG),)
 | 
				
			||||||
 | 
					release_type=debug
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					release_type=release
 | 
				
			||||||
 | 
					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))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build_arch =$(firstword $(subst -, ,$(build)))
 | 
				
			||||||
 | 
					build_vendor=$(word 2,$(subst -, ,$(build)))
 | 
				
			||||||
 | 
					full_build_os:=$(subst $(build_arch)-$(build_vendor)-,,$(build))
 | 
				
			||||||
 | 
					build_os:=$(findstring linux,$(full_build_os))
 | 
				
			||||||
 | 
					build_os+=$(findstring darwin,$(full_build_os))
 | 
				
			||||||
 | 
					build_os:=$(strip $(build_os))
 | 
				
			||||||
 | 
					ifeq ($(build_os),)
 | 
				
			||||||
 | 
					build_os=$(full_build_os)
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					host_arch=$(firstword $(subst -, ,$(canonical_host)))
 | 
				
			||||||
 | 
					host_vendor=$(word 2,$(subst -, ,$(canonical_host)))
 | 
				
			||||||
 | 
					full_host_os:=$(subst $(host_arch)-$(host_vendor)-,,$(canonical_host))
 | 
				
			||||||
 | 
					host_os:=$(findstring linux,$(full_host_os))
 | 
				
			||||||
 | 
					host_os+=$(findstring darwin,$(full_host_os))
 | 
				
			||||||
 | 
					host_os+=$(findstring mingw32,$(full_host_os))
 | 
				
			||||||
 | 
					host_os:=$(strip $(host_os))
 | 
				
			||||||
 | 
					ifeq ($(host_os),)
 | 
				
			||||||
 | 
					host_os=$(full_host_os)
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_prefix=$(BASEDIR)/$(host)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_host=$(host)
 | 
				
			||||||
 | 
					host_prefix=$($(host_arch)_$(host_os)_prefix)
 | 
				
			||||||
 | 
					build_prefix=$(host_prefix)/native
 | 
				
			||||||
 | 
					build_host=$(build)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					AT_$(V):=
 | 
				
			||||||
 | 
					AT_:=@
 | 
				
			||||||
 | 
					AT:=$(AT_$(V))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					all: install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include hosts/$(host_os).mk
 | 
				
			||||||
 | 
					include hosts/default.mk
 | 
				
			||||||
 | 
					include builders/$(build_os).mk
 | 
				
			||||||
 | 
					include builders/default.mk
 | 
				
			||||||
 | 
					include packages/packages.mk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build_id_string:=$(BUILD_ID_SALT)
 | 
				
			||||||
 | 
					build_id_string+=$(shell $(build_CC) --version 2>/dev/null)
 | 
				
			||||||
 | 
					build_id_string+=$(shell $(build_AR) --version 2>/dev/null)
 | 
				
			||||||
 | 
					build_id_string+=$(shell $(build_CXX) --version 2>/dev/null)
 | 
				
			||||||
 | 
					build_id_string+=$(shell $(build_RANLIB) --version 2>/dev/null)
 | 
				
			||||||
 | 
					build_id_string+=$(shell $(build_STRIP) --version 2>/dev/null)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_id_string:=$(HOST_ID_SALT)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_id_string+=$(shell $(host_CC) --version 2>/dev/null)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_id_string+=$(shell $(host_AR) --version 2>/dev/null)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_id_string+=$(shell $(host_CXX) --version 2>/dev/null)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_id_string+=$(shell $(host_RANLIB) --version 2>/dev/null)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_id_string+=$(shell $(host_STRIP) --version 2>/dev/null)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					qt_packages_$(NO_QT) = $(qt_packages) $(qt_$(host_os)_packages) $(qt_$(host_arch)_$(host_os)_packages)
 | 
				
			||||||
 | 
					wallet_packages_$(NO_WALLET) = $(wallet_packages)
 | 
				
			||||||
 | 
					upnp_packages_$(NO_UPNP) = $(upnp_packages)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					packages += $($(host_arch)_$(host_os)_packages) $($(host_os)_packages) $(qt_packages_) $(wallet_packages_) $(upnp_packages_)
 | 
				
			||||||
 | 
					native_packages += $($(host_arch)_$(host_os)_native_packages) $($(host_os)_native_packages)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifneq ($(qt_packages_),)
 | 
				
			||||||
 | 
					native_packages += $(qt_native_packages)
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					all_packages = $(packages) $(native_packages)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					meta_depends = Makefile funcs.mk builders/default.mk hosts/default.mk hosts/$(host_os).mk builders/$(build_os).mk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_native_toolchain?=$($(host_os)_native_toolchain)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include funcs.mk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					toolchain_path=$($($(host_arch)_$(host_os)_native_toolchain)_prefixbin)
 | 
				
			||||||
 | 
					final_build_id_long+=$(shell $(build_SHA256SUM) config.site.in)
 | 
				
			||||||
 | 
					final_build_id+=$(shell echo -n "$(final_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH))
 | 
				
			||||||
 | 
					$(host_prefix)/.stamp_$(final_build_id): $(native_packages) $(packages)
 | 
				
			||||||
 | 
						$(AT)rm -rf $(@D)
 | 
				
			||||||
 | 
						$(AT)mkdir -p $(@D)
 | 
				
			||||||
 | 
						$(AT)echo copying packages: $^
 | 
				
			||||||
 | 
						$(AT)echo to: $(@D)
 | 
				
			||||||
 | 
						$(AT)cd $(@D); $(foreach package,$^, tar xf $($(package)_cached); )
 | 
				
			||||||
 | 
						$(AT)touch $@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(host_prefix)/share/config.site : config.site.in $(host_prefix)/.stamp_$(final_build_id)
 | 
				
			||||||
 | 
						$(AT)@mkdir -p $(@D)
 | 
				
			||||||
 | 
						$(AT)sed -e 's|@HOST@|$(host)|' \
 | 
				
			||||||
 | 
					            -e 's|@CC@|$(toolchain_path)$(host_CC)|' \
 | 
				
			||||||
 | 
					            -e 's|@CXX@|$(toolchain_path)$(host_CXX)|' \
 | 
				
			||||||
 | 
					            -e 's|@AR@|$(toolchain_path)$(host_AR)|' \
 | 
				
			||||||
 | 
					            -e 's|@RANLIB@|$(toolchain_path)$(host_RANLIB)|' \
 | 
				
			||||||
 | 
					            -e 's|@NM@|$(toolchain_path)$(host_NM)|' \
 | 
				
			||||||
 | 
					            -e 's|@STRIP@|$(toolchain_path)$(host_STRIP)|' \
 | 
				
			||||||
 | 
					            -e 's|@build_os@|$(build_os)|' \
 | 
				
			||||||
 | 
					            -e 's|@host_os@|$(host_os)|' \
 | 
				
			||||||
 | 
					            -e 's|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|' \
 | 
				
			||||||
 | 
					            -e 's|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|' \
 | 
				
			||||||
 | 
					            -e 's|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|' \
 | 
				
			||||||
 | 
					            -e 's|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|' \
 | 
				
			||||||
 | 
					            -e 's|@no_qt@|$(NO_QT)|' \
 | 
				
			||||||
 | 
					            -e 's|@no_wallet@|$(NO_WALLET)|' \
 | 
				
			||||||
 | 
					            -e 's|@no_upnp@|$(NO_UPNP)|' \
 | 
				
			||||||
 | 
					            -e 's|@debug@|$(DEBUG)|' \
 | 
				
			||||||
 | 
					            $< > $@
 | 
				
			||||||
 | 
						$(AT)touch $@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define check_or_remove_cached
 | 
				
			||||||
 | 
					  mkdir -p $(BASE_CACHE)/$(host)/$(package) && cd $(BASE_CACHE)/$(host)/$(package); \
 | 
				
			||||||
 | 
					  $(build_SHA256SUM) -c $($(package)_cached_checksum) >/dev/null 2>/dev/null || \
 | 
				
			||||||
 | 
					  ( rm -f $($(package)_cached_checksum); \
 | 
				
			||||||
 | 
					    if test -f "$($(package)_cached)"; then echo "Checksum mismatch for $(package). Forcing rebuild.."; rm -f $($(package)_cached_checksum) $($(package)_cached); fi )
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define check_or_remove_sources
 | 
				
			||||||
 | 
					  mkdir -p $($(package)_source_dir); cd $($(package)_source_dir); \
 | 
				
			||||||
 | 
					  test -f $($(package)_fetched) && ( $(build_SHA256SUM) -c $($(package)_fetched) >/dev/null 2>/dev/null || \
 | 
				
			||||||
 | 
					    ( echo "Checksum missing or mismatched for $(package) source. Forcing re-download."; \
 | 
				
			||||||
 | 
					      rm -f $($(package)_all_sources) $($(1)_fetched))) || true
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					check-packages:
 | 
				
			||||||
 | 
						@$(foreach package,$(all_packages),$(call check_or_remove_cached,$(package));)
 | 
				
			||||||
 | 
					check-sources:
 | 
				
			||||||
 | 
						@$(foreach package,$(all_packages),$(call check_or_remove_sources,$(package));)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(host_prefix)/share/config.site: check-packages
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					check-packages: check-sources
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					install: check-packages $(host_prefix)/share/config.site
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					download-one: check-sources $(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 check-packages check-sources
 | 
				
			||||||
							
								
								
									
										59
									
								
								contrib/depends/README.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								contrib/depends/README.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,59 @@
 | 
				
			||||||
 | 
					### Usage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To build dependencies for the current arch+OS:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    make
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To build for another arch/OS:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    make HOST=host-platform-triplet
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    make HOST=x86_64-w64-mingw32 -j4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A prefix will be generated that's suitable for plugging into Bitcoin's
 | 
				
			||||||
 | 
					configure. In the above example, a dir named x86_64-w64-mingw32 will be
 | 
				
			||||||
 | 
					created. To use it for Bitcoin:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ./configure --prefix=`pwd`/depends/x86_64-w64-mingw32
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Common `host-platform-triplets` for cross compilation are:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- `i686-w64-mingw32` for Win32
 | 
				
			||||||
 | 
					- `x86_64-w64-mingw32` for Win64
 | 
				
			||||||
 | 
					- `x86_64-apple-darwin11` for MacOSX
 | 
				
			||||||
 | 
					- `arm-linux-gnueabihf` for Linux ARM 32 bit
 | 
				
			||||||
 | 
					- `aarch64-linux-gnu` for Linux ARM 64 bit
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					No other options are needed, the paths are automatically configured.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Dependency Options:
 | 
				
			||||||
 | 
					The following can be set when running make: make FOO=bar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    SOURCES_PATH: downloaded sources will be placed here
 | 
				
			||||||
 | 
					    BASE_CACHE: built packages will be placed here
 | 
				
			||||||
 | 
					    SDK_PATH: Path where sdk's can be found (used by OSX)
 | 
				
			||||||
 | 
					    FALLBACK_DOWNLOAD_PATH: If a source file can't be fetched, try here before giving up
 | 
				
			||||||
 | 
					    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
 | 
				
			||||||
 | 
					    HOST_ID_SALT: Optional salt to use when generating host package ids
 | 
				
			||||||
 | 
					    BUILD_ID_SALT: Optional salt to use when generating build package ids
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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 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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Other documentation
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [description.md](description.md): General description of the depends system
 | 
				
			||||||
 | 
					- [packages.md](packages.md): Steps for adding packages
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/builders/darwin.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/builders/darwin.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					build_darwin_CC: = $(shell xcrun -f clang)
 | 
				
			||||||
 | 
					build_darwin_CXX: = $(shell xcrun -f clang++)
 | 
				
			||||||
 | 
					build_darwin_AR: = $(shell xcrun -f ar)
 | 
				
			||||||
 | 
					build_darwin_RANLIB: = $(shell xcrun -f ranlib)
 | 
				
			||||||
 | 
					build_darwin_STRIP: = $(shell xcrun -f strip)
 | 
				
			||||||
 | 
					build_darwin_OTOOL: = $(shell xcrun -f otool)
 | 
				
			||||||
 | 
					build_darwin_NM: = $(shell xcrun -f nm)
 | 
				
			||||||
 | 
					build_darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool)
 | 
				
			||||||
 | 
					build_darwin_SHA256SUM = shasum -a 256
 | 
				
			||||||
 | 
					build_darwin_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#darwin host on darwin builder. overrides darwin host preferences.
 | 
				
			||||||
 | 
					darwin_CC=$(shell xcrun -f clang) -mmacosx-version-min=$(OSX_MIN_VERSION)
 | 
				
			||||||
 | 
					darwin_CXX:=$(shell xcrun -f clang++) -mmacosx-version-min=$(OSX_MIN_VERSION) -stdlib=libc++
 | 
				
			||||||
 | 
					darwin_AR:=$(shell xcrun -f ar)
 | 
				
			||||||
 | 
					darwin_RANLIB:=$(shell xcrun -f ranlib)
 | 
				
			||||||
 | 
					darwin_STRIP:=$(shell xcrun -f strip)
 | 
				
			||||||
 | 
					darwin_LIBTOOL:=$(shell xcrun -f libtool)
 | 
				
			||||||
 | 
					darwin_OTOOL:=$(shell xcrun -f otool)
 | 
				
			||||||
 | 
					darwin_NM:=$(shell xcrun -f nm)
 | 
				
			||||||
 | 
					darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool)
 | 
				
			||||||
 | 
					darwin_native_toolchain=
 | 
				
			||||||
							
								
								
									
										20
									
								
								contrib/depends/builders/default.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								contrib/depends/builders/default.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,20 @@
 | 
				
			||||||
 | 
					default_build_CC = gcc
 | 
				
			||||||
 | 
					default_build_CXX = g++
 | 
				
			||||||
 | 
					default_build_AR = ar
 | 
				
			||||||
 | 
					default_build_RANLIB = ranlib
 | 
				
			||||||
 | 
					default_build_STRIP = strip
 | 
				
			||||||
 | 
					default_build_NM = nm
 | 
				
			||||||
 | 
					default_build_OTOOL = otool
 | 
				
			||||||
 | 
					default_build_INSTALL_NAME_TOOL = install_name_tool
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define add_build_tool_func
 | 
				
			||||||
 | 
					build_$(build_os)_$1 ?= $$(default_build_$1)
 | 
				
			||||||
 | 
					build_$(build_arch)_$(build_os)_$1 ?= $$(build_$(build_os)_$1)
 | 
				
			||||||
 | 
					build_$1=$$(build_$(build_arch)_$(build_os)_$1)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					$(foreach var,CC CXX AR RANLIB NM STRIP SHA256SUM DOWNLOAD OTOOL INSTALL_NAME_TOOL,$(eval $(call add_build_tool_func,$(var))))
 | 
				
			||||||
 | 
					define add_build_flags_func
 | 
				
			||||||
 | 
					build_$(build_arch)_$(build_os)_$1 += $(build_$(build_os)_$1)
 | 
				
			||||||
 | 
					build_$1=$$(build_$(build_arch)_$(build_os)_$1)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					$(foreach flags, CFLAGS CXXFLAGS LDFLAGS, $(eval $(call add_build_flags_func,$(flags))))
 | 
				
			||||||
							
								
								
									
										2
									
								
								contrib/depends/builders/linux.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								contrib/depends/builders/linux.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,2 @@
 | 
				
			||||||
 | 
					build_linux_SHA256SUM = sha256sum
 | 
				
			||||||
 | 
					build_linux_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o
 | 
				
			||||||
							
								
								
									
										1462
									
								
								contrib/depends/config.guess
									
										
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1462
									
								
								contrib/depends/config.guess
									
										
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										99
									
								
								contrib/depends/config.site.in
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										99
									
								
								contrib/depends/config.site.in
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,99 @@
 | 
				
			||||||
 | 
					depends_prefix="`dirname ${ac_site_file}`/.."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cross_compiling=maybe
 | 
				
			||||||
 | 
					host_alias=@HOST@
 | 
				
			||||||
 | 
					ac_tool_prefix=${host_alias}-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -z $with_boost; then
 | 
				
			||||||
 | 
					  with_boost=$depends_prefix
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -z $with_qt_plugindir; then
 | 
				
			||||||
 | 
					  with_qt_plugindir=$depends_prefix/plugins
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -z $with_qt_translationdir; then
 | 
				
			||||||
 | 
					  with_qt_translationdir=$depends_prefix/translations
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -z $with_qt_bindir; then
 | 
				
			||||||
 | 
					  with_qt_bindir=$depends_prefix/native/bin
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -z $with_protoc_bindir; then
 | 
				
			||||||
 | 
					  with_protoc_bindir=$depends_prefix/native/bin
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -z $enable_wallet && test -n "@no_wallet@"; then
 | 
				
			||||||
 | 
					  enable_wallet=no
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -z $with_miniupnpc && test -n "@no_upnp@"; then
 | 
				
			||||||
 | 
					  with_miniupnpc=no
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -z $with_gui && test -n "@no_qt@"; then
 | 
				
			||||||
 | 
					  with_gui=no
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test x@host_os@ = xdarwin; then
 | 
				
			||||||
 | 
					  BREW=no
 | 
				
			||||||
 | 
					  PORT=no
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test x@host_os@ = xmingw32; then
 | 
				
			||||||
 | 
					  if test -z $with_qt_incdir; then
 | 
				
			||||||
 | 
					    with_qt_incdir=$depends_prefix/include
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					  if test -z $with_qt_libdir; then
 | 
				
			||||||
 | 
					    with_qt_libdir=$depends_prefix/lib
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PATH=$depends_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=$depends_prefix/lib/pkgconfig
 | 
				
			||||||
 | 
					export PKG_CONFIG_PATH=$depends_prefix/share/pkgconfig
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CPPFLAGS="-I$depends_prefix/include/ $CPPFLAGS"
 | 
				
			||||||
 | 
					LDFLAGS="-L$depends_prefix/lib $LDFLAGS"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CC="@CC@"
 | 
				
			||||||
 | 
					CXX="@CXX@"
 | 
				
			||||||
 | 
					OBJC="${CC}"
 | 
				
			||||||
 | 
					CCACHE=$depends_prefix/native/bin/ccache
 | 
				
			||||||
 | 
					PYTHONPATH=$depends_prefix/native/lib/python/dist-packages:$PYTHONPATH
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -n "@AR@"; then
 | 
				
			||||||
 | 
					  AR=@AR@
 | 
				
			||||||
 | 
					  ac_cv_path_ac_pt_AR=${AR}
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -n "@RANLIB@"; then
 | 
				
			||||||
 | 
					  RANLIB=@RANLIB@
 | 
				
			||||||
 | 
					  ac_cv_path_ac_pt_RANLIB=${RANLIB}
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -n "@NM@"; then
 | 
				
			||||||
 | 
					  NM=@NM@
 | 
				
			||||||
 | 
					  ac_cv_path_ac_pt_NM=${NM}
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -n "@debug@"; then
 | 
				
			||||||
 | 
					  enable_reduce_exports=no
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if test -n "@CFLAGS@"; then
 | 
				
			||||||
 | 
					  CFLAGS="@CFLAGS@ $CFLAGS"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -n "@CXXFLAGS@"; then
 | 
				
			||||||
 | 
					  CXXFLAGS="@CXXFLAGS@ $CXXFLAGS"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -n "@CPPFLAGS@"; then
 | 
				
			||||||
 | 
					  CPPFLAGS="@CPPFLAGS@ $CPPFLAGS"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					if test -n "@LDFLAGS@"; then
 | 
				
			||||||
 | 
					  LDFLAGS="@LDFLAGS@ $LDFLAGS"
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
							
								
								
									
										1828
									
								
								contrib/depends/config.sub
									
										
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1828
									
								
								contrib/depends/config.sub
									
										
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										53
									
								
								contrib/depends/description.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								contrib/depends/description.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,53 @@
 | 
				
			||||||
 | 
					This is a system of building and caching dependencies necessary for building Bitcoin. 
 | 
				
			||||||
 | 
					There are several features that make it different from most similar systems:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### It is designed to be builder and host agnostic
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In theory, binaries for any target OS/architecture can be created, from a
 | 
				
			||||||
 | 
					builder running any OS/architecture. In practice, build-side tools must be
 | 
				
			||||||
 | 
					specified when the defaults don't fit, and packages must be amended to work
 | 
				
			||||||
 | 
					on new hosts. For now, a build architecture of x86_64 is assumed, either on
 | 
				
			||||||
 | 
					Linux or OSX.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### No reliance on timestamps
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					File presence is used to determine what needs to be built. This makes the
 | 
				
			||||||
 | 
					results distributable and easily digestable by automated builders.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Each build only has its specified dependencies available at build-time.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For each build, the sysroot is wiped and the (recursive) dependencies are
 | 
				
			||||||
 | 
					installed. This makes each build deterministic, since there will never be any
 | 
				
			||||||
 | 
					unknown files available to cause side-effects.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Each package is cached and only rebuilt as needed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Before building, a unique build-id is generated for each package. This id
 | 
				
			||||||
 | 
					consists of a hash of all files used to build the package (Makefiles, packages,
 | 
				
			||||||
 | 
					etc), and as well as a hash of the same data for each recursive dependency. If
 | 
				
			||||||
 | 
					any portion of a package's build recipe changes, it will be rebuilt as well as
 | 
				
			||||||
 | 
					any other package that depends on it. If any of the main makefiles (Makefile, 
 | 
				
			||||||
 | 
					funcs.mk, etc) are changed, all packages will be rebuilt. After building, the
 | 
				
			||||||
 | 
					results are cached into a tarball that can be re-used and distributed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Package build results are (relatively) deterministic.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Each package is configured and patched so that it will yield the same
 | 
				
			||||||
 | 
					build-results with each consequent build, within a reasonable set of
 | 
				
			||||||
 | 
					constraints. Some things like timestamp insertion are unavoidable, and are
 | 
				
			||||||
 | 
					beyond the scope of this system. Additionally, the toolchain itself must be
 | 
				
			||||||
 | 
					capable of deterministic results. When revisions are properly bumped, a cached
 | 
				
			||||||
 | 
					build should represent an exact single payload.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Sources are fetched and verified automatically
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Each package must define its source location and checksum. The build will fail
 | 
				
			||||||
 | 
					if the fetched source does not match. Sources may be pre-seeded and/or cached
 | 
				
			||||||
 | 
					as desired.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Self-cleaning
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Build and staging dirs are wiped after use, and any previous version of a
 | 
				
			||||||
 | 
					cached result is removed following a successful build. Automated builders
 | 
				
			||||||
 | 
					should be able to build each revision and store the results with no further
 | 
				
			||||||
 | 
					intervention.
 | 
				
			||||||
							
								
								
									
										245
									
								
								contrib/depends/funcs.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										245
									
								
								contrib/depends/funcs.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,245 @@
 | 
				
			||||||
 | 
					define int_vars
 | 
				
			||||||
 | 
					#Set defaults for vars which may be overridden per-package
 | 
				
			||||||
 | 
					$(1)_cc=$($($(1)_type)_CC)
 | 
				
			||||||
 | 
					$(1)_cxx=$($($(1)_type)_CXX)
 | 
				
			||||||
 | 
					$(1)_objc=$($($(1)_type)_OBJC)
 | 
				
			||||||
 | 
					$(1)_objcxx=$($($(1)_type)_OBJCXX)
 | 
				
			||||||
 | 
					$(1)_ar=$($($(1)_type)_AR)
 | 
				
			||||||
 | 
					$(1)_ranlib=$($($(1)_type)_RANLIB)
 | 
				
			||||||
 | 
					$(1)_libtool=$($($(1)_type)_LIBTOOL)
 | 
				
			||||||
 | 
					$(1)_nm=$($($(1)_type)_NM)
 | 
				
			||||||
 | 
					$(1)_cflags=$($($(1)_type)_CFLAGS) $($($(1)_type)_$(release_type)_CFLAGS)
 | 
				
			||||||
 | 
					$(1)_cxxflags=$($($(1)_type)_CXXFLAGS) $($($(1)_type)_$(release_type)_CXXFLAGS)
 | 
				
			||||||
 | 
					$(1)_ldflags=$($($(1)_type)_LDFLAGS) $($($(1)_type)_$(release_type)_LDFLAGS) -L$($($(1)_type)_prefix)/lib
 | 
				
			||||||
 | 
					$(1)_cppflags=$($($(1)_type)_CPPFLAGS) $($($(1)_type)_$(release_type)_CPPFLAGS) -I$($($(1)_type)_prefix)/include
 | 
				
			||||||
 | 
					$(1)_recipe_hash:=
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define int_get_all_dependencies
 | 
				
			||||||
 | 
					$(sort $(foreach dep,$(2),$(2) $(call int_get_all_dependencies,$(1),$($(dep)_dependencies))))
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define fetch_file_inner
 | 
				
			||||||
 | 
					    ( mkdir -p $$($(1)_download_dir) && echo Fetching $(3) from $(2) && \
 | 
				
			||||||
 | 
					    $(build_DOWNLOAD) "$$($(1)_download_dir)/$(4).temp" "$(2)/$(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 fetch_file
 | 
				
			||||||
 | 
					    ( test -f $$($(1)_source_dir)/$(4) || \
 | 
				
			||||||
 | 
					    ( $(call fetch_file_inner,$(1),$(2),$(3),$(4),$(5)) || \
 | 
				
			||||||
 | 
					      $(call fetch_file_inner,$(1),$(FALLBACK_DOWNLOAD_PATH),$(3),$(4),$(5))))
 | 
				
			||||||
 | 
					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)) | cut -d" " -f1))
 | 
				
			||||||
 | 
					$(eval $(1)_recipe_hash:=$(shell echo -n "$($(1)_all_file_checksums)" | $(build_SHA256SUM) | cut -d" " -f1))
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define int_get_build_id
 | 
				
			||||||
 | 
					$(eval $(1)_dependencies += $($(1)_$(host_arch)_$(host_os)_dependencies) $($(1)_$(host_os)_dependencies))
 | 
				
			||||||
 | 
					$(eval $(1)_all_dependencies:=$(call int_get_all_dependencies,$(1),$($($(1)_type)_native_toolchain) $($(1)_dependencies)))
 | 
				
			||||||
 | 
					$(foreach dep,$($(1)_all_dependencies),$(eval $(1)_build_id_deps+=$(dep)-$($(dep)_version)-$($(dep)_recipe_hash)))
 | 
				
			||||||
 | 
					$(eval $(1)_build_id_long:=$(1)-$($(1)_version)-$($(1)_recipe_hash)-$(release_type) $($(1)_build_id_deps) $($($(1)_type)_id_string))
 | 
				
			||||||
 | 
					$(eval $(1)_build_id:=$(shell echo -n "$($(1)_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH)))
 | 
				
			||||||
 | 
					final_build_id_long+=$($(package)_build_id_long)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#compute package-specific paths
 | 
				
			||||||
 | 
					$(1)_build_subdir?=.
 | 
				
			||||||
 | 
					$(1)_download_file?=$($(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)_cached_checksum:=$(BASE_CACHE)/$(host)/$(1)/$(1)-$($(1)_version)-$($(1)_build_id).tar.gz.hash
 | 
				
			||||||
 | 
					$(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
 | 
				
			||||||
 | 
					$(1)_all_sources=$($(1)_file_name) $($(1)_extra_sources)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#stamps
 | 
				
			||||||
 | 
					$(1)_fetched=$(SOURCES_PATH)/download-stamps/.stamp_fetched-$(1)-$($(1)_file_name).hash
 | 
				
			||||||
 | 
					$(1)_extracted=$$($(1)_extract_dir)/.stamp_extracted
 | 
				
			||||||
 | 
					$(1)_preprocessed=$$($(1)_extract_dir)/.stamp_preprocessed
 | 
				
			||||||
 | 
					$(1)_cleaned=$$($(1)_extract_dir)/.stamp_cleaned
 | 
				
			||||||
 | 
					$(1)_built=$$($(1)_build_dir)/.stamp_built
 | 
				
			||||||
 | 
					$(1)_configured=$$($(1)_build_dir)/.stamp_configured
 | 
				
			||||||
 | 
					$(1)_staged=$$($(1)_staging_dir)/.stamp_staged
 | 
				
			||||||
 | 
					$(1)_postprocessed=$$($(1)_staging_prefix_dir)/.stamp_postprocessed
 | 
				
			||||||
 | 
					$(1)_download_path_fixed=$(subst :,\:,$$($(1)_download_path))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#default commands
 | 
				
			||||||
 | 
					$(1)_fetch_cmds ?= $(call fetch_file,$(1),$(subst \:,:,$$($(1)_download_path_fixed)),$$($(1)_download_file),$($(1)_file_name),$($(1)_sha256_hash))
 | 
				
			||||||
 | 
					$(1)_extract_cmds ?= mkdir -p $$($(1)_extract_dir) && echo "$$($(1)_sha256_hash)  $$($(1)_source)" > $$($(1)_extract_dir)/.$$($(1)_file_name).hash &&  $(build_SHA256SUM) -c $$($(1)_extract_dir)/.$$($(1)_file_name).hash && tar --strip-components=1 -xf $$($(1)_source)
 | 
				
			||||||
 | 
					$(1)_preprocess_cmds ?=
 | 
				
			||||||
 | 
					$(1)_build_cmds ?=
 | 
				
			||||||
 | 
					$(1)_config_cmds ?=
 | 
				
			||||||
 | 
					$(1)_stage_cmds ?=
 | 
				
			||||||
 | 
					$(1)_set_vars ?=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					all_sources+=$$($(1)_fetched)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					#$(foreach dep_target,$($(1)_all_dependencies),$(eval $(1)_dependency_targets=$($(dep_target)_cached)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define int_config_attach_build_config
 | 
				
			||||||
 | 
					$(eval $(call $(1)_set_vars,$(1)))
 | 
				
			||||||
 | 
					$(1)_cflags+=$($(1)_cflags_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cflags+=$($(1)_cflags_$(host_arch)) $($(1)_cflags_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cflags+=$($(1)_cflags_$(host_os)) $($(1)_cflags_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cflags+=$($(1)_cflags_$(host_arch)_$(host_os)) $($(1)_cflags_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_cxxflags+=$($(1)_cxxflags_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cxxflags+=$($(1)_cxxflags_$(host_arch)) $($(1)_cxxflags_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cxxflags+=$($(1)_cxxflags_$(host_os)) $($(1)_cxxflags_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cxxflags+=$($(1)_cxxflags_$(host_arch)_$(host_os)) $($(1)_cxxflags_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_cppflags+=$($(1)_cppflags_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cppflags+=$($(1)_cppflags_$(host_arch)) $($(1)_cppflags_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cppflags+=$($(1)_cppflags_$(host_os)) $($(1)_cppflags_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_cppflags+=$($(1)_cppflags_$(host_arch)_$(host_os)) $($(1)_cppflags_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_ldflags+=$($(1)_ldflags_$(release_type))
 | 
				
			||||||
 | 
					$(1)_ldflags+=$($(1)_ldflags_$(host_arch)) $($(1)_ldflags_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_ldflags+=$($(1)_ldflags_$(host_os)) $($(1)_ldflags_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_ldflags+=$($(1)_ldflags_$(host_arch)_$(host_os)) $($(1)_ldflags_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_build_opts+=$$($(1)_build_opts_$(release_type))
 | 
				
			||||||
 | 
					$(1)_build_opts+=$$($(1)_build_opts_$(host_arch)) $$($(1)_build_opts_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_build_opts+=$$($(1)_build_opts_$(host_os)) $$($(1)_build_opts_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_build_opts+=$$($(1)_build_opts_$(host_arch)_$(host_os)) $$($(1)_build_opts_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_config_opts+=$$($(1)_config_opts_$(release_type))
 | 
				
			||||||
 | 
					$(1)_config_opts+=$$($(1)_config_opts_$(host_arch)) $$($(1)_config_opts_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_config_opts+=$$($(1)_config_opts_$(host_os)) $$($(1)_config_opts_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_config_opts+=$$($(1)_config_opts_$(host_arch)_$(host_os)) $$($(1)_config_opts_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_config_env+=$$($(1)_config_env_$(release_type))
 | 
				
			||||||
 | 
					$(1)_config_env+=$($(1)_config_env_$(host_arch)) $($(1)_config_env_$(host_arch)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_config_env+=$($(1)_config_env_$(host_os)) $($(1)_config_env_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					$(1)_config_env+=$($(1)_config_env_$(host_arch)_$(host_os)) $($(1)_config_env_$(host_arch)_$(host_os)_$(release_type))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(1)_config_env+=PKG_CONFIG_LIBDIR=$($($(1)_type)_prefix)/lib/pkgconfig
 | 
				
			||||||
 | 
					$(1)_config_env+=PKG_CONFIG_PATH=$($($(1)_type)_prefix)/share/pkgconfig
 | 
				
			||||||
 | 
					$(1)_config_env+=PATH=$(build_prefix)/bin:$(PATH)
 | 
				
			||||||
 | 
					$(1)_build_env+=PATH=$(build_prefix)/bin:$(PATH)
 | 
				
			||||||
 | 
					$(1)_stage_env+=PATH=$(build_prefix)/bin:$(PATH)
 | 
				
			||||||
 | 
					$(1)_autoconf=./configure --host=$($($(1)_type)_host) --disable-dependency-tracking --prefix=$($($(1)_type)_prefix) $$($(1)_config_opts) CC="$$($(1)_cc)" CXX="$$($(1)_cxx)"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifneq ($($(1)_nm),)
 | 
				
			||||||
 | 
					$(1)_autoconf += NM="$$($(1)_nm)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					ifneq ($($(1)_ranlib),)
 | 
				
			||||||
 | 
					$(1)_autoconf += RANLIB="$$($(1)_ranlib)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					ifneq ($($(1)_ar),)
 | 
				
			||||||
 | 
					$(1)_autoconf += AR="$$($(1)_ar)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					ifneq ($($(1)_cflags),)
 | 
				
			||||||
 | 
					$(1)_autoconf += CFLAGS="$$($(1)_cflags)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					ifneq ($($(1)_cxxflags),)
 | 
				
			||||||
 | 
					$(1)_autoconf += CXXFLAGS="$$($(1)_cxxflags)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					ifneq ($($(1)_cppflags),)
 | 
				
			||||||
 | 
					$(1)_autoconf += CPPFLAGS="$$($(1)_cppflags)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					ifneq ($($(1)_ldflags),)
 | 
				
			||||||
 | 
					$(1)_autoconf += LDFLAGS="$$($(1)_ldflags)"
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define int_add_cmds
 | 
				
			||||||
 | 
					$($(1)_fetched):
 | 
				
			||||||
 | 
						$(AT)mkdir -p $$(@D) $(SOURCES_PATH)
 | 
				
			||||||
 | 
						$(AT)rm -f $$@
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
						$(AT)cd $$(@D); $(call $(1)_fetch_cmds,$(1))
 | 
				
			||||||
 | 
						$(AT)cd $($(1)_source_dir); $(foreach source,$($(1)_all_sources),$(build_SHA256SUM) $(source) >> $$(@);)
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_extracted): | $($(1)_fetched)
 | 
				
			||||||
 | 
						$(AT)echo Extracting $(1)...
 | 
				
			||||||
 | 
						$(AT)mkdir -p $$(@D)
 | 
				
			||||||
 | 
						$(AT)cd $$(@D); $(call $(1)_extract_cmds,$(1))
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_preprocessed): | $($(1)_dependencies) $($(1)_extracted)
 | 
				
			||||||
 | 
						$(AT)echo Preprocessing $(1)...
 | 
				
			||||||
 | 
						$(AT)mkdir -p $$(@D) $($(1)_patch_dir)
 | 
				
			||||||
 | 
						$(AT)$(foreach patch,$($(1)_patches),cd $(PATCHES_PATH)/$(1); cp $(patch) $($(1)_patch_dir) ;)
 | 
				
			||||||
 | 
						$(AT)cd $$(@D); $(call $(1)_preprocess_cmds, $(1))
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_configured): | $($(1)_preprocessed)
 | 
				
			||||||
 | 
						$(AT)echo Configuring $(1)...
 | 
				
			||||||
 | 
						$(AT)rm -rf $(host_prefix); mkdir -p $(host_prefix)/lib; cd $(host_prefix); $(foreach package,$($(1)_all_dependencies), tar xf $($(package)_cached); )
 | 
				
			||||||
 | 
						$(AT)mkdir -p $$(@D)
 | 
				
			||||||
 | 
						$(AT)+cd $$(@D); $($(1)_config_env) $(call $(1)_config_cmds, $(1))
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_built): | $($(1)_configured)
 | 
				
			||||||
 | 
						$(AT)echo Building $(1)...
 | 
				
			||||||
 | 
						$(AT)mkdir -p $$(@D)
 | 
				
			||||||
 | 
						$(AT)+cd $$(@D); $($(1)_build_env) $(call $(1)_build_cmds, $(1))
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_staged): | $($(1)_built)
 | 
				
			||||||
 | 
						$(AT)echo Staging $(1)...
 | 
				
			||||||
 | 
						$(AT)mkdir -p $($(1)_staging_dir)/$(host_prefix)
 | 
				
			||||||
 | 
						$(AT)cd $($(1)_build_dir); $($(1)_stage_env) $(call $(1)_stage_cmds, $(1))
 | 
				
			||||||
 | 
						$(AT)rm -rf $($(1)_extract_dir)
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_postprocessed): | $($(1)_staged)
 | 
				
			||||||
 | 
						$(AT)echo Postprocessing $(1)...
 | 
				
			||||||
 | 
						$(AT)cd $($(1)_staging_prefix_dir); $(call $(1)_postprocess_cmds)
 | 
				
			||||||
 | 
						$(AT)touch $$@
 | 
				
			||||||
 | 
					$($(1)_cached): | $($(1)_dependencies) $($(1)_postprocessed)
 | 
				
			||||||
 | 
						$(AT)echo Caching $(1)...
 | 
				
			||||||
 | 
						$(AT)cd $$($(1)_staging_dir)/$(host_prefix); find . | sort | tar --no-recursion -czf $$($(1)_staging_dir)/$$(@F) -T -
 | 
				
			||||||
 | 
						$(AT)mkdir -p $$(@D)
 | 
				
			||||||
 | 
						$(AT)rm -rf $$(@D) && mkdir -p $$(@D)
 | 
				
			||||||
 | 
						$(AT)mv $$($(1)_staging_dir)/$$(@F) $$(@)
 | 
				
			||||||
 | 
						$(AT)rm -rf $($(1)_staging_dir)
 | 
				
			||||||
 | 
					$($(1)_cached_checksum): $($(1)_cached)
 | 
				
			||||||
 | 
						$(AT)cd $$(@D); $(build_SHA256SUM) $$(<F) > $$(@)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.PHONY: $(1)
 | 
				
			||||||
 | 
					$(1): | $($(1)_cached_checksum)
 | 
				
			||||||
 | 
					.SECONDARY: $($(1)_cached) $($(1)_postprocessed) $($(1)_staged) $($(1)_built) $($(1)_configured) $($(1)_preprocessed) $($(1)_extracted) $($(1)_fetched)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# These functions create the build targets for each package. They must be
 | 
				
			||||||
 | 
					# broken down into small steps so that each part is done for all packages
 | 
				
			||||||
 | 
					# before moving on to the next step. Otherwise, a package's info
 | 
				
			||||||
 | 
					# (build-id for example) would only be available to another package if it
 | 
				
			||||||
 | 
					# happened to be computed already.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#set the type for host/build packages.
 | 
				
			||||||
 | 
					$(foreach native_package,$(native_packages),$(eval $(native_package)_type=build))
 | 
				
			||||||
 | 
					$(foreach package,$(packages),$(eval $(package)_type=$(host_arch)_$(host_os)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#set overridable defaults
 | 
				
			||||||
 | 
					$(foreach package,$(all_packages),$(eval $(call int_vars,$(package))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include package files
 | 
				
			||||||
 | 
					$(foreach package,$(all_packages),$(eval include packages/$(package).mk))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#compute a hash of all files that comprise this package's build recipe
 | 
				
			||||||
 | 
					$(foreach package,$(all_packages),$(eval $(call int_get_build_recipe_hash,$(package))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#generate a unique id for this package, incorporating its dependencies as well
 | 
				
			||||||
 | 
					$(foreach package,$(all_packages),$(eval $(call int_get_build_id,$(package))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#compute final vars after reading package vars
 | 
				
			||||||
 | 
					$(foreach package,$(all_packages),$(eval $(call int_config_attach_build_config,$(package))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#create build targets
 | 
				
			||||||
 | 
					$(foreach package,$(all_packages),$(eval $(call int_add_cmds,$(package))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#special exception: if a toolchain package exists, all non-native packages depend on it
 | 
				
			||||||
 | 
					$(foreach package,$(packages),$(eval $($(package)_unpacked): |$($($(host_arch)_$(host_os)_native_toolchain)_cached) ))
 | 
				
			||||||
							
								
								
									
										17
									
								
								contrib/depends/hosts/darwin.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								contrib/depends/hosts/darwin.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,17 @@
 | 
				
			||||||
 | 
					OSX_MIN_VERSION=10.8
 | 
				
			||||||
 | 
					OSX_SDK_VERSION=10.11
 | 
				
			||||||
 | 
					OSX_SDK=$(SDK_PATH)/MacOSX$(OSX_SDK_VERSION).sdk
 | 
				
			||||||
 | 
					LD64_VERSION=253.9
 | 
				
			||||||
 | 
					darwin_CC=clang -target $(host) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(OSX_SDK) -mlinker-version=$(LD64_VERSION)
 | 
				
			||||||
 | 
					darwin_CXX=clang++ -target $(host) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(OSX_SDK) -mlinker-version=$(LD64_VERSION) -stdlib=libc++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					darwin_CFLAGS=-pipe
 | 
				
			||||||
 | 
					darwin_CXXFLAGS=$(darwin_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					darwin_release_CFLAGS=-O2
 | 
				
			||||||
 | 
					darwin_release_CXXFLAGS=$(darwin_release_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					darwin_debug_CFLAGS=-O1
 | 
				
			||||||
 | 
					darwin_debug_CXXFLAGS=$(darwin_debug_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					darwin_native_toolchain=native_cctools
 | 
				
			||||||
							
								
								
									
										26
									
								
								contrib/depends/hosts/default.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								contrib/depends/hosts/default.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,26 @@
 | 
				
			||||||
 | 
					default_host_CC = $(host_toolchain)gcc
 | 
				
			||||||
 | 
					default_host_CXX = $(host_toolchain)g++
 | 
				
			||||||
 | 
					default_host_AR = $(host_toolchain)ar
 | 
				
			||||||
 | 
					default_host_RANLIB = $(host_toolchain)ranlib
 | 
				
			||||||
 | 
					default_host_STRIP = $(host_toolchain)strip
 | 
				
			||||||
 | 
					default_host_LIBTOOL = $(host_toolchain)libtool
 | 
				
			||||||
 | 
					default_host_INSTALL_NAME_TOOL = $(host_toolchain)install_name_tool
 | 
				
			||||||
 | 
					default_host_OTOOL = $(host_toolchain)otool
 | 
				
			||||||
 | 
					default_host_NM = $(host_toolchain)nm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define add_host_tool_func
 | 
				
			||||||
 | 
					$(host_os)_$1?=$$(default_host_$1)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_$1?=$$($(host_os)_$1)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_$(release_type)_$1?=$$($(host_os)_$1)
 | 
				
			||||||
 | 
					host_$1=$$($(host_arch)_$(host_os)_$1)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define add_host_flags_func
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_$1 += $($(host_os)_$1)
 | 
				
			||||||
 | 
					$(host_arch)_$(host_os)_$(release_type)_$1 += $($(host_os)_$(release_type)_$1)
 | 
				
			||||||
 | 
					host_$1 = $$($(host_arch)_$(host_os)_$1)
 | 
				
			||||||
 | 
					host_$(release_type)_$1 = $$($(host_arch)_$(host_os)_$(release_type)_$1)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(foreach tool,CC CXX AR RANLIB STRIP NM LIBTOOL OTOOL INSTALL_NAME_TOOL,$(eval $(call add_host_tool_func,$(tool))))
 | 
				
			||||||
 | 
					$(foreach flags,CFLAGS CXXFLAGS CPPFLAGS LDFLAGS, $(eval $(call add_host_flags_func,$(flags))))
 | 
				
			||||||
							
								
								
									
										31
									
								
								contrib/depends/hosts/linux.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								contrib/depends/hosts/linux.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,31 @@
 | 
				
			||||||
 | 
					linux_CFLAGS=-pipe
 | 
				
			||||||
 | 
					linux_CXXFLAGS=$(linux_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					linux_release_CFLAGS=-O2
 | 
				
			||||||
 | 
					linux_release_CXXFLAGS=$(linux_release_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					linux_debug_CFLAGS=-O1
 | 
				
			||||||
 | 
					linux_debug_CXXFLAGS=$(linux_debug_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					linux_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifeq (86,$(findstring 86,$(build_arch)))
 | 
				
			||||||
 | 
					i686_linux_CC=gcc -m32
 | 
				
			||||||
 | 
					i686_linux_CXX=g++ -m32
 | 
				
			||||||
 | 
					i686_linux_AR=ar
 | 
				
			||||||
 | 
					i686_linux_RANLIB=ranlib
 | 
				
			||||||
 | 
					i686_linux_NM=nm
 | 
				
			||||||
 | 
					i686_linux_STRIP=strip
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					x86_64_linux_CC=gcc -m64
 | 
				
			||||||
 | 
					x86_64_linux_CXX=g++ -m64
 | 
				
			||||||
 | 
					x86_64_linux_AR=ar
 | 
				
			||||||
 | 
					x86_64_linux_RANLIB=ranlib
 | 
				
			||||||
 | 
					x86_64_linux_NM=nm
 | 
				
			||||||
 | 
					x86_64_linux_STRIP=strip
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					i686_linux_CC=$(default_host_CC) -m32
 | 
				
			||||||
 | 
					i686_linux_CXX=$(default_host_CXX) -m32
 | 
				
			||||||
 | 
					x86_64_linux_CC=$(default_host_CC) -m64
 | 
				
			||||||
 | 
					x86_64_linux_CXX=$(default_host_CXX) -m64
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
							
								
								
									
										10
									
								
								contrib/depends/hosts/mingw32.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								contrib/depends/hosts/mingw32.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,10 @@
 | 
				
			||||||
 | 
					mingw32_CFLAGS=-pipe
 | 
				
			||||||
 | 
					mingw32_CXXFLAGS=$(mingw32_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mingw32_release_CFLAGS=-O2
 | 
				
			||||||
 | 
					mingw32_release_CXXFLAGS=$(mingw32_release_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mingw32_debug_CFLAGS=-O1
 | 
				
			||||||
 | 
					mingw32_debug_CXXFLAGS=$(mingw32_debug_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mingw32_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC
 | 
				
			||||||
							
								
								
									
										147
									
								
								contrib/depends/packages.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										147
									
								
								contrib/depends/packages.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,147 @@
 | 
				
			||||||
 | 
					Each recipe consists of 3 main parts: defining identifiers, setting build
 | 
				
			||||||
 | 
					variables, and defining build commands.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The package "mylib" will be used here as an example
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					General tips:
 | 
				
			||||||
 | 
					- mylib_foo is written as $(package)_foo in order to make recipes more similar.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Identifiers
 | 
				
			||||||
 | 
					Each package is required to define at least these variables:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_version:
 | 
				
			||||||
 | 
					    Version of the upstream library or program. If there is no version, a
 | 
				
			||||||
 | 
					    placeholder such as 1.0 can be used.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_download_path:
 | 
				
			||||||
 | 
					    Location of the upstream source, without the file-name. Usually http or
 | 
				
			||||||
 | 
					    ftp.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_file_name:
 | 
				
			||||||
 | 
					    The upstream source filename available at the download path.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_sha256_hash:
 | 
				
			||||||
 | 
					    The sha256 hash of the upstream file
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					These variables are optional:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_build_subdir:
 | 
				
			||||||
 | 
					    cd to this dir before running configure/build/stage commands.
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    $(package)_download_file:
 | 
				
			||||||
 | 
					    The file-name of the upstream source if it differs from how it should be
 | 
				
			||||||
 | 
					    stored locally. This can be used to avoid storing file-names with strange
 | 
				
			||||||
 | 
					    characters.
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    $(package)_dependencies:
 | 
				
			||||||
 | 
					    Names of any other packages that this one depends on.
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    $(package)_patches:
 | 
				
			||||||
 | 
					    Filenames of any patches needed to build the package
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_extra_sources:
 | 
				
			||||||
 | 
					    Any extra files that will be fetched via $(package)_fetch_cmds. These are
 | 
				
			||||||
 | 
					    specified so that they can be fetched and verified via 'make download'.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Build Variables:
 | 
				
			||||||
 | 
					After defining the main identifiers, build variables may be added or customized
 | 
				
			||||||
 | 
					before running the build commands. They should be added to a function called
 | 
				
			||||||
 | 
					$(package)_set_vars. For example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    define $(package)_set_vars
 | 
				
			||||||
 | 
					    ...
 | 
				
			||||||
 | 
					    endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Most variables can be prefixed with the host, architecture, or both, to make
 | 
				
			||||||
 | 
					the modifications specific to that case. For example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Universal:     $(package)_cc=gcc
 | 
				
			||||||
 | 
					    Linux only:    $(package)_linux_cc=gcc
 | 
				
			||||||
 | 
					    x86_64 only:       $(package)_x86_64_cc = gcc
 | 
				
			||||||
 | 
					    x86_64 linux only: $(package)_x86_64_linux_cc = gcc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					These variables may be set to override or append their default values.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_cc
 | 
				
			||||||
 | 
					    $(package)_cxx
 | 
				
			||||||
 | 
					    $(package)_objc
 | 
				
			||||||
 | 
					    $(package)_objcxx
 | 
				
			||||||
 | 
					    $(package)_ar
 | 
				
			||||||
 | 
					    $(package)_ranlib
 | 
				
			||||||
 | 
					    $(package)_libtool
 | 
				
			||||||
 | 
					    $(package)_nm
 | 
				
			||||||
 | 
					    $(package)_cflags
 | 
				
			||||||
 | 
					    $(package)_cxxflags
 | 
				
			||||||
 | 
					    $(package)_ldflags
 | 
				
			||||||
 | 
					    $(package)_cppflags
 | 
				
			||||||
 | 
					    $(package)_config_env
 | 
				
			||||||
 | 
					    $(package)_build_env
 | 
				
			||||||
 | 
					    $(package)_stage_env
 | 
				
			||||||
 | 
					    $(package)_build_opts
 | 
				
			||||||
 | 
					    $(package)_config_opts
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The *_env variables are used to add environment variables to the respective
 | 
				
			||||||
 | 
					commands.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Many variables respect a debug/release suffix as well, in order to use them for
 | 
				
			||||||
 | 
					only the appropriate build config. For example:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_cflags_release = -O3
 | 
				
			||||||
 | 
					    $(package)_cflags_i686_debug = -g
 | 
				
			||||||
 | 
					    $(package)_config_opts_release = --disable-debug
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					These will be used in addition to the options that do not specify
 | 
				
			||||||
 | 
					debug/release. All builds are considered to be release unless DEBUG=1 is set by
 | 
				
			||||||
 | 
					the user. Other variables may be defined as needed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Build commands:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  For each build, a unique build dir and staging dir are created. For example,
 | 
				
			||||||
 | 
					  `work/build/mylib/1.0-1adac830f6e` and `work/staging/mylib/1.0-1adac830f6e`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  The following build commands are available for each recipe:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_fetch_cmds:
 | 
				
			||||||
 | 
					    Runs from: build dir
 | 
				
			||||||
 | 
					    Fetch the source file. If undefined, it will be fetched and verified
 | 
				
			||||||
 | 
					    against its hash.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_extract_cmds:
 | 
				
			||||||
 | 
					    Runs from: build dir
 | 
				
			||||||
 | 
					    Verify the source file against its hash and extract it. If undefined, the
 | 
				
			||||||
 | 
					    source is assumed to be a tarball.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_preprocess_cmds:
 | 
				
			||||||
 | 
					    Runs from: build dir/$(package)_build_subdir
 | 
				
			||||||
 | 
					    Preprocess the source as necessary. If undefined, does nothing.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_config_cmds:
 | 
				
			||||||
 | 
					    Runs from: build dir/$(package)_build_subdir
 | 
				
			||||||
 | 
					    Configure the source. If undefined, does nothing.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_build_cmds:
 | 
				
			||||||
 | 
					    Runs from: build dir/$(package)_build_subdir
 | 
				
			||||||
 | 
					    Build the source. If undefined, does nothing.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(package)_stage_cmds:
 | 
				
			||||||
 | 
					    Runs from: build dir/$(package)_build_subdir
 | 
				
			||||||
 | 
					    Stage the build results. If undefined, does nothing.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  The following variables are available for each recipe:
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    $(1)_staging_dir: package's destination sysroot path
 | 
				
			||||||
 | 
					    $(1)_staging_prefix_dir: prefix path inside of the package's staging dir
 | 
				
			||||||
 | 
					    $(1)_extract_dir: path to the package's extracted sources
 | 
				
			||||||
 | 
					    $(1)_build_dir: path where configure/build/stage commands will be run
 | 
				
			||||||
 | 
					    $(1)_patch_dir: path where the package's patches (if any) are found
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Notes on build commands:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For packages built with autotools, $($(package)_autoconf) can be used in the
 | 
				
			||||||
 | 
					configure step to (usually) correctly configure automatically. Any
 | 
				
			||||||
 | 
					$($(package)_config_opts) will be appended.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Most autotools projects can be properly staged using:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    $(MAKE) DESTDIR=$($(package)_staging_dir) install
 | 
				
			||||||
							
								
								
									
										31
									
								
								contrib/depends/packages/bdb.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								contrib/depends/packages/bdb.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,31 @@
 | 
				
			||||||
 | 
					package=bdb
 | 
				
			||||||
 | 
					$(package)_version=4.8.30
 | 
				
			||||||
 | 
					$(package)_download_path=http://download.oracle.com/berkeley-db
 | 
				
			||||||
 | 
					$(package)_file_name=db-$($(package)_version).NC.tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef
 | 
				
			||||||
 | 
					$(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_linux=--with-pic
 | 
				
			||||||
 | 
					$(package)_cxxflags=-std=c++11
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  sed -i.old 's/__atomic_compare_exchange/__atomic_compare_exchange_db/' dbinc/atomic.h && \
 | 
				
			||||||
 | 
					  sed -i.old 's/atomic_init/atomic_init_db/' dbinc/atomic.h mp/mp_region.c mp/mp_mvcc.c mp/mp_fget.c mutex/mut_method.c mutex/mut_tas.c && \
 | 
				
			||||||
 | 
					  cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub dist
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  ../dist/$($(package)_autoconf)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) libdb_cxx-4.8.a libdb-4.8.a
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) install_lib install_include
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										41
									
								
								contrib/depends/packages/boost.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								contrib/depends/packages/boost.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,41 @@
 | 
				
			||||||
 | 
					package=boost
 | 
				
			||||||
 | 
					$(package)_version=1_63_0
 | 
				
			||||||
 | 
					$(package)_download_path=https://sourceforge.net/projects/boost/files/boost/1.63.0
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)_$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts_release=variant=release
 | 
				
			||||||
 | 
					$(package)_config_opts_debug=variant=debug
 | 
				
			||||||
 | 
					$(package)_config_opts=--layout=tagged --build-type=complete --user-config=user-config.jam
 | 
				
			||||||
 | 
					$(package)_config_opts+=threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1
 | 
				
			||||||
 | 
					$(package)_config_opts_linux=threadapi=pthread runtime-link=shared
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin=--toolset=darwin-4.2.1 runtime-link=shared
 | 
				
			||||||
 | 
					$(package)_config_opts_mingw32=binary-format=pe target-os=windows threadapi=win32 runtime-link=static
 | 
				
			||||||
 | 
					$(package)_config_opts_x86_64_mingw32=address-model=64
 | 
				
			||||||
 | 
					$(package)_config_opts_i686_mingw32=address-model=32
 | 
				
			||||||
 | 
					$(package)_config_opts_i686_linux=address-model=32 architecture=x86
 | 
				
			||||||
 | 
					$(package)_toolset_$(host_os)=gcc
 | 
				
			||||||
 | 
					$(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=-std=c++11 -fvisibility=hidden
 | 
				
			||||||
 | 
					$(package)_cxxflags_linux=-fPIC
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  echo "using $(boost_toolset_$(host_os)) : : $($(package)_cxx) : <cxxflags>\"$($(package)_cxxflags) $($(package)_cppflags)\" <linkflags>\"$($(package)_ldflags)\" <archiver>\"$(boost_archiver_$(host_os))\" <striper>\"$(host_STRIP)\"  <ranlib>\"$(host_RANLIB)\" <rc>\"$(host_WINDRES)\" : ;" > user-config.jam
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  ./bootstrap.sh --without-icu --with-libraries=$(boost_config_libraries)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  ./b2 -d2 -j2 -d1 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) stage
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  ./b2 -d0 -j4 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) install
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										27
									
								
								contrib/depends/packages/curl.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								contrib/depends/packages/curl.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,27 @@
 | 
				
			||||||
 | 
					package=curl
 | 
				
			||||||
 | 
					$(package)_version=7.55.0
 | 
				
			||||||
 | 
					$(package)_download_path=https://curl.haxx.se/download/
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=dae1b1be34f5983e8d46917f2bdbb2335aecd0e57f777f4c32213da6a8050a80
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--disable-shared
 | 
				
			||||||
 | 
					  $(package)_config_opts+= --enable-static
 | 
				
			||||||
 | 
					  $(package)_config_opts_release+=--disable-debug-mode
 | 
				
			||||||
 | 
					  $(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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										23
									
								
								contrib/depends/packages/dbus.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								contrib/depends/packages/dbus.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					package=dbus
 | 
				
			||||||
 | 
					$(package)_version=1.10.14
 | 
				
			||||||
 | 
					$(package)_download_path=http://dbus.freedesktop.org/releases/dbus
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=23238f70353e38ce5ca183ebc9525c0d97ac00ef640ad29cf794782af6e6a083
 | 
				
			||||||
 | 
					$(package)_dependencies=expat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--disable-tests --disable-doxygen-docs --disable-xml-docs --disable-static --without-x
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  $($(package)_autoconf)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) -C dbus libdbus-1.la
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) -C dbus DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-dbusincludeHEADERS install-nodist_dbusarchincludeHEADERS && \
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										21
									
								
								contrib/depends/packages/expat.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								contrib/depends/packages/expat.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,21 @@
 | 
				
			||||||
 | 
					package=expat
 | 
				
			||||||
 | 
					$(package)_version=2.2.1
 | 
				
			||||||
 | 
					$(package)_download_path=https://downloads.sourceforge.net/project/expat/expat/$($(package)_version)
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=1868cadae4c82a018e361e2b2091de103cd820aaacb0d6cfa49bd2cd83978885
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--disable-static
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/packages/fontconfig.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/packages/fontconfig.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package=fontconfig
 | 
				
			||||||
 | 
					$(package)_version=2.12.1
 | 
				
			||||||
 | 
					$(package)_download_path=http://www.freedesktop.org/software/fontconfig/release/
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=b449a3e10c47e1d1c7a6ec6e2016cca73d3bd68fbbd4f0ae5cc6b573f7d6c7f3
 | 
				
			||||||
 | 
					$(package)_dependencies=freetype expat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--disable-docs --disable-static
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/packages/freetype.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/packages/freetype.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package=freetype
 | 
				
			||||||
 | 
					$(package)_version=2.7.1
 | 
				
			||||||
 | 
					$(package)_download_path=http://download.savannah.gnu.org/releases/$(package)
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=3a3bb2c4e15ffb433f2032f50a5b5a92558206822e22bfe8cbe339af4aa82f88
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--without-zlib --without-png --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
 | 
				
			||||||
							
								
								
									
										23
									
								
								contrib/depends/packages/libICE.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								contrib/depends/packages/libICE.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -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
 | 
				
			||||||
							
								
								
									
										23
									
								
								contrib/depends/packages/libSM.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								contrib/depends/packages/libSM.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -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
 | 
				
			||||||
							
								
								
									
										23
									
								
								contrib/depends/packages/libX11.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								contrib/depends/packages/libX11.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					package=libX11
 | 
				
			||||||
 | 
					$(package)_version=1.6.2
 | 
				
			||||||
 | 
					$(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=2aa027e837231d2eeea90f3a4afe19948a6eb4c8b2bec0241eba7dbc8106bd16
 | 
				
			||||||
 | 
					$(package)_dependencies=libxcb xtrans xextproto xproto
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--disable-xkb --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
 | 
				
			||||||
							
								
								
									
										23
									
								
								contrib/depends/packages/libXau.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								contrib/depends/packages/libXau.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					package=libXau
 | 
				
			||||||
 | 
					$(package)_version=1.0.8
 | 
				
			||||||
 | 
					$(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=fdd477320aeb5cdd67272838722d6b7d544887dfe7de46e1e7cc0c27c2bea4f2
 | 
				
			||||||
 | 
					$(package)_dependencies=xproto
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--disable-shared
 | 
				
			||||||
 | 
					  $(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
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/packages/libXext.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/packages/libXext.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package=libXext
 | 
				
			||||||
 | 
					$(package)_version=1.3.2
 | 
				
			||||||
 | 
					$(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=f829075bc646cdc085fa25d98d5885d83b1759ceb355933127c257e8e50432e0
 | 
				
			||||||
 | 
					$(package)_dependencies=xproto xextproto libX11 libXau
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--disable-static
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
							
								
								
									
										35
									
								
								contrib/depends/packages/libxcb.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								contrib/depends/packages/libxcb.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,35 @@
 | 
				
			||||||
 | 
					package=libxcb
 | 
				
			||||||
 | 
					$(package)_version=1.10
 | 
				
			||||||
 | 
					$(package)_download_path=http://xcb.freedesktop.org/dist
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=98d9ab05b636dd088603b64229dd1ab2d2cc02ab807892e107d674f9c3f2d5b5
 | 
				
			||||||
 | 
					$(package)_dependencies=xcb_proto libXau xproto
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--disable-static
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  sed "s/pthread-stubs//" -i configure
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Don't install xcb headers to the default path in order to work around a qt
 | 
				
			||||||
 | 
					# build issue: https://bugreports.qt.io/browse/QTBUG-34748
 | 
				
			||||||
 | 
					# When using qt's internal libxcb, it may end up finding the real headers in
 | 
				
			||||||
 | 
					# depends staging. Use a non-default path to avoid that.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  $($(package)_autoconf) --includedir=$(host_prefix)/include/xcb-shared
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) install
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					  rm -rf share/man share/doc
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										28
									
								
								contrib/depends/packages/miniupnpc.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								contrib/depends/packages/miniupnpc.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					package=miniupnpc
 | 
				
			||||||
 | 
					$(package)_version=2.0.20170509
 | 
				
			||||||
 | 
					$(package)_download_path=http://miniupnp.free.fr/files
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=d3c368627f5cdfb66d3ebd64ca39ba54d6ff14a61966dbecb8dd296b7039f16a
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_build_opts=CC="$($(package)_cc)"
 | 
				
			||||||
 | 
					$(package)_build_opts_darwin=OS=Darwin LIBTOOL="$($(package)_libtool)"
 | 
				
			||||||
 | 
					$(package)_build_opts_mingw32=-f Makefile.mingw
 | 
				
			||||||
 | 
					$(package)_build_env+=CFLAGS="$($(package)_cflags) $($(package)_cppflags)" AR="$($(package)_ar)"
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  mkdir dll && \
 | 
				
			||||||
 | 
					  sed -e 's|MINIUPNPC_VERSION_STRING \"version\"|MINIUPNPC_VERSION_STRING \"$($(package)_version)\"|' -e 's|OS/version|$(host)|' miniupnpcstrings.h.in > miniupnpcstrings.h && \
 | 
				
			||||||
 | 
					  sed -i.old "s|miniupnpcstrings.h: miniupnpcstrings.h.in wingenminiupnpcstrings|miniupnpcstrings.h: miniupnpcstrings.h.in|" Makefile.mingw
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
						$(MAKE) libminiupnpc.a $($(package)_build_opts)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
						mkdir -p $($(package)_staging_prefix_dir)/include/miniupnpc $($(package)_staging_prefix_dir)/lib &&\
 | 
				
			||||||
 | 
						install *.h $($(package)_staging_prefix_dir)/include/miniupnpc &&\
 | 
				
			||||||
 | 
						install libminiupnpc.a $($(package)_staging_prefix_dir)/lib
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										20
									
								
								contrib/depends/packages/native_biplist.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								contrib/depends/packages/native_biplist.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,20 @@
 | 
				
			||||||
 | 
					package=native_biplist
 | 
				
			||||||
 | 
					$(package)_version=0.9
 | 
				
			||||||
 | 
					$(package)_download_path=https://pypi.python.org/packages/source/b/biplist
 | 
				
			||||||
 | 
					$(package)_file_name=biplist-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=b57cadfd26e4754efdf89e9e37de87885f9b5c847b2615688ca04adfaf6ca604
 | 
				
			||||||
 | 
					$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages
 | 
				
			||||||
 | 
					$(package)_patches=sorted_list.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/sorted_list.patch
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					    python setup.py build
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					    mkdir -p $($(package)_install_libdir) && \
 | 
				
			||||||
 | 
					    python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										25
									
								
								contrib/depends/packages/native_ccache.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								contrib/depends/packages/native_ccache.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,25 @@
 | 
				
			||||||
 | 
					package=native_ccache
 | 
				
			||||||
 | 
					$(package)_version=3.3.3
 | 
				
			||||||
 | 
					$(package)_download_path=https://samba.org/ftp/ccache
 | 
				
			||||||
 | 
					$(package)_file_name=ccache-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=2985bc5e32ebe38d2958d508eb54ddcad39eed909489c0c2988035214597ca54
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					  rm -rf lib include
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										65
									
								
								contrib/depends/packages/native_cctools.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								contrib/depends/packages/native_cctools.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,65 @@
 | 
				
			||||||
 | 
					package=native_cctools
 | 
				
			||||||
 | 
					$(package)_version=807d6fd1be5d2224872e381870c0a75387fe05e6
 | 
				
			||||||
 | 
					$(package)_download_path=https://github.com/theuni/cctools-port/archive
 | 
				
			||||||
 | 
					$(package)_file_name=$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=a09c9ba4684670a0375e42d9d67e7f12c1f62581a27f28f7c825d6d7032ccc6a
 | 
				
			||||||
 | 
					$(package)_build_subdir=cctools
 | 
				
			||||||
 | 
					$(package)_clang_version=3.7.1
 | 
				
			||||||
 | 
					$(package)_clang_download_path=http://llvm.org/releases/$($(package)_clang_version)
 | 
				
			||||||
 | 
					$(package)_clang_download_file=clang+llvm-$($(package)_clang_version)-x86_64-linux-gnu-ubuntu-14.04.tar.xz
 | 
				
			||||||
 | 
					$(package)_clang_file_name=clang-llvm-$($(package)_clang_version)-x86_64-linux-gnu-ubuntu-14.04.tar.xz
 | 
				
			||||||
 | 
					$(package)_clang_sha256_hash=99b28a6b48e793705228a390471991386daa33a9717cd9ca007fcdde69608fd9
 | 
				
			||||||
 | 
					$(package)_extra_sources=$($(package)_clang_file_name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_fetch_cmds
 | 
				
			||||||
 | 
					$(call fetch_file,$(package),$($(package)_download_path),$($(package)_download_file),$($(package)_file_name),$($(package)_sha256_hash)) && \
 | 
				
			||||||
 | 
					$(call fetch_file,$(package),$($(package)_clang_download_path),$($(package)_clang_download_file),$($(package)_clang_file_name),$($(package)_clang_sha256_hash))
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_extract_cmds
 | 
				
			||||||
 | 
					  mkdir -p $($(package)_extract_dir) && \
 | 
				
			||||||
 | 
					  echo "$($(package)_sha256_hash)  $($(package)_source)" > $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  echo "$($(package)_clang_sha256_hash)  $($(package)_source_dir)/$($(package)_clang_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  $(build_SHA256SUM) -c $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  mkdir -p toolchain/bin toolchain/lib/clang/3.5/include && \
 | 
				
			||||||
 | 
					  tar --strip-components=1 -C toolchain -xf $($(package)_source_dir)/$($(package)_clang_file_name) && \
 | 
				
			||||||
 | 
					  rm -f toolchain/lib/libc++abi.so* && \
 | 
				
			||||||
 | 
					  echo "#!/bin/sh" > toolchain/bin/$(host)-dsymutil && \
 | 
				
			||||||
 | 
					  echo "exit 0" >> toolchain/bin/$(host)-dsymutil && \
 | 
				
			||||||
 | 
					  chmod +x toolchain/bin/$(host)-dsymutil && \
 | 
				
			||||||
 | 
					  tar --strip-components=1 -xf $($(package)_source)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--target=$(host) --disable-lto-support
 | 
				
			||||||
 | 
					$(package)_ldflags+=-Wl,-rpath=\\$$$$$$$$\$$$$$$$$ORIGIN/../lib
 | 
				
			||||||
 | 
					$(package)_cc=$($(package)_extract_dir)/toolchain/bin/clang
 | 
				
			||||||
 | 
					$(package)_cxx=$($(package)_extract_dir)/toolchain/bin/clang++
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  cd $($(package)_build_subdir); ./autogen.sh && \
 | 
				
			||||||
 | 
					  sed -i.old "/define HAVE_PTHREADS/d" ld64/src/ld/InputFiles.h
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  $($(package)_autoconf)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) install && \
 | 
				
			||||||
 | 
					  cd $($(package)_extract_dir)/toolchain && \
 | 
				
			||||||
 | 
					  mkdir -p $($(package)_staging_prefix_dir)/lib/clang/$($(package)_clang_version)/include && \
 | 
				
			||||||
 | 
					  mkdir -p $($(package)_staging_prefix_dir)/bin $($(package)_staging_prefix_dir)/include && \
 | 
				
			||||||
 | 
					  cp bin/clang $($(package)_staging_prefix_dir)/bin/ &&\
 | 
				
			||||||
 | 
					  cp -P bin/clang++ $($(package)_staging_prefix_dir)/bin/ &&\
 | 
				
			||||||
 | 
					  cp lib/libLTO.so $($(package)_staging_prefix_dir)/lib/ && \
 | 
				
			||||||
 | 
					  cp -rf lib/clang/$($(package)_clang_version)/include/* $($(package)_staging_prefix_dir)/lib/clang/$($(package)_clang_version)/include/ && \
 | 
				
			||||||
 | 
					  cp bin/llvm-dsymutil $($(package)_staging_prefix_dir)/bin/$(host)-dsymutil && \
 | 
				
			||||||
 | 
					  if `test -d include/c++/`; then cp -rf include/c++/ $($(package)_staging_prefix_dir)/include/; fi && \
 | 
				
			||||||
 | 
					  if `test -d lib/c++/`; then cp -rf lib/c++/ $($(package)_staging_prefix_dir)/lib/; fi
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										26
									
								
								contrib/depends/packages/native_cdrkit.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								contrib/depends/packages/native_cdrkit.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,26 @@
 | 
				
			||||||
 | 
					package=native_cdrkit
 | 
				
			||||||
 | 
					$(package)_version=1.1.11
 | 
				
			||||||
 | 
					$(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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/cdrkit-deterministic.patch
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) genisoimage
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) -C genisoimage install
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					  rm bin/isovfy bin/isoinfo bin/isodump bin/isodebug bin/devdump
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										17
									
								
								contrib/depends/packages/native_ds_store.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								contrib/depends/packages/native_ds_store.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,17 @@
 | 
				
			||||||
 | 
					package=native_ds_store
 | 
				
			||||||
 | 
					$(package)_version=1.1.0
 | 
				
			||||||
 | 
					$(package)_download_path=https://bitbucket.org/al45tair/ds_store/get
 | 
				
			||||||
 | 
					$(package)_download_file=v$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=921596764d71d1bbd3297a90ef6d286f718794d667e4f81d91d14053525d64c1
 | 
				
			||||||
 | 
					$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages
 | 
				
			||||||
 | 
					$(package)_dependencies=native_biplist
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					    python setup.py build
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					    mkdir -p $($(package)_install_libdir) && \
 | 
				
			||||||
 | 
					    python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/packages/native_libdmg-hfsplus.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/packages/native_libdmg-hfsplus.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package=native_libdmg-hfsplus
 | 
				
			||||||
 | 
					$(package)_version=0.1
 | 
				
			||||||
 | 
					$(package)_download_path=https://github.com/theuni/libdmg-hfsplus/archive
 | 
				
			||||||
 | 
					$(package)_file_name=libdmg-hfsplus-v$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=6569a02eb31c2827080d7d59001869ea14484c281efab0ae7f2b86af5c3120b3
 | 
				
			||||||
 | 
					$(package)_build_subdir=build
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  mkdir build
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  cmake -DCMAKE_INSTALL_PREFIX:PATH=$(build_prefix)/bin ..
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) -C dmg
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) -C dmg install
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										21
									
								
								contrib/depends/packages/native_mac_alias.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								contrib/depends/packages/native_mac_alias.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,21 @@
 | 
				
			||||||
 | 
					package=native_mac_alias
 | 
				
			||||||
 | 
					$(package)_version=1.1.0
 | 
				
			||||||
 | 
					$(package)_download_path=https://bitbucket.org/al45tair/mac_alias/get
 | 
				
			||||||
 | 
					$(package)_download_file=v$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=87ad827e66790028361e43fc754f68ed041a9bdb214cca03c853f079b04fb120
 | 
				
			||||||
 | 
					$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages
 | 
				
			||||||
 | 
					$(package)_patches=python3.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/python3.patch
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					    python setup.py build
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					    mkdir -p $($(package)_install_libdir) && \
 | 
				
			||||||
 | 
					    python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										78
									
								
								contrib/depends/packages/openssl.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								contrib/depends/packages/openssl.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,78 @@
 | 
				
			||||||
 | 
					package=openssl
 | 
				
			||||||
 | 
					$(package)_version=1.0.1k
 | 
				
			||||||
 | 
					$(package)_download_path=https://www.openssl.org/source
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=8f9faeaebad088e772f4ef5e38252d472be4d878c6b3a2718c10a4fcebe7a41c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-camellia
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-capieng
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-cast
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-comp
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-dso
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-dtls1
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-ec_nistp_64_gcc_128
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-gost
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-gmp
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-heartbeats
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-idea
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-jpake
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-krb5
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-libunbound
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-md2
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-mdc2
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-rc4
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-rc5
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-rdrand
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-rfc3779
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-rsax
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-sctp
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-seed
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-sha0
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-shared
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-ssl-trace
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-ssl2
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-ssl3
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-static_engine
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-store
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-unit-test
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-weak-ssl-ciphers
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-whirlpool
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-zlib
 | 
				
			||||||
 | 
					$(package)_config_opts+=no-zlib-dynamic
 | 
				
			||||||
 | 
					$(package)_config_opts+=$($(package)_cflags) $($(package)_cppflags)
 | 
				
			||||||
 | 
					$(package)_config_opts_linux=-fPIC -Wa,--noexecstack
 | 
				
			||||||
 | 
					$(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_powerpc_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
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_preprocess_cmds
 | 
				
			||||||
 | 
					  sed -i.old "/define DATE/d" util/mkbuildinf.pl && \
 | 
				
			||||||
 | 
					  sed -i.old "s|engines apps test|engines|" Makefile.org
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  ./Configure $($(package)_config_opts)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) -j1 build_libs libcrypto.pc libssl.pc openssl.pc
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) INSTALL_PREFIX=$($(package)_staging_dir) -j1 install_sw
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					  rm -rf share bin etc
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										20
									
								
								contrib/depends/packages/packages.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								contrib/depends/packages/packages.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,20 @@
 | 
				
			||||||
 | 
					packages:=boost openssl curl
 | 
				
			||||||
 | 
					native_packages := native_ccache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					qt_packages = qrencode zlib
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					qt_x86_64_linux_packages:=qt expat dbus libxcb xcb_proto libXau xproto freetype fontconfig libX11 xextproto libXext xtrans
 | 
				
			||||||
 | 
					qt_i686_linux_packages:=$(qt_x86_64_linux_packages)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					qt_darwin_packages=qt
 | 
				
			||||||
 | 
					qt_mingw32_packages=qt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					wallet_packages=bdb
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					upnp_packages=miniupnpc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					darwin_native_packages = native_biplist native_ds_store native_mac_alias
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifneq ($(build_os),darwin)
 | 
				
			||||||
 | 
					darwin_native_packages += native_cctools native_cdrkit native_libdmg-hfsplus
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/packages/qrencode.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/packages/qrencode.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package=qrencode
 | 
				
			||||||
 | 
					$(package)_version=3.4.4
 | 
				
			||||||
 | 
					$(package)_download_path=https://fukuchi.org/works/qrencode/
 | 
				
			||||||
 | 
					$(package)_file_name=qrencode-$(qrencode_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=efe5188b1ddbcbf98763b819b146be6a90481aac30cfc8d858ab78a19cde1fa5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--disable-shared -without-tools --disable-sdltest
 | 
				
			||||||
 | 
					$(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
 | 
				
			||||||
							
								
								
									
										198
									
								
								contrib/depends/packages/qt.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										198
									
								
								contrib/depends/packages/qt.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,198 @@
 | 
				
			||||||
 | 
					PACKAGE=qt
 | 
				
			||||||
 | 
					$(package)_version=5.7.1
 | 
				
			||||||
 | 
					$(package)_download_path=http://download.qt.io/official_releases/qt/5.7/$($(package)_version)/submodules
 | 
				
			||||||
 | 
					$(package)_suffix=opensource-src-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_file_name=qtbase-$($(package)_suffix)
 | 
				
			||||||
 | 
					$(package)_sha256_hash=95f83e532d23b3ddbde7973f380ecae1bac13230340557276f75f2e37984e410
 | 
				
			||||||
 | 
					$(package)_dependencies=openssl zlib
 | 
				
			||||||
 | 
					$(package)_linux_dependencies=freetype fontconfig libxcb libX11 xproto libXext
 | 
				
			||||||
 | 
					$(package)_build_subdir=qtbase
 | 
				
			||||||
 | 
					$(package)_qt_libs=corelib network widgets gui plugins testlib concurrent
 | 
				
			||||||
 | 
					$(package)_patches=mac-qmake.conf mingw-uuidof.patch pidlist_absolute.patch fix-xcb-include-order.patch fix_qt_pkgconfig.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(package)_qttranslations_file_name=qttranslations-$($(package)_suffix)
 | 
				
			||||||
 | 
					$(package)_qttranslations_sha256_hash=3a15aebd523c6d89fb97b2d3df866c94149653a26d27a00aac9b6d3020bc5a1d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(package)_qttools_file_name=qttools-$($(package)_suffix)
 | 
				
			||||||
 | 
					$(package)_qttools_sha256_hash=22d67de915cb8cd93e16fdd38fa006224ad9170bd217c2be1e53045a8dd02f0f
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(package)_qtactiveqt_file_name=qtactiveqt-$($(package)_suffix)
 | 
				
			||||||
 | 
					$(package)_qtactiveqt_sha256_hash=57b39e9fe1d8d430da14d38d8c0de39bede1cd3ce1540f3d51c1fa0a2ef149cf
 | 
				
			||||||
 | 
					$(package)_qtactiveqt_libs=axcontainer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(package)_extra_sources  = $($(package)_qttranslations_file_name)
 | 
				
			||||||
 | 
					$(package)_extra_sources += $($(package)_qttools_file_name)
 | 
				
			||||||
 | 
					$(package)_extra_sources += $($(package)_qtactiveqt_file_name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts_release = -release
 | 
				
			||||||
 | 
					$(package)_config_opts_debug = -debug
 | 
				
			||||||
 | 
					$(package)_config_opts += -bindir $(build_prefix)/bin
 | 
				
			||||||
 | 
					$(package)_config_opts += -c++std c++11
 | 
				
			||||||
 | 
					$(package)_config_opts += -confirm-license
 | 
				
			||||||
 | 
					$(package)_config_opts += -dbus-runtime
 | 
				
			||||||
 | 
					$(package)_config_opts += -hostprefix $(build_prefix)
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-alsa
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-audio-backend
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-cups
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-egl
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-eglfs
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-feature-style-windowsmobile
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-feature-style-windowsce
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-freetype
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-gif
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-glib
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-gstreamer
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-icu
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-iconv
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-kms
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-linuxfb
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-libudev
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-mitshm
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-mtdev
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-pulseaudio
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-openvg
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-reduce-relocations
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-qml-debug
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-db2
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-ibase
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-oci
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-tds
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-mysql
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-odbc
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-psql
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-sqlite
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-sql-sqlite2
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-use-gold-linker
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-xinput2
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-xrender
 | 
				
			||||||
 | 
					$(package)_config_opts += -nomake examples
 | 
				
			||||||
 | 
					$(package)_config_opts += -nomake tests
 | 
				
			||||||
 | 
					$(package)_config_opts += -opensource
 | 
				
			||||||
 | 
					$(package)_config_opts += -openssl-linked
 | 
				
			||||||
 | 
					$(package)_config_opts += -optimized-qmake
 | 
				
			||||||
 | 
					$(package)_config_opts += -pch
 | 
				
			||||||
 | 
					$(package)_config_opts += -pkg-config
 | 
				
			||||||
 | 
					$(package)_config_opts += -prefix $(host_prefix)
 | 
				
			||||||
 | 
					$(package)_config_opts += -qt-libpng
 | 
				
			||||||
 | 
					$(package)_config_opts += -qt-libjpeg
 | 
				
			||||||
 | 
					$(package)_config_opts += -qt-pcre
 | 
				
			||||||
 | 
					$(package)_config_opts += -system-zlib
 | 
				
			||||||
 | 
					$(package)_config_opts += -reduce-exports
 | 
				
			||||||
 | 
					$(package)_config_opts += -static
 | 
				
			||||||
 | 
					$(package)_config_opts += -silent
 | 
				
			||||||
 | 
					$(package)_config_opts += -v
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-feature-printer
 | 
				
			||||||
 | 
					$(package)_config_opts += -no-feature-printdialog
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifneq ($(build_os),darwin)
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin = -xplatform macx-clang-linux
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin += -device-option MAC_SDK_PATH=$(OSX_SDK)
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin += -device-option MAC_SDK_VERSION=$(OSX_SDK_VERSION)
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin += -device-option CROSS_COMPILE="$(host)-"
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin += -device-option MAC_MIN_VERSION=$(OSX_MIN_VERSION)
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin += -device-option MAC_TARGET=$(host)
 | 
				
			||||||
 | 
					$(package)_config_opts_darwin += -device-option MAC_LD64_VERSION=$(LD64_VERSION)
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(package)_config_opts_linux  = -qt-xkbcommon
 | 
				
			||||||
 | 
					$(package)_config_opts_linux += -qt-xcb
 | 
				
			||||||
 | 
					$(package)_config_opts_linux += -system-freetype
 | 
				
			||||||
 | 
					$(package)_config_opts_linux += -no-sm
 | 
				
			||||||
 | 
					$(package)_config_opts_linux += -fontconfig
 | 
				
			||||||
 | 
					$(package)_config_opts_linux += -no-opengl
 | 
				
			||||||
 | 
					$(package)_config_opts_arm_linux  = -platform linux-g++ -xplatform $(host)
 | 
				
			||||||
 | 
					$(package)_config_opts_i686_linux  = -xplatform linux-g++-32
 | 
				
			||||||
 | 
					$(package)_config_opts_mingw32  = -no-opengl -xplatform win32-g++ -device-option CROSS_COMPILE="$(host)-"
 | 
				
			||||||
 | 
					$(package)_build_env  = QT_RCC_TEST=1
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_fetch_cmds
 | 
				
			||||||
 | 
					$(call fetch_file,$(package),$($(package)_download_path),$($(package)_download_file),$($(package)_file_name),$($(package)_sha256_hash)) && \
 | 
				
			||||||
 | 
					$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttranslations_file_name),$($(package)_qttranslations_file_name),$($(package)_qttranslations_sha256_hash)) && \
 | 
				
			||||||
 | 
					$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttools_file_name),$($(package)_qttools_file_name),$($(package)_qttools_sha256_hash)) && \
 | 
				
			||||||
 | 
					$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qtactiveqt_file_name),$($(package)_qtactiveqt_file_name),$($(package)_qtactiveqt_sha256_hash))
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_extract_cmds
 | 
				
			||||||
 | 
					  mkdir -p $($(package)_extract_dir) && \
 | 
				
			||||||
 | 
					  echo "$($(package)_sha256_hash)  $($(package)_source)" > $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  echo "$($(package)_qttranslations_sha256_hash)  $($(package)_source_dir)/$($(package)_qttranslations_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  echo "$($(package)_qttools_sha256_hash)  $($(package)_source_dir)/$($(package)_qttools_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  echo "$($(package)_qtactiveqt_sha256_hash)  $($(package)_source_dir)/$($(package)_qtactiveqt_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  $(build_SHA256SUM) -c $($(package)_extract_dir)/.$($(package)_file_name).hash && \
 | 
				
			||||||
 | 
					  mkdir qtbase && \
 | 
				
			||||||
 | 
					  tar --strip-components=1 -xf $($(package)_source) -C qtbase && \
 | 
				
			||||||
 | 
					  mkdir qttranslations && \
 | 
				
			||||||
 | 
					  tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qttranslations_file_name) -C qttranslations && \
 | 
				
			||||||
 | 
					  mkdir qttools && \
 | 
				
			||||||
 | 
					  tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qttools_file_name) -C qttools &&\
 | 
				
			||||||
 | 
					  mkdir qtactiveqt && \
 | 
				
			||||||
 | 
					  tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qtactiveqt_file_name) -C qtactiveqt
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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 "/updateqm.depends =/d" 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 "s|X11/extensions/XIproto.h|X11/X.h|" 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 && \
 | 
				
			||||||
 | 
					  sed -i.old 's/CGEventCreateMouseEvent(0, kCGEventMouseMoved, pos, 0)/CGEventCreateMouseEvent(0, kCGEventMouseMoved, pos, kCGMouseButtonLeft)/' qtbase/src/plugins/platforms/cocoa/qcocoacursor.mm && \
 | 
				
			||||||
 | 
					  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/ &&\
 | 
				
			||||||
 | 
					  cp -f qtbase/mkspecs/macx-clang/qplatformdefs.h qtbase/mkspecs/macx-clang-linux/ &&\
 | 
				
			||||||
 | 
					  cp -f $($(package)_patch_dir)/mac-qmake.conf qtbase/mkspecs/macx-clang-linux/qmake.conf && \
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/mingw-uuidof.patch && \
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/pidlist_absolute.patch && \
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/fix-xcb-include-order.patch && \
 | 
				
			||||||
 | 
					  patch -p1 < $($(package)_patch_dir)/fix_qt_pkgconfig.patch && \
 | 
				
			||||||
 | 
					  echo "!host_build: QMAKE_CFLAGS     += $($(package)_cflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
 | 
				
			||||||
 | 
					  echo "!host_build: QMAKE_CXXFLAGS   += $($(package)_cxxflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
 | 
				
			||||||
 | 
					  echo "!host_build: QMAKE_LFLAGS     += $($(package)_ldflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
 | 
				
			||||||
 | 
					  sed -i.old "s|QMAKE_CFLAGS            = |!host_build: QMAKE_CFLAGS            = $($(package)_cflags) $($(package)_cppflags) |" qtbase/mkspecs/win32-g++/qmake.conf && \
 | 
				
			||||||
 | 
					  sed -i.old "s|QMAKE_LFLAGS            = |!host_build: QMAKE_LFLAGS            = $($(package)_ldflags) |" qtbase/mkspecs/win32-g++/qmake.conf && \
 | 
				
			||||||
 | 
					  sed -i.old "s|QMAKE_CXXFLAGS          = |!host_build: QMAKE_CXXFLAGS            = $($(package)_cxxflags) $($(package)_cppflags) |" qtbase/mkspecs/win32-g++/qmake.conf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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  && \
 | 
				
			||||||
 | 
					  ./configure $($(package)_config_opts) && \
 | 
				
			||||||
 | 
					  echo "host_build: QT_CONFIG ~= s/system-zlib/zlib" >> mkspecs/qconfig.pri && \
 | 
				
			||||||
 | 
					  echo "CONFIG += force_bootstrap" >> mkspecs/qconfig.pri && \
 | 
				
			||||||
 | 
					  $(MAKE) sub-src-clean && \
 | 
				
			||||||
 | 
					  cd ../qttranslations && ../qtbase/bin/qmake qttranslations.pro -o Makefile && \
 | 
				
			||||||
 | 
					  cd translations && ../../qtbase/bin/qmake translations.pro -o Makefile && cd ../.. && \
 | 
				
			||||||
 | 
					  cd qttools/src/linguist/lrelease/ && ../../../../qtbase/bin/qmake lrelease.pro -o Makefile && cd ../../../.. && \
 | 
				
			||||||
 | 
					  cd qtactiveqt/src/activeqt && ../../../qtbase/bin/qmake activeqt.pro -o Makefile
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) -C src $(addprefix sub-,$($(package)_qt_libs)) && \
 | 
				
			||||||
 | 
					  $(MAKE) -C ../qttools/src/linguist/lrelease && \
 | 
				
			||||||
 | 
					  $(MAKE) -C ../qtactiveqt/src/activeqt && \
 | 
				
			||||||
 | 
					  $(MAKE) -C ../qttranslations
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#  $(MAKE) -C qtactiveqt/src/activeqt/container INSTALL_ROOT=$($(package)_staging_dir) install_target && \
 | 
				
			||||||
 | 
					#  $(MAKE) -C qtactiveqt/src/activeqt/control INSTALL_ROOT=$($(package)_staging_dir) install_target && \
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) -C src INSTALL_ROOT=$($(package)_staging_dir) $(addsuffix -install_subtargets,$(addprefix sub-,$($(package)_qt_libs))) && cd .. && \
 | 
				
			||||||
 | 
					  $(MAKE) -C qttools/src/linguist/lrelease INSTALL_ROOT=$($(package)_staging_dir) install_target && \
 | 
				
			||||||
 | 
					  $(MAKE) -C qtactiveqt/src/activeqt INSTALL_ROOT=$($(package)_staging_dir) install &&\
 | 
				
			||||||
 | 
					  $(MAKE) -C qttranslations INSTALL_ROOT=$($(package)_staging_dir) install_subtargets && \
 | 
				
			||||||
 | 
					  if `test -f qtbase/src/plugins/platforms/xcb/xcb-static/libxcb-static.a`; then \
 | 
				
			||||||
 | 
					    cp qtbase/src/plugins/platforms/xcb/xcb-static/libxcb-static.a $($(package)_staging_prefix_dir)/lib; \
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					  rm -rf native/mkspecs/ native/lib/ lib/cmake/ && \
 | 
				
			||||||
 | 
					  rm -f lib/lib*.la lib/*.prl plugins/*/*.prl
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										27
									
								
								contrib/depends/packages/xcb_proto.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								contrib/depends/packages/xcb_proto.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,27 @@
 | 
				
			||||||
 | 
					package=xcb_proto
 | 
				
			||||||
 | 
					$(package)_version=1.10
 | 
				
			||||||
 | 
					$(package)_download_path=http://xcb.freedesktop.org/dist
 | 
				
			||||||
 | 
					$(package)_file_name=xcb-proto-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=7ef40ddd855b750bc597d2a435da21e55e502a0fefa85b274f2c922800baaf05
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					  $(package)_config_opts=--disable-shared
 | 
				
			||||||
 | 
					  $(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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_postprocess_cmds
 | 
				
			||||||
 | 
					  find -name "*.pyc" -delete && \
 | 
				
			||||||
 | 
					  find -name "*.pyo" -delete
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
							
								
								
									
										21
									
								
								contrib/depends/packages/xextproto.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								contrib/depends/packages/xextproto.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,21 @@
 | 
				
			||||||
 | 
					package=xextproto
 | 
				
			||||||
 | 
					$(package)_version=7.3.0
 | 
				
			||||||
 | 
					$(package)_download_path=http://xorg.freedesktop.org/releases/individual/proto
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=f3f4b23ac8db9c3a9e0d8edb591713f3d70ef9c3b175970dd8823dfc92aa5bb0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--disable-shared
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
							
								
								
									
										21
									
								
								contrib/depends/packages/xproto.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								contrib/depends/packages/xproto.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,21 @@
 | 
				
			||||||
 | 
					package=xproto
 | 
				
			||||||
 | 
					$(package)_version=7.0.26
 | 
				
			||||||
 | 
					$(package)_download_path=http://xorg.freedesktop.org/releases/individual/proto
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=636162c1759805a5a0114a369dffdeccb8af8c859ef6e1445f26a4e6e046514f
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts=--disable-shared
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
							
								
								
									
										22
									
								
								contrib/depends/packages/xtrans.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								contrib/depends/packages/xtrans.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					package=xtrans
 | 
				
			||||||
 | 
					$(package)_version=1.3.4
 | 
				
			||||||
 | 
					$(package)_download_path=http://xorg.freedesktop.org/releases/individual/lib/
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.bz2
 | 
				
			||||||
 | 
					$(package)_sha256_hash=054d4ee3efd52508c753e9f7bc655ef185a29bd2850dd9e2fc2ccc33544f583a
 | 
				
			||||||
 | 
					$(package)_dependencies=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_config_opts_linux=--with-pic --disable-static
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
							
								
								
									
										28
									
								
								contrib/depends/packages/zlib.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								contrib/depends/packages/zlib.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					package=zlib
 | 
				
			||||||
 | 
					$(package)_version=1.2.11
 | 
				
			||||||
 | 
					$(package)_download_path=http://www.zlib.net
 | 
				
			||||||
 | 
					$(package)_file_name=$(package)-$($(package)_version).tar.gz
 | 
				
			||||||
 | 
					$(package)_sha256_hash=c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_set_vars
 | 
				
			||||||
 | 
					$(package)_build_opts= CC="$($(package)_cc)"
 | 
				
			||||||
 | 
					$(package)_build_opts+=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -fPIC"
 | 
				
			||||||
 | 
					$(package)_build_opts+=RANLIB="$($(package)_ranlib)"
 | 
				
			||||||
 | 
					$(package)_build_opts+=AR="$($(package)_ar)"
 | 
				
			||||||
 | 
					$(package)_build_opts_darwin+=AR="$($(package)_libtool)"
 | 
				
			||||||
 | 
					$(package)_build_opts_darwin+=ARFLAGS="-o"
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_config_cmds
 | 
				
			||||||
 | 
					  ./configure --static --prefix=$(host_prefix)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_build_cmds
 | 
				
			||||||
 | 
					  $(MAKE) $($(package)_build_opts) libz.a
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					define $(package)_stage_cmds
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$($(package)_staging_dir) install $($(package)_build_opts) &&\
 | 
				
			||||||
 | 
					  $(MAKE) DESTDIR=$(host_prefix) install $($(package)_build_opts)
 | 
				
			||||||
 | 
					endef
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										29
									
								
								contrib/depends/patches/native_biplist/sorted_list.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								contrib/depends/patches/native_biplist/sorted_list.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,29 @@
 | 
				
			||||||
 | 
					--- a/biplist/__init__.py	2014-10-26 19:03:11.000000000 +0000
 | 
				
			||||||
 | 
					+++ b/biplist/__init__.py	2016-07-19 19:30:17.663521999 +0000
 | 
				
			||||||
 | 
					@@ -541,7 +541,7 @@
 | 
				
			||||||
 | 
					             return HashableWrapper(n)
 | 
				
			||||||
 | 
					         elif isinstance(root, dict):
 | 
				
			||||||
 | 
					             n = {}
 | 
				
			||||||
 | 
					-            for key, value in iteritems(root):
 | 
				
			||||||
 | 
					+            for key, value in sorted(iteritems(root)):
 | 
				
			||||||
 | 
					                 n[self.wrapRoot(key)] = self.wrapRoot(value)
 | 
				
			||||||
 | 
					             return HashableWrapper(n)
 | 
				
			||||||
 | 
					         elif isinstance(root, list):
 | 
				
			||||||
 | 
					@@ -616,7 +616,7 @@
 | 
				
			||||||
 | 
					             elif isinstance(obj, dict):
 | 
				
			||||||
 | 
					                 size = proc_size(len(obj))
 | 
				
			||||||
 | 
					                 self.incrementByteCount('dictBytes', incr=1+size)
 | 
				
			||||||
 | 
					-                for key, value in iteritems(obj):
 | 
				
			||||||
 | 
					+                for key, value in sorted(iteritems(obj)):
 | 
				
			||||||
 | 
					                     check_key(key)
 | 
				
			||||||
 | 
					                     self.computeOffsets(key, asReference=True)
 | 
				
			||||||
 | 
					                     self.computeOffsets(value, asReference=True)
 | 
				
			||||||
 | 
					@@ -714,7 +714,7 @@
 | 
				
			||||||
 | 
					                 keys = []
 | 
				
			||||||
 | 
					                 values = []
 | 
				
			||||||
 | 
					                 objectsToWrite = []
 | 
				
			||||||
 | 
					-                for key, value in iteritems(obj):
 | 
				
			||||||
 | 
					+                for key, value in sorted(iteritems(obj)):
 | 
				
			||||||
 | 
					                     keys.append(key)
 | 
				
			||||||
 | 
					                     values.append(value)
 | 
				
			||||||
 | 
					                 for key in keys:
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,86 @@
 | 
				
			||||||
 | 
					--- cdrkit-1.1.11.old/genisoimage/tree.c	2008-10-21 19:57:47.000000000 -0400
 | 
				
			||||||
 | 
					+++ cdrkit-1.1.11/genisoimage/tree.c	2013-12-06 00:23:18.489622668 -0500
 | 
				
			||||||
 | 
					@@ -1139,8 +1139,9 @@
 | 
				
			||||||
 | 
					 scan_directory_tree(struct directory *this_dir, char *path, 
 | 
				
			||||||
 | 
					 						  struct directory_entry *de)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					-	DIR		*current_dir;
 | 
				
			||||||
 | 
					+        int             current_file;
 | 
				
			||||||
 | 
					 	char		whole_path[PATH_MAX];
 | 
				
			||||||
 | 
					+        struct dirent  **d_list;
 | 
				
			||||||
 | 
					 	struct dirent	*d_entry;
 | 
				
			||||||
 | 
					 	struct directory *parent;
 | 
				
			||||||
 | 
					 	int		dflag;
 | 
				
			||||||
 | 
					@@ -1164,7 +1165,8 @@
 | 
				
			||||||
 | 
					 	this_dir->dir_flags |= DIR_WAS_SCANNED;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 	errno = 0;	/* Paranoia */
 | 
				
			||||||
 | 
					-	current_dir = opendir(path);
 | 
				
			||||||
 | 
					+	//current_dir = opendir(path);
 | 
				
			||||||
 | 
					+        current_file = scandir(path, &d_list, NULL, alphasort);
 | 
				
			||||||
 | 
					 	d_entry = NULL;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 	/*
 | 
				
			||||||
 | 
					@@ -1173,12 +1175,12 @@
 | 
				
			||||||
 | 
					 	 */
 | 
				
			||||||
 | 
					 	old_path = path;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-	if (current_dir) {
 | 
				
			||||||
 | 
					+	if (current_file >= 0) {
 | 
				
			||||||
 | 
					 		errno = 0;
 | 
				
			||||||
 | 
					-		d_entry = readdir(current_dir);
 | 
				
			||||||
 | 
					+		d_entry = d_list[0];
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-	if (!current_dir || !d_entry) {
 | 
				
			||||||
 | 
					+	if (current_file < 0 || !d_entry) {
 | 
				
			||||||
 | 
					 		int	ret = 1;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #ifdef	USE_LIBSCHILY
 | 
				
			||||||
 | 
					@@ -1191,8 +1193,8 @@
 | 
				
			||||||
 | 
					 			de->isorec.flags[0] &= ~ISO_DIRECTORY;
 | 
				
			||||||
 | 
					 			ret = 0;
 | 
				
			||||||
 | 
					 		}
 | 
				
			||||||
 | 
					-		if (current_dir)
 | 
				
			||||||
 | 
					-			closedir(current_dir);
 | 
				
			||||||
 | 
					+		if(d_list)
 | 
				
			||||||
 | 
					+			free(d_list);
 | 
				
			||||||
 | 
					 		return (ret);
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					 #ifdef	ABORT_DEEP_ISO_ONLY
 | 
				
			||||||
 | 
					@@ -1208,7 +1210,7 @@
 | 
				
			||||||
 | 
					 			errmsgno(EX_BAD, "use Rock Ridge extensions via -R or -r,\n");
 | 
				
			||||||
 | 
					 			errmsgno(EX_BAD, "or allow deep ISO9660 directory nesting via -D.\n");
 | 
				
			||||||
 | 
					 		}
 | 
				
			||||||
 | 
					-		closedir(current_dir);
 | 
				
			||||||
 | 
					+		free(d_list);
 | 
				
			||||||
 | 
					 		return (1);
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					 #endif
 | 
				
			||||||
 | 
					@@ -1250,13 +1252,13 @@
 | 
				
			||||||
 | 
					 		 * The first time through, skip this, since we already asked
 | 
				
			||||||
 | 
					 		 * for the first entry when we opened the directory.
 | 
				
			||||||
 | 
					 		 */
 | 
				
			||||||
 | 
					-		if (dflag)
 | 
				
			||||||
 | 
					-			d_entry = readdir(current_dir);
 | 
				
			||||||
 | 
					+		if (dflag && current_file >= 0)
 | 
				
			||||||
 | 
					+			d_entry = d_list[current_file];
 | 
				
			||||||
 | 
					 		dflag++;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-		if (!d_entry)
 | 
				
			||||||
 | 
					+		if (current_file < 0)
 | 
				
			||||||
 | 
					 			break;
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					+                current_file--;
 | 
				
			||||||
 | 
					 		/* OK, got a valid entry */
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 		/* If we do not want all files, then pitch the backups. */
 | 
				
			||||||
 | 
					@@ -1348,7 +1350,7 @@
 | 
				
			||||||
 | 
					 		insert_file_entry(this_dir, whole_path, d_entry->d_name);
 | 
				
			||||||
 | 
					 #endif	/* APPLE_HYB */
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					-	closedir(current_dir);
 | 
				
			||||||
 | 
					+	free(d_list);
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #ifdef APPLE_HYB
 | 
				
			||||||
 | 
					 	/*
 | 
				
			||||||
							
								
								
									
										72
									
								
								contrib/depends/patches/native_mac_alias/python3.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								contrib/depends/patches/native_mac_alias/python3.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,72 @@
 | 
				
			||||||
 | 
					diff -dur a/mac_alias/alias.py b/mac_alias/alias.py
 | 
				
			||||||
 | 
					--- a/mac_alias/alias.py	2015-10-19 12:12:48.000000000 +0200
 | 
				
			||||||
 | 
					+++ b/mac_alias/alias.py	2016-04-03 12:13:12.037159417 +0200
 | 
				
			||||||
 | 
					@@ -243,10 +243,10 @@
 | 
				
			||||||
 | 
					         alias = Alias()
 | 
				
			||||||
 | 
					         alias.appinfo = appinfo
 | 
				
			||||||
 | 
					             
 | 
				
			||||||
 | 
					-        alias.volume = VolumeInfo (volname.replace('/',':'),
 | 
				
			||||||
 | 
					+        alias.volume = VolumeInfo (volname.decode().replace('/',':'),
 | 
				
			||||||
 | 
					                                    voldate, fstype, disktype,
 | 
				
			||||||
 | 
					                                    volattrs, volfsid)
 | 
				
			||||||
 | 
					-        alias.target = TargetInfo (kind, filename.replace('/',':'),
 | 
				
			||||||
 | 
					+        alias.target = TargetInfo (kind, filename.decode().replace('/',':'),
 | 
				
			||||||
 | 
					                                    folder_cnid, cnid,
 | 
				
			||||||
 | 
					                                    crdate, creator_code, type_code)
 | 
				
			||||||
 | 
					         alias.target.levels_from = levels_from
 | 
				
			||||||
 | 
					@@ -261,9 +261,9 @@
 | 
				
			||||||
 | 
					                 b.read(1)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					             if tag == TAG_CARBON_FOLDER_NAME:
 | 
				
			||||||
 | 
					-                alias.target.folder_name = value.replace('/',':')
 | 
				
			||||||
 | 
					+                alias.target.folder_name = value.decode().replace('/',':')
 | 
				
			||||||
 | 
					             elif tag == TAG_CNID_PATH:
 | 
				
			||||||
 | 
					-                alias.target.cnid_path = struct.unpack(b'>%uI' % (length // 4),
 | 
				
			||||||
 | 
					+                alias.target.cnid_path = struct.unpack('>%uI' % (length // 4),
 | 
				
			||||||
 | 
					                                                            value)
 | 
				
			||||||
 | 
					             elif tag == TAG_CARBON_PATH:
 | 
				
			||||||
 | 
					                 alias.target.carbon_path = value
 | 
				
			||||||
 | 
					@@ -298,9 +298,9 @@
 | 
				
			||||||
 | 
					                 alias.target.creation_date \
 | 
				
			||||||
 | 
					                     = mac_epoch + datetime.timedelta(seconds=seconds)
 | 
				
			||||||
 | 
					             elif tag == TAG_POSIX_PATH:
 | 
				
			||||||
 | 
					-                alias.target.posix_path = value
 | 
				
			||||||
 | 
					+                alias.target.posix_path = value.decode()
 | 
				
			||||||
 | 
					             elif tag == TAG_POSIX_PATH_TO_MOUNTPOINT:
 | 
				
			||||||
 | 
					-                alias.volume.posix_path = value
 | 
				
			||||||
 | 
					+                alias.volume.posix_path = value.decode()
 | 
				
			||||||
 | 
					             elif tag == TAG_RECURSIVE_ALIAS_OF_DISK_IMAGE:
 | 
				
			||||||
 | 
					                 alias.volume.disk_image_alias = Alias.from_bytes(value)
 | 
				
			||||||
 | 
					             elif tag == TAG_USER_HOME_LENGTH_PREFIX:
 | 
				
			||||||
 | 
					@@ -422,13 +422,13 @@
 | 
				
			||||||
 | 
					         #       (so doing so is ridiculous, and nothing could rely on it).
 | 
				
			||||||
 | 
					         b.write(struct.pack(b'>h28pI2shI64pII4s4shhI2s10s',
 | 
				
			||||||
 | 
					                             self.target.kind,
 | 
				
			||||||
 | 
					-                            carbon_volname, voldate,
 | 
				
			||||||
 | 
					+                            carbon_volname, int(voldate),
 | 
				
			||||||
 | 
					                             self.volume.fs_type,
 | 
				
			||||||
 | 
					                             self.volume.disk_type,
 | 
				
			||||||
 | 
					                             self.target.folder_cnid,
 | 
				
			||||||
 | 
					                             carbon_filename,
 | 
				
			||||||
 | 
					                             self.target.cnid,
 | 
				
			||||||
 | 
					-                            crdate,
 | 
				
			||||||
 | 
					+                            int(crdate),
 | 
				
			||||||
 | 
					                             self.target.creator_code,
 | 
				
			||||||
 | 
					                             self.target.type_code,
 | 
				
			||||||
 | 
					                             self.target.levels_from,
 | 
				
			||||||
 | 
					@@ -449,12 +449,12 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					         b.write(struct.pack(b'>hhQhhQ',
 | 
				
			||||||
 | 
					                 TAG_HIGH_RES_VOLUME_CREATION_DATE,
 | 
				
			||||||
 | 
					-                8, long(voldate * 65536),
 | 
				
			||||||
 | 
					+                8, int(voldate * 65536),
 | 
				
			||||||
 | 
					                 TAG_HIGH_RES_CREATION_DATE,
 | 
				
			||||||
 | 
					-                8, long(crdate * 65536)))
 | 
				
			||||||
 | 
					+                8, int(crdate * 65536)))
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					         if self.target.cnid_path:
 | 
				
			||||||
 | 
					-            cnid_path = struct.pack(b'>%uI' % len(self.target.cnid_path),
 | 
				
			||||||
 | 
					+            cnid_path = struct.pack('>%uI' % len(self.target.cnid_path),
 | 
				
			||||||
 | 
					                                     *self.target.cnid_path)
 | 
				
			||||||
 | 
					             b.write(struct.pack(b'>hh', TAG_CNID_PATH,
 | 
				
			||||||
 | 
					                                  len(cnid_path)))
 | 
				
			||||||
							
								
								
									
										49
									
								
								contrib/depends/patches/qt/fix-xcb-include-order.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								contrib/depends/patches/qt/fix-xcb-include-order.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,49 @@
 | 
				
			||||||
 | 
					--- old/qtbase/src/plugins/platforms/xcb/xcb_qpa_lib.pro 2015-03-17
 | 
				
			||||||
 | 
					+++ new/qtbase/src/plugins/platforms/xcb/xcb_qpa_lib.pro 2015-03-17
 | 
				
			||||||
 | 
					@@ -76,8 +76,6 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 DEFINES += $$QMAKE_DEFINES_XCB
 | 
				
			||||||
 | 
					 LIBS += $$QMAKE_LIBS_XCB
 | 
				
			||||||
 | 
					-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					-QMAKE_CFLAGS += $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 CONFIG += qpa/genericunixfontdatabase
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					@@ -89,7 +87,8 @@
 | 
				
			||||||
 | 
					 contains(QT_CONFIG, xcb-qt) {
 | 
				
			||||||
 | 
					     DEFINES += XCB_USE_RENDER
 | 
				
			||||||
 | 
					     XCB_DIR = ../../../3rdparty/xcb
 | 
				
			||||||
 | 
					-    INCLUDEPATH += $$XCB_DIR/include $$XCB_DIR/sysinclude
 | 
				
			||||||
 | 
					+    QMAKE_CFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					+    QMAKE_CXXFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					     LIBS += -lxcb -L$$MODULE_BASE_OUTDIR/lib -lxcb-static$$qtPlatformTargetSuffix()
 | 
				
			||||||
 | 
					 } else {
 | 
				
			||||||
 | 
					     LIBS += -lxcb -lxcb-image -lxcb-icccm -lxcb-sync -lxcb-xfixes -lxcb-shm -lxcb-randr -lxcb-shape -lxcb-keysyms -lxcb-xinerama
 | 
				
			||||||
 | 
					--- old/qtbase/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
 | 
				
			||||||
 | 
					+++ new/qtbase/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
 | 
				
			||||||
 | 
					@@ -9,7 +9,8 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 XCB_DIR = ../../../../3rdparty/xcb
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-INCLUDEPATH += $$XCB_DIR/include $$XCB_DIR/include/xcb $$XCB_DIR/sysinclude
 | 
				
			||||||
 | 
					+QMAKE_CFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/include/xcb -I$$XCB_DIR/sysinclude
 | 
				
			||||||
 | 
					+QMAKE_CXXFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/include/xcb -I$$XCB_DIR/sysinclude
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					 QMAKE_CFLAGS += $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					--- old/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro
 | 
				
			||||||
 | 
					+++ new/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro
 | 
				
			||||||
 | 
					@@ -6,6 +6,13 @@
 | 
				
			||||||
 | 
					     qxcbmain.cpp
 | 
				
			||||||
 | 
					 OTHER_FILES += xcb.json README
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+contains(QT_CONFIG, xcb-qt) {
 | 
				
			||||||
 | 
					+    DEFINES += XCB_USE_RENDER
 | 
				
			||||||
 | 
					+    XCB_DIR = ../../../3rdparty/xcb
 | 
				
			||||||
 | 
					+    QMAKE_CFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					+    QMAKE_CXXFLAGS += -I$$XCB_DIR/include -I$$XCB_DIR/sysinclude $$QMAKE_CFLAGS_XCB
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 PLUGIN_TYPE = platforms
 | 
				
			||||||
 | 
					 PLUGIN_CLASS_NAME = QXcbIntegrationPlugin
 | 
				
			||||||
 | 
					 !equals(TARGET, $$QT_DEFAULT_QPA_PLUGIN): PLUGIN_EXTENDS = -
 | 
				
			||||||
							
								
								
									
										11
									
								
								contrib/depends/patches/qt/fix_qt_pkgconfig.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								contrib/depends/patches/qt/fix_qt_pkgconfig.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					--- old/qtbase/mkspecs/features/qt_module.prf
 | 
				
			||||||
 | 
					+++ new/qtbase/mkspecs/features/qt_module.prf
 | 
				
			||||||
 | 
					@@ -245,7 +245,7 @@
 | 
				
			||||||
 | 
					 load(qt_targets)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 # this builds on top of qt_common
 | 
				
			||||||
 | 
					-!internal_module:!lib_bundle:if(unix|mingw) {
 | 
				
			||||||
 | 
					+unix|mingw {
 | 
				
			||||||
 | 
					     CONFIG += create_pc
 | 
				
			||||||
 | 
					     QMAKE_PKGCONFIG_DESTDIR = pkgconfig
 | 
				
			||||||
 | 
					     host_build: \
 | 
				
			||||||
							
								
								
									
										25
									
								
								contrib/depends/patches/qt/mac-qmake.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								contrib/depends/patches/qt/mac-qmake.conf
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,25 @@
 | 
				
			||||||
 | 
					MAKEFILE_GENERATOR = UNIX
 | 
				
			||||||
 | 
					CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname absolute_library_soname
 | 
				
			||||||
 | 
					QMAKE_INCREMENTAL_STYLE = sublib
 | 
				
			||||||
 | 
					include(../common/macx.conf)
 | 
				
			||||||
 | 
					include(../common/gcc-base-mac.conf)
 | 
				
			||||||
 | 
					include(../common/clang.conf)
 | 
				
			||||||
 | 
					include(../common/clang-mac.conf)
 | 
				
			||||||
 | 
					QMAKE_MAC_SDK_PATH=$${MAC_SDK_PATH}
 | 
				
			||||||
 | 
					QMAKE_XCODE_VERSION=4.3
 | 
				
			||||||
 | 
					QMAKE_XCODE_DEVELOPER_PATH=/Developer
 | 
				
			||||||
 | 
					QMAKE_MACOSX_DEPLOYMENT_TARGET = $${MAC_MIN_VERSION}
 | 
				
			||||||
 | 
					QMAKE_MAC_SDK=macosx
 | 
				
			||||||
 | 
					QMAKE_MAC_SDK.macosx.Path = $${MAC_SDK_PATH}
 | 
				
			||||||
 | 
					QMAKE_MAC_SDK.macosx.platform_name = macosx
 | 
				
			||||||
 | 
					QMAKE_MAC_SDK.macosx.SDKVersion = $${MAC_SDK_VERSION}
 | 
				
			||||||
 | 
					QMAKE_MAC_SDK.macosx.PlatformPath = /phony
 | 
				
			||||||
 | 
					!host_build: QMAKE_CFLAGS += -target $${MAC_TARGET}
 | 
				
			||||||
 | 
					!host_build: QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_CFLAGS
 | 
				
			||||||
 | 
					!host_build: QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
 | 
				
			||||||
 | 
					!host_build: QMAKE_LFLAGS += -target $${MAC_TARGET} -mlinker-version=$${MAC_LD64_VERSION}
 | 
				
			||||||
 | 
					QMAKE_AR = $${CROSS_COMPILE}ar cq
 | 
				
			||||||
 | 
					QMAKE_RANLIB=$${CROSS_COMPILE}ranlib
 | 
				
			||||||
 | 
					QMAKE_LIBTOOL=$${CROSS_COMPILE}libtool
 | 
				
			||||||
 | 
					QMAKE_INSTALL_NAME_TOOL=$${CROSS_COMPILE}install_name_tool
 | 
				
			||||||
 | 
					load(qt_config)
 | 
				
			||||||
							
								
								
									
										44
									
								
								contrib/depends/patches/qt/mingw-uuidof.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								contrib/depends/patches/qt/mingw-uuidof.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,44 @@
 | 
				
			||||||
 | 
					--- old/qtbase/src/plugins/platforms/windows/qwindowscontext.cpp
 | 
				
			||||||
 | 
					+++ new/qtbase/src/plugins/platforms/windows/qwindowscontext.cpp
 | 
				
			||||||
 | 
					@@ -77,7 +77,7 @@
 | 
				
			||||||
 | 
					 #include <stdlib.h>
 | 
				
			||||||
 | 
					 #include <stdio.h>
 | 
				
			||||||
 | 
					 #include <windowsx.h>
 | 
				
			||||||
 | 
					-#ifndef Q_OS_WINCE
 | 
				
			||||||
 | 
					+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 | 
				
			||||||
 | 
					 #  include <comdef.h>
 | 
				
			||||||
 | 
					 #endif
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					@@ -814,7 +814,7 @@
 | 
				
			||||||
 | 
					                           HWND_MESSAGE, NULL, static_cast<HINSTANCE>(GetModuleHandle(0)), NULL);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-#ifndef Q_OS_WINCE
 | 
				
			||||||
 | 
					+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 | 
				
			||||||
 | 
					 // Re-engineered from the inline function _com_error::ErrorMessage().
 | 
				
			||||||
 | 
					 // We cannot use it directly since it uses swprintf_s(), which is not
 | 
				
			||||||
 | 
					 // present in the MSVCRT.DLL found on Windows XP (QTBUG-35617).
 | 
				
			||||||
 | 
					@@ -833,7 +833,7 @@
 | 
				
			||||||
 | 
					          return QString::asprintf("IDispatch error #%u", uint(wCode));
 | 
				
			||||||
 | 
					      return QString::asprintf("Unknown error 0x0%x", uint(comError.Error()));
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					-#endif // !Q_OS_WINCE
 | 
				
			||||||
 | 
					+#endif // !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 /*!
 | 
				
			||||||
 | 
					     \brief Common COM error strings.
 | 
				
			||||||
 | 
					@@ -901,12 +901,12 @@
 | 
				
			||||||
 | 
					     default:
 | 
				
			||||||
 | 
					         break;
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					-#ifndef Q_OS_WINCE
 | 
				
			||||||
 | 
					+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 | 
				
			||||||
 | 
					     _com_error error(hr);
 | 
				
			||||||
 | 
					     result += QByteArrayLiteral(" (");
 | 
				
			||||||
 | 
					     result += errorMessageFromComError(error);
 | 
				
			||||||
 | 
					     result += ')';
 | 
				
			||||||
 | 
					-#endif // !Q_OS_WINCE
 | 
				
			||||||
 | 
					+#endif // !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 | 
				
			||||||
 | 
					     return result;
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
							
								
								
									
										37
									
								
								contrib/depends/patches/qt/pidlist_absolute.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								contrib/depends/patches/qt/pidlist_absolute.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,37 @@
 | 
				
			||||||
 | 
					diff -dur old/qtbase/src/plugins/platforms/windows/qwindowscontext.h new/qtbase/src/plugins/platforms/windows/qwindowscontext.h
 | 
				
			||||||
 | 
					--- old/qtbase/src/plugins/platforms/windows/qwindowscontext.h
 | 
				
			||||||
 | 
					+++ new/qtbase/src/plugins/platforms/windows/qwindowscontext.h
 | 
				
			||||||
 | 
					@@ -136,10 +136,18 @@
 | 
				
			||||||
 | 
					     inline void init();
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     typedef HRESULT (WINAPI *SHCreateItemFromParsingName)(PCWSTR, IBindCtx *, const GUID&, void **);
 | 
				
			||||||
 | 
					+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3)
 | 
				
			||||||
 | 
					+    typedef HRESULT (WINAPI *SHGetKnownFolderIDList)(const GUID &, DWORD, HANDLE, ITEMIDLIST **);
 | 
				
			||||||
 | 
					+#else
 | 
				
			||||||
 | 
					     typedef HRESULT (WINAPI *SHGetKnownFolderIDList)(const GUID &, DWORD, HANDLE, PIDLIST_ABSOLUTE *);
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					     typedef HRESULT (WINAPI *SHGetStockIconInfo)(int , int , _SHSTOCKICONINFO *);
 | 
				
			||||||
 | 
					     typedef HRESULT (WINAPI *SHGetImageList)(int, REFIID , void **);
 | 
				
			||||||
 | 
					+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3)
 | 
				
			||||||
 | 
					+    typedef HRESULT (WINAPI *SHCreateItemFromIDList)(const ITEMIDLIST *, REFIID, void **);
 | 
				
			||||||
 | 
					+#else
 | 
				
			||||||
 | 
					     typedef HRESULT (WINAPI *SHCreateItemFromIDList)(PCIDLIST_ABSOLUTE, REFIID, void **);
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					     SHCreateItemFromParsingName sHCreateItemFromParsingName;
 | 
				
			||||||
 | 
					     SHGetKnownFolderIDList sHGetKnownFolderIDList;
 | 
				
			||||||
 | 
					diff -dur old/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp new/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp
 | 
				
			||||||
 | 
					--- old/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp
 | 
				
			||||||
 | 
					+++ new/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp
 | 
				
			||||||
 | 
					@@ -1016,7 +1016,11 @@
 | 
				
			||||||
 | 
					             qWarning() << __FUNCTION__ << ": Invalid CLSID: " << url.path();
 | 
				
			||||||
 | 
					             return Q_NULLPTR;
 | 
				
			||||||
 | 
					         }
 | 
				
			||||||
 | 
					+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3)
 | 
				
			||||||
 | 
					+        ITEMIDLIST *idList;
 | 
				
			||||||
 | 
					+#else
 | 
				
			||||||
 | 
					         PIDLIST_ABSOLUTE idList;
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					         HRESULT hr = QWindowsContext::shell32dll.sHGetKnownFolderIDList(uuid, 0, 0, &idList);
 | 
				
			||||||
 | 
					         if (FAILED(hr)) {
 | 
				
			||||||
 | 
					             qErrnoWarning("%s: SHGetKnownFolderIDList(%s)) failed", __FUNCTION__, qPrintable(url.toString()));
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue