diff options
236 files changed, 6943 insertions, 1720 deletions
@@ -37,14 +37,17 @@ TMP_DIR = $(PWD)/tmp-$(1) MAKEFILE := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) TOP_DIR := $(patsubst %/,%,$(dir $(MAKEFILE))) PKGS := $(shell $(SED) -n 's/^.* class="package">\([^<]*\)<.*$$/\1/p' '$(TOP_DIR)/index.html') -PATH := $(PREFIX)/bin:$(PATH) +BUILD := $(shell '$(TOP_DIR)/tools/config.guess') +BUILD_PKGS := $(shell grep -l 'BUILD_$$(BUILD)' '$(TOP_DIR)/src/'*.mk | $(SED) -n 's,.*src/\(.*\)\.mk,\1,p') +PATH := $(PREFIX)/$(BUILD)/bin:$(PREFIX)/bin:$(PATH) -# unexport any environment variables that might cause trouble -unexport AR CC CFLAGS C_INCLUDE_PATH CPATH CPLUS_INCLUDE_PATH CPP -unexport CPPFLAGS CROSS CXX CXXCPP CXXFLAGS EXEEXT EXTRA_CFLAGS -unexport EXTRA_LDFLAGS LD LDFLAGS LIBRARY_PATH LIBS NM -unexport OBJC_INCLUDE_PATH PKG_CONFIG QMAKESPEC RANLIB STRIP -unexport CONFIG_SITE +# install config.guess for general use +$(shell $(INSTALL) -d '$(PREFIX)/bin') +$(shell $(INSTALL) -m755 '$(TOP_DIR)/tools/config.guess' '$(PREFIX)/bin/') + +# use a minimal whitelist of safe environment variables +ENV_WHITELIST := PATH LANG MAKE% MXE% %PROXY %proxy +unexport $(filter-out $(ENV_WHITELIST),$(shell env | cut -d '=' -f1)) SHORT_PKG_VERSION = \ $(word 1,$(subst ., ,$($(1)_VERSION))).$(word 2,$(subst ., ,$($(1)_VERSION))) @@ -83,7 +86,11 @@ DOWNLOAD_PKG_ARCHIVE = \ $(if $($(1)_FIX_GZIP), \ | gzip -d | gzip -9n, \ ) \ - > '$(PKG_DIR)/$($(1)_FILE)' || rm -f '$(PKG_DIR)/$($(1)_FILE)' + > '$(PKG_DIR)/$($(1)_FILE)' || \ + ( echo; \ + echo 'Download failed!'; \ + echo; \ + rm -f '$(PKG_DIR)/$($(1)_FILE)'; ) ifeq ($(IGNORE_SETTINGS),yes) $(info [ignore settings.mk]) @@ -102,7 +109,7 @@ else endif .PHONY: all -all: $(PKGS) +all: all-filtered .PHONY: check-requirements define CHECK_REQUIREMENT @@ -129,13 +136,14 @@ define CHECK_REQUIREMENT_VERSION fi endef +$(shell [ -d '$(PREFIX)/installed' ] || mkdir -p '$(PREFIX)/installed') + check-requirements: $(PREFIX)/installed/check-requirements $(PREFIX)/installed/check-requirements: $(MAKEFILE) @echo '[check requirements]' $(foreach REQUIREMENT,$(REQUIREMENTS),$(call CHECK_REQUIREMENT,$(REQUIREMENT))) $(call CHECK_REQUIREMENT_VERSION,autoconf,2\.6[4-9]\|2\.[7-9][0-9]) $(call CHECK_REQUIREMENT_VERSION,automake,1\.[1-9][2-9]\(\.[0-9]\+\)\?) - @[ -d '$(PREFIX)/installed' ] || mkdir -p '$(PREFIX)/installed' @touch '$@' define newline @@ -148,6 +156,10 @@ include $(patsubst %,$(TOP_DIR)/src/%.mk,$(PKGS)) .PHONY: download download: $(addprefix download-,$(PKGS)) +.PHONY: build-requirements +build-requirements: + @$(MAKE) -f '$(MAKEFILE)' $(BUILD_PKGS) MXE_TARGETS=$(BUILD) DONT_CHECK_REQUIREMENTS=true + define TARGET_DEPS $(1)_DEPS := $(shell echo '$(MXE_TARGETS)' | \ $(SED) -n 's,.*$(1)\(.*\),\1,p' | \ @@ -178,7 +190,7 @@ $(foreach TARGET,$(MXE_TARGETS),$(eval $(call TARGET_RULE,$(TARGET)))) define PKG_RULE .PHONY: download-$(1) -download-$(1):: $(addprefix download-,$($(1)_DEPS)) +download-$(1):: $(addprefix download-,$($(1)_DEPS) $($(1)_DEPS_$(3))) if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \ $(call DOWNLOAD_PKG_ARCHIVE,$(1)); \ $(call CHECK_PKG_ARCHIVE,$(1)) || { echo 'Wrong checksum!'; exit 1; }; \ @@ -189,8 +201,8 @@ $(1): $(PREFIX)/$(3)/installed/$(1) $(PREFIX)/$(3)/installed/$(1): $(TOP_DIR)/src/$(1).mk \ $(wildcard $(TOP_DIR)/src/$(1)-*.patch) \ $(wildcard $(TOP_DIR)/src/$(1)-test*) \ - $(addprefix $(PREFIX)/$(3)/installed/,$($(1)_DEPS)) \ - | check-requirements $(3) + $(addprefix $(PREFIX)/$(3)/installed/,$($(1)_DEPS) $($(1)_DEPS_$(3))) \ + | $(if $(DONT_CHECK_REQUIREMENTS),,check-requirements) $(3) @[ -d '$(LOG_DIR)/$(TIMESTAMP)' ] || mkdir -p '$(LOG_DIR)/$(TIMESTAMP)' @if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \ echo '[download] $(1)'; \ @@ -198,7 +210,7 @@ $(PREFIX)/$(3)/installed/$(1): $(TOP_DIR)/src/$(1).mk \ ln -sf '$(TIMESTAMP)/$(1)-download' '$(LOG_DIR)/$(1)-download'; \ if ! $(call CHECK_PKG_ARCHIVE,$(1)); then \ echo; \ - echo 'Wrong checksum of package $(1)!'; \ + echo 'Download failed or wrong checksum of package $(1)!'; \ echo '------------------------------------------------------------'; \ tail -n 10 '$(LOG_DIR)/$(1)-download' | $(SED) -n '/./p'; \ echo '------------------------------------------------------------'; \ @@ -226,7 +238,12 @@ $(PREFIX)/$(3)/installed/$(1): $(TOP_DIR)/src/$(1).mk \ echo '------------------------------------------------------------'; \ echo '[log] $(LOG_DIR)/$(1)'; \ echo; \ - (echo; find '$(2)' -name 'config.log' -print -exec cat {} \;) >> '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)'; \ + (echo; \ + find '$(2)' -name 'config.log' -print -exec cat {} \;; \ + echo; \ + echo 'settings.mk'; \ + cat '$(TOP_DIR)/settings.mk'; \ + ) >> '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)'; \ exit 1; \ fi @echo '[done] $(1)' @@ -251,13 +268,72 @@ build-only-$(1)_$(3): (du -k -d 0 '$(2)' 2>/dev/null || du -k --max-depth 0 '$(2)') | $(SED) -n 's/^\(\S*\).*/du: \1 KiB/p' rm -rfv '$(2)' ,) - [ -d '$(PREFIX)/$(3)/installed' ] || mkdir -p '$(PREFIX)/$(3)/installed' touch '$(PREFIX)/$(3)/installed/$(1)' endef $(foreach TARGET,$(MXE_TARGETS), \ + $(shell [ -d '$(PREFIX)/$(TARGET)/installed' ] || mkdir -p '$(PREFIX)/$(TARGET)/installed') \ $(foreach PKG,$(PKGS), \ $(eval $(call PKG_RULE,$(PKG),$(call TMP_DIR,$(PKG)),$(TARGET))))) +# convenience set-like functions for unique lists +SET_APPEND = \ + $(eval $(1) := $(sort $($(1)) $(2))) + +SET_CLEAR = \ + $(eval $(1) := ) + +# WALK functions accept a list of pkgs and/or wildcards +WALK_UPSTREAM = \ + $(strip \ + $(foreach PKG,$(filter $(1),$(PKGS)),\ + $(foreach DEP,$($(PKG)_DEPS) $(foreach TARGET,$(MXE_TARGETS),$($(PKG)_DEPS_$(TARGET))),\ + $(if $(filter-out $(PKGS_VISITED),$(DEP)),\ + $(call SET_APPEND,PKGS_VISITED,$(DEP))\ + $(call WALK_UPSTREAM,$(DEP))\ + $(DEP))))) + +# not really walking downstream - that seems to be quadratic, so take +# a linear approach and filter the fully expanded upstream for each pkg +WALK_DOWNSTREAM = \ + $(strip \ + $(foreach PKG,$(PKGS),\ + $(call SET_CLEAR,PKGS_VISITED)\ + $(eval $(PKG)_DEPS_ALL := $(call WALK_UPSTREAM,$(PKG))))\ + $(foreach PKG,$(PKGS),\ + $(if $(filter $(1),$($(PKG)_DEPS_ALL)),$(PKG)))) + +# EXCLUDE_PKGS can be a list of pkgs and/or wildcards +RECURSIVELY_EXCLUDED_PKGS = \ + $(sort \ + $(filter $(EXCLUDE_PKGS),$(PKGS))\ + $(call SET_CLEAR,PKGS_VISITED)\ + $(call WALK_DOWNSTREAM,$(EXCLUDE_PKGS))) + +.PHONY: all-filtered +all-filtered: $(filter-out $(call RECURSIVELY_EXCLUDED_PKGS),$(PKGS)) + +# print a list of upstream dependencies and downstream dependents +show-deps-%: + $(call SET_CLEAR,PKGS_VISITED) + $(info $* upstream dependencies:$(newline)\ + $(call WALK_UPSTREAM,$*)\ + $(newline)$(newline)$* downstream dependents:$(newline)\ + $(call WALK_DOWNSTREAM,$*)) + @echo + +# show upstream dependencies and downstream dependents separately +# suitable for usage in shell with: `make show-downstream-deps-foo` +# @echo -n suppresses the "Nothing to be done" without an eol +show-downstream-deps-%: + $(call SET_CLEAR,PKGS_VISITED) + $(info $(call WALK_DOWNSTREAM,$*)) + @echo -n + +show-upstream-deps-%: + $(call SET_CLEAR,PKGS_VISITED) + $(info $(call WALK_UPSTREAM,$*)) + @echo -n + .PHONY: clean clean: rm -rf $(call TMP_DIR,*) $(PREFIX)/* @@ -290,6 +366,11 @@ endef update: $(foreach PKG,$(PKGS),$(call UPDATE,$(PKG),$(shell $($(PKG)_UPDATE)))) +update-package-%: + $(if $(findstring $*~,$(addsuffix ~,$(PKGS))), \ + $(call UPDATE,$*,$(shell $($*_UPDATE))), \ + $(error package $* not found in index.html)) + update-checksum-%: $(if $(findstring $*~,$(addsuffix ~,$(PKGS))), \ $(call DOWNLOAD_PKG_ARCHIVE,$*) && \ @@ -200,26 +200,21 @@ <tr> <th>Runtime</th> <th>Host Triplet</th> - <th>Status</th> + <th>Packages</th> </tr> <tr> <td><a href="http://www.mingw.org/">MinGW 3x</a></td> <td>i686-pc-mingw32</td> - <td>Fully Supported</td> - </tr> - <tr> - <td><a href="http://www.mingw.org/">MinGW 4x</a></td> - <td></td> - <td><a href="https://github.com/mxe/mxe/issues/203">Pilot</a></td> + <td style='text-align:center'>301</td> </tr> <tr> <td rowspan="2"><a href="http://mingw-w64.sourceforge.net/">MinGW-w64</a></td> <td>i686-w64-mingw32</td> - <td>94% (258/275)</td> + <td style='text-align:center'>288</td> </tr> <tr> <td>x86_64-w64-mingw32</td> - <td>86% (238/275)</td> + <td style='text-align:center'>266</td> </tr> </table> @@ -763,11 +758,11 @@ USE_OSGPLUGIN(<plugin2>) <h3 id="requirements-debian">Debian and derivatives</h3> <!-- http://www.debian.org/distrib/packages#search_packages --> - <pre>apt-get install autoconf automake bash bison bzip2 \ - cmake flex gettext git g++ intltool \ - libffi-dev libtool libltdl-dev libssl-dev \ - libxml-parser-perl make openssl patch perl \ - pkg-config scons sed unzip wget xz-utils</pre> + <pre>apt-get install \ + autoconf automake bash bison bzip2 cmake flex gettext \ + git g++ intltool libffi-dev libtool libltdl-dev \ + libssl-dev libxml-parser-perl make openssl patch perl \ + pkg-config scons sed unzip wget xz-utils</pre> <p> On 64-bit Debian, install also: @@ -781,10 +776,10 @@ USE_OSGPLUGIN(<plugin2>) <h3 id="requirements-fedora">Fedora</h3> <!-- https://admin.fedoraproject.org/pkgdb/ --> - <pre>yum install autoconf automake bash bison bzip2 cmake \ - flex gcc-c++ gettext git intltool make sed \ - libffi-devel libtool openssl-devel patch perl pkgconfig \ - scons unzip wget xz</pre> + <pre>yum install \ + autoconf automake bash bison bzip2 cmake flex gcc-c++ \ + gettext git intltool make sed libffi-devel libtool \ + openssl-devel patch perl pkgconfig scons unzip wget xz</pre> <p> On 64-bit Fedora, @@ -794,10 +789,11 @@ USE_OSGPLUGIN(<plugin2>) <h3 id="requirements-freebsd">FreeBSD</h3> <!-- http://www.freshports.org/ --> - <pre>pkg_add -r automake autoconf bash bison cmake coreutils\ - flex gettext git glib20 gmake gsed intltool libffi \ - libtool openssl patch perl p5-XML-Parser pkgconf \ - scons unzip wget</pre> + <pre>pkg_add -r \ + automake autoconf bash bison cmake coreutils flex \ + gettext git glib20 gmake gsed intltool libffi \ + libtool openssl patch perl p5-XML-Parser pkgconf \ + scons unzip wget</pre> <p> Ensure that /usr/local/bin precedes /usr/bin in your $PATH: @@ -820,18 +816,22 @@ USE_OSGPLUGIN(<plugin2>) <p> to build the remainder of MXE, run: </p> - <pre>./tools/freebsd-excludes</pre> + <pre>gmake EXCLUDE_PKGS='gtksourceviewmm2 ocaml% openexr pcl qtbase'</pre> <p> - and review that file for the list of packages that are excluded. + to see a list of all dependent downstream packages that + will be excluded, run: </p> + <pre>gmake show-downstream-deps-'gtksourceviewmm2 ocaml% openexr \ + pcl qtbase'</pre> <h3 id="requirements-frugalware">Frugalware</h3> <!-- http://www.frugalware.org/packages --> - <pre>pacman-g2 -S autoconf automake bash bzip2 bison cmake \ - flex gcc gettext git intltool make sed libffi libtool \ - openssl patch perl perl-xml-parser pkgconfig \ - scons unzip wget xz xz-lzma</pre> + <pre>pacman-g2 -S \ + autoconf automake bash bzip2 bison cmake flex gcc \ + gettext git intltool make sed libffi libtool openssl \ + patch perl perl-xml-parser pkgconfig scons unzip wget \ + xz xz-lzma</pre> <p> On 64-bit Frugalware, @@ -841,30 +841,37 @@ USE_OSGPLUGIN(<plugin2>) <h3 id="requirements-gentoo">Gentoo</h3> <!-- http://packages.gentoo.org/ --> - <pre>emerge sys-devel/autoconf sys-devel/automake \ - app-shells/bash sys-devel/bison app-arch/bzip2 \ - dev-util/cmake sys-devel/flex sys-devel/gcc \ - sys-devel/gettext dev-vcs/git \ - dev-util/intltool sys-devel/make sys-apps/sed \ - dev-libs/libffi sys-devel/libtool dev-libs/openssl sys-devel/patch \ - dev-lang/perl dev-perl/XML-Parser \ - dev-util/pkgconfig dev-util/scons app-arch/unzip \ - net-misc/wget app-arch/xz-utils</pre> + <pre>emerge \ + sys-devel/autoconf sys-devel/automake app-shells/bash \ + sys-devel/bison app-arch/bzip2 dev-util/cmake \ + sys-devel/flex sys-devel/gcc sys-devel/gettext \ + dev-vcs/git dev-util/intltool sys-devel/make \ + sys-apps/sed dev-libs/libffi sys-devel/libtool \ + dev-libs/openssl sys-devel/patch dev-lang/perl \ + dev-perl/XML-Parser dev-util/pkgconfig \ + dev-util/scons app-arch/unzip net-misc/wget \ + app-arch/xz-utils</pre> <h3 id="requirements-macos">Mac OS X</h3> <p> Install - <a href="http://developer.apple.com/xcode/">Xcode 4</a> + <a href="http://developer.apple.com/xcode/">Xcode 5</a> and <a href="http://www.macports.org/">MacPorts</a>, then run: </p> <!-- http://www.macports.org/ports.php --> - <pre>sudo port install autoconf automake bison cmake coreutils \ - flex gettext git-core glib2 gsed intltool libffi \ - libtool openssl p5-xml-parser pkgconfig scons \ - wget xz</pre> + <pre>sudo port install \ + coreutils glib2 gsed intltool p5-xml-parser scons wget xz</pre> + <p> + and from within the mxe directory: + </p> + <pre>make build-requirements</pre> + <p> + You may be prompted to install a java runtime + - this is not required. + </p> <p> Mac OS X versions ≤ 10.7 are no longer supported. </p> @@ -872,19 +879,18 @@ USE_OSGPLUGIN(<plugin2>) <h3 id="requirements-opensuse">openSUSE</h3> <!-- http://software.opensuse.org/113/en --> - <pre>zypper install -R autoconf automake bash bison bzip2 \ - cmake flex gcc-c++ gettext-tools git \ - intltool libffi-devel libtool make openssl \ - libopenssl-devel patch perl \ - perl-XML-Parser pkg-config scons \ - sed unzip wget xz</pre> + <pre>zypper install -R \ + autoconf automake bash bison bzip2 cmake flex gcc-c++ \ + gettext-tools git intltool libffi-devel libtool make \ + openssl libopenssl-devel patch perl perl-XML-Parser \ + pkg-config scons sed unzip wget xz</pre> <p> On 64-bit openSUSE, install also: </p> - <pre>zypper install -R gcc-32bit glibc-devel-32bit \ - libgcc46-32bit libgomp46-32bit \ - libstdc++46-devel-32bit</pre> + <pre>zypper install -R \ + gcc-32bit glibc-devel-32bit libgcc46-32bit \ + libgomp46-32bit libstdc++46-devel-32bit</pre> <h3 id="issue-non-multilib">Issues without a 32-bit compiler</h3> @@ -896,19 +902,10 @@ USE_OSGPLUGIN(<plugin2>) support this. </p> <p> - To build the remainder of MXE, specify empty build rules - for the affected packages: + To build the remainder of MXE, specify the affected + packages to exclude: </p> - <pre>make \ - ocaml-cairo_BUILD= \ - ocaml-findlib_BUILD= \ - ocaml-lablgtk2_BUILD= \ - ocaml-camlimages_BUILD= \ - ocaml-flexdll_BUILD= \ - ocaml-native_BUILD= \ - ocaml-core_BUILD= \ - ocaml-lablgl_BUILD= \ - ocaml-xml-light_BUILD=</pre> + <pre>make EXCLUDE_PKGS='ocaml%'</pre> </div> <div class="section"> @@ -992,6 +989,14 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> (short option "-j 4 -k") </dd> + <dt>make EXCLUDE_PKGS='foo bar'</dt> + + <dd> + build all packages excluding foo, bar, and all downstream + packages that depend on them - mostly used when there are + <a href="#issue-non-multilib">known issues</a> + </dd> + <dt>make check-requirements</dt> <dd> @@ -1038,6 +1043,27 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> handy after a successful update </dd> + <dt>make show-deps-foo</dt> + + <dd> + print a list of upstream dependencies + and downstream dependents + </dd> + + <dt>make show-downstream-deps-foo</dt> + + <dd> + print a list of downstream dependents + suitable for usage in shell scripts + </dd> + + <dt>make show-upstream-deps-foo</dt> + + <dd> + print a list of upstream dependencies + suitable for usage in shell scripts + </dd> + <dt>make update</dt> <dd> @@ -1066,6 +1092,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> </p> <table id="package-list"> <tr> + <td class="package">a52dec</td> + <td class="website"><a href="http://liba52.sourceforge.net/">a52dec (aka. liba52)</a></td> + </tr> + <tr> <td class="package">agg</td> <td class="website"><a href="http://www.antigrain.com/">Anti-Grain Geometry</a></td> </tr> @@ -1098,6 +1128,14 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.aubio.org/">aubio</a></td> </tr> <tr> + <td class="package">autoconf</td> + <td class="website"><a href="http://www.gnu.org/software/autoconf/">autoconf</a></td> + </tr> + <tr> + <td class="package">automake</td> + <td class="website"><a href="http://www.gnu.org/software/automake/">automake</a></td> + </tr> + <tr> <td class="package">bfd</td> <td class="website"><a href="http://www.gnu.org/software/binutils/">Binary File Descriptor library</a></td> </tr> @@ -1106,6 +1144,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.gnu.org/software/binutils/">GNU Binutils</a></td> </tr> <tr> + <td class="package">bison</td> + <td class="website"><a href="http://www.gnu.org/software/bison/">bison</a></td> + </tr> + <tr> <td class="package">blas</td> <td class="website"><a href="http://www.netlib.org/blas/">blas</a></td> </tr> @@ -1142,6 +1184,14 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.cgal.org/">cgal</a></td> </tr> <tr> + <td class="package">cloog</td> + <td class="website"><a href="http://www.cloog.org/">CLooG Code Generator</a></td> + </tr> + <tr> + <td class="package">cmake</td> + <td class="website"><a href="http://www.cmake.org/">cmake</a></td> + </tr> + <tr> <td class="package">cminpack</td> <td class="website"><a href="http://devernay.free.fr/hacks/cminpack/cminpack.html">cminpack</a></td> </tr> @@ -1170,6 +1220,9 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://openil.sourceforge.net/">DevIL</a></td> </tr> <tr> + <td class="package">dlfcn-win32</td> + <td class="website"><a href="https://code.google.com/p/dlfcn-win32/">POSIX dlfcn wrapper for Windows</a></td> + <tr> <td class="package">eigen</td> <td class="website"><a href="http://eigen.tuxfamily.org/">eigen</a></td> </tr> @@ -1206,6 +1259,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN">FLANN</a></td> </tr> <tr> + <td class="package">flex</td> + <td class="website"><a href="http://flex.sourceforge.net/">flex</a></td> + </tr> + <tr> <td class="package">fltk</td> <td class="website"><a href="http://www.fltk.org/">FLTK</a></td> </tr> @@ -1246,10 +1303,18 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://gcc.gnu.org/">GCC</a></td> </tr> <tr> + <td class="package">gcc-cloog</td> + <td class="website"><a href="http://www.cloog.org/">CLooG for GCC</a></td> + </tr> + <tr> <td class="package">gcc-gmp</td> <td class="website"><a href="http://www.gmplib.org/">GMP for GCC</a></td> </tr> <tr> + <td class="package">gcc-isl</td> + <td class="website"><a href="http://isl.gforge.inria.fr/">ISL for GCC</a></td> + </tr> + <tr> <td class="package">gcc-mpc</td> <td class="website"><a href="http://www.multiprecision.org/">MPC for GCC</a></td> </tr> @@ -1290,6 +1355,14 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://glew.sourceforge.net/">GLEW</a></td> </tr> <tr> + <td class="package">glfw2</td> + <td class="website"><a href="http://www.glfw.org/">GLFW 2.x</a></td> + </tr> + <tr> + <td class="package">glfw3</td> + <td class="website"><a href="http://www.glfw.org/">GLFW 3.x</a></td> + </tr> + <tr> <td class="package">glib</td> <td class="website"><a href="http://www.gtk.org/">GLib</a></td> </tr> @@ -1402,8 +1475,12 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.imagemagick.org/">ImageMagick</a></td> </tr> <tr> + <td class="package">isl</td> + <td class="website"><a href="http://isl.gforge.inria.fr/">Integer Set Library</a></td> + </tr> + <tr> <td class="package">itk</td> - <td class="website"><a href="http://www.itk.org/">ITK</a></td> + <td class="website"><a href="http://www.itk.org/">Insight Segmentation and Registration Toolkit (ITK)</a></td> </tr> <tr> <td class="package">jasper</td> @@ -1450,14 +1527,26 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://code.google.com/p/libass/">libass</a></td> </tr> <tr> + <td class="package">libbluray</td> + <td class="website"><a href="http://www.videolan.org/developers/libbluray.html">libbluray</a></td> + </tr> + <tr> <td class="package">libcroco</td> <td class="website"><a href="http://www.freespiders.org/projects/libcroco/">Libcroco</a></td> </tr> <tr> + <td class="package">libdca</td> + <td class="website"><a href="http://www.videolan.org/developers/libdca.html">libdca (formerly libdts)</a></td> + </tr> + <tr> <td class="package">libdnet</td> <td class="website"><a href="http://libdnet.sourceforge.net/">libdnet</a></td> </tr> <tr> + <td class="package">libdvdcss</td> + <td class="website"><a href="http://www.videolan.org/developers/libdvdcss.html">libdvdcss</a></td> + </tr> + <tr> <td class="package">libevent</td> <td class="website"><a href="http://libevent.org/">libevent</a></td> </tr> @@ -1474,6 +1563,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.intra2net.com/en/developer/libftdi/index.php">LibFTDI</a></td> </tr> <tr> + <td class="package">libftdi1</td> + <td class="website"><a href="http://www.intra2net.com/en/developer/libftdi/index.php">LibFTDI1</a></td> + </tr> + <tr> <td class="package">libgcrypt</td> <td class="website"><a href="ftp://ftp.gnupg.org/gcrypt/libgcrypt/">libgcrypt</a></td> </tr> @@ -1550,10 +1643,18 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://liblqr.wikidot.com/">liblqr-1</a></td> </tr> <tr> + <td class="package">libltdl</td> + <td class="website"><a href="http://www.gnu.org/software/libtool/manual/html_node/Using-libltdl.html#Using-libltdl">GNU Libtool Library (libltdl)</a></td> + </tr> + <tr> <td class="package">libmad</td> <td class="website"><a href="http://www.underbit.com/products/mad/">libmad</a></td> </tr> <tr> + <td class="package">libmicrohttpd</td> + <td class="website"><a href="http://www.gnu.org/software/libmicrohttpd/">GNU Libmicrohttpd</a></td> + </tr> + <tr> <td class="package">libmikmod</td> <td class="website"><a href="http://mikmod.raphnet.net/">libMikMod</a></td> </tr> @@ -1570,6 +1671,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.nongnu.org/libntlm/">Libntlm</a></td> </tr> <tr> + <td class="package">libnut</td> + <td class="website"><a href="https://launchpad.net/libnut">libNUT</a></td> + </tr> + <tr> <td class="package">liboauth</td> <td class="website"><a href="http://liboauth.sourceforge.net/">liboauth</a></td> </tr> @@ -1634,6 +1739,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://libusb-win32.sourceforge.net/">LibUsb</a></td> </tr> <tr> + <td class="package">libusb1</td> + <td class="website"><a href="http://libusb.org/">LibUsb-1.0</a></td> + </tr> + <tr> <td class="package">libvpx</td> <td class="website"><a href="http://code.google.com/p/webm/">vpx</a></td> </tr> @@ -1670,6 +1779,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.oberhumer.com/opensource/lzo/">lzo</a></td> </tr> <tr> + <td class="package">m4</td> + <td class="website"><a href="http://www.gnu.org/software/m4/">GNU M4</a></td> + </tr> + <tr> <td class="package">matio</td> <td class="website"><a href="http://sourceforge.net/projects/matio/">matio</a></td> </tr> @@ -1690,6 +1803,14 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.mingw.org/">MinGW Runtime</a></td> </tr> <tr> + <td class="package">mpc</td> + <td class="website"><a href="http://www.multiprecision.org/">GNU MPC</a></td> + </tr> + <tr> + <td class="package">mpg123</td> + <td class="website"><a href="http://www.mpg123.de/">mpg123</a></td> + </tr> + <tr> <td class="package">mpfr</td> <td class="website"><a href="http://www.mpfr.org/">mpfr</a></td> </tr> @@ -1842,6 +1963,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://cairographics.org/">pixman</a></td> </tr> <tr> + <td class="package">pkgconf</td> + <td class="website"><a href="https://github.com/pkgconf/pkgconf">pkgconf</a></td> + </tr> + <tr> <td class="package">plib</td> <td class="website"><a href="http://plib.sourceforge.net/">Plib</a></td> </tr> @@ -1926,6 +2051,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> <tr> + <td class="package">qtconnectivity</td> + <td class="website"><a href="http://qt-project.org/">Qt</a></td> + </tr> + <tr> <td class="package">qtdeclarative</td> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> @@ -1938,7 +2067,7 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> <tr> - <td class="package">qtjsbackend</td> + <td class="package">qtlocation</td> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> <tr> @@ -1966,6 +2095,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> <tr> + <td class="package">qtservice</td> + <td class="website"><a href="https://qt.gitorious.org/qt-solutions/">Qt Solutions</a></td> + </tr> + <tr> <td class="package">qtsvg</td> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> @@ -1982,10 +2115,18 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://qt-project.org/">Qt</a></td> </tr> <tr> + <td class="package">qtwinextras</td> + <td class="website"><a href="http://qt-project.org/">Qt</a></td> + </tr> + <tr> <td class="package">qwt</td> <td class="website"><a href="http://qwt.sourceforge.net/">Qwt</a></td> </tr> <tr> + <td class="package">qwt_qt4</td> + <td class="website"><a href="http://qwt.sourceforge.net/">Qwt-qt4</a></td> + </tr> + <tr> <td class="package">qwtplot3d</td> <td class="website"><a href="http://qwtplot3d.sourceforge.net/">QwtPlot3D</a></td> </tr> @@ -2018,6 +2159,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://sdlpango.sourceforge.net/">SDL_Pango</a></td> </tr> <tr> + <td class="package">sdl_rwhttp</td> + <td class="website"><a href="http://github.com/mgerhardy/SDL_rwhttp/">SDL_rwhttp</a></td> + </tr> + <tr> <td class="package">sdl_sound</td> <td class="website"><a href="http://icculus.org/SDL_sound/">SDL_sound</a></td> </tr> @@ -2026,6 +2171,26 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.libsdl.org/projects/SDL_ttf/">SDL_ttf</a></td> </tr> <tr> + <td class="package">sdl2</td> + <td class="website"><a href="http://www.libsdl.org/">SDL2</a></td> + </tr> + <tr> + <td class="package">sdl2_image</td> + <td class="website"><a href="http://www.libsdl.org/">SDL2_image</a></td> + </tr> + <tr> + <td class="package">sdl2_mixer</td> + <td class="website"><a href="http://www.libsdl.org/">SDL2_mixer</a></td> + </tr> + <tr> + <td class="package">sdl2_net</td> + <td class="website"><a href="http://www.libsdl.org/">sdl2_net</a></td> + </tr> + <tr> + <td class="package">sdl2_ttf</td> + <td class="website"><a href="http://www.libsdl.org/">SDL2_ttf</a></td> + </tr> + <tr> <td class="package">sfml</td> <td class="website"><a href="http://www.sfml-dev.org/">SFML</a></td> </tr> @@ -2034,6 +2199,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://icculus.org/smpeg/">smpeg</a></td> </tr> <tr> + <td class="package">smpeg2</td> + <td class="website"><a href="http://icculus.org/smpeg/">smpeg</a></td> + </tr> + <tr> <td class="package">sox</td> <td class="website"><a href="http://sox.sourceforge.net/">SoX</a></td> </tr> @@ -2090,6 +2259,14 @@ local-pkg-list: $(LOCAL_PKG_LIST)</pre> <td class="website"><a href="http://www.vmime.org/">VMime</a></td> </tr> <tr> + <td class="package">vo-aacenc</td> + <td class="website"><a href="https://github.com/mstorsjo/vo-aacenc">VO-AACENC</a></td> + </tr> + <tr> + <td class="package">vo-amrwbenc</td> + <td class="website"><a href="https://github.com/mstorsjo/vo-amrwbenc">VO-AMRWBENC</a></td> + </tr> + <tr> <td class="package">vorbis</td> <td class="website"><a href="http://www.vorbis.com/">Vorbis</a></td> </tr> diff --git a/src/a52dec.mk b/src/a52dec.mk new file mode 100644 index 0000000..00dcebf --- /dev/null +++ b/src/a52dec.mk @@ -0,0 +1,27 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := a52dec +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.7.4 +$(PKG)_CHECKSUM := 79b33bd8d89dad7436f85b9154ad35667aa37321 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://liba52.sourceforge.net/files/$(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://liba52.sourceforge.net/downloads.html' | \ + $(SED) -n 's,.*/\([0-9][^"]*\)/"\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && autoreconf -fi # The autotools files came with a52dec is _ancient_ + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= +endef @@ -2,7 +2,7 @@ # See index.html for further information. PKG := apr -$(PKG)_IGNORE := 1.4% +$(PKG)_IGNORE := 1.5% $(PKG)_VERSION := 1.4.2 $(PKG)_CHECKSUM := d48324efb0280749a5d7ccbb053d68545c568b4b $(PKG)_SUBDIR := apr-$($(PKG)_VERSION) diff --git a/src/armadillo-1-staticlib.patch b/src/armadillo-1-staticlib.patch index 19f8b4d..3cb919a 100644 --- a/src/armadillo-1-staticlib.patch +++ b/src/armadillo-1-staticlib.patch @@ -13,7 +13,7 @@ diff -urN a/CMakeLists.txt b/CMakeLists.txt # NOTE: # Set ARMA_USE_WRAPPER to false if you're getting linking errors when compiling your programs, -@@ -289,7 +289,7 @@ +@@ -320,7 +320,7 @@ message(STATUS "CMAKE_SHARED_LINKER_FLAGS = ${CMAKE_SHARED_LINKER_FLAGS}") endif() diff --git a/src/armadillo-2-nocmakeconfigfiles.patch b/src/armadillo-2-nocmakeconfigfiles.patch index 08c6ad6..722a12a 100644 --- a/src/armadillo-2-nocmakeconfigfiles.patch +++ b/src/armadillo-2-nocmakeconfigfiles.patch @@ -3,7 +3,7 @@ See index.html for further information. --- armadillo-3.800.2/CMakeLists.txt.patched 2013-04-22 17:15:39.000000000 +0200 +++ armadillo-3.800.2/CMakeLists.txt 2013-04-22 17:31:43.000000000 +0200 -@@ -363,7 +363,7 @@ +@@ -404,7 +404,7 @@ # Export the package for use from the build-tree # (this registers the build-tree with a global CMake-registry) diff --git a/src/armadillo.mk b/src/armadillo.mk index 7cbf17c..632ff8d 100644 --- a/src/armadillo.mk +++ b/src/armadillo.mk @@ -3,8 +3,8 @@ PKG := armadillo $(PKG)_IGNORE := -$(PKG)_VERSION := 3.900.6 -$(PKG)_CHECKSUM := d9ad6af0ea9440cfd78eacba990c0512bd17f19c +$(PKG)_VERSION := 3.920.3 +$(PKG)_CHECKSUM := e6935f8007c4584a79c1aa274049ad53005cdf2e $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/arma/$($(PKG)_FILE) @@ -3,8 +3,8 @@ PKG := atk $(PKG)_IGNORE := -$(PKG)_VERSION := 2.8.0 -$(PKG)_CHECKSUM := e8a9dacd22b31a6cb733ce66fb1c220cc6720970 +$(PKG)_VERSION := 2.10.0 +$(PKG)_CHECKSUM := 9b7f09a31f3781d5af4eb02ec0e2b289cf077a49 $(PKG)_SUBDIR := atk-$($(PKG)_VERSION) $(PKG)_FILE := atk-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/atk/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/autoconf.mk b/src/autoconf.mk new file mode 100644 index 0000000..22ddd9f --- /dev/null +++ b/src/autoconf.mk @@ -0,0 +1,26 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := autoconf +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.69 +$(PKG)_CHECKSUM := e891c3193029775e83e0534ac0ee0c4c711f6d23 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz +$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/autoconf/$($(PKG)_FILE) +$(PKG)_DEPS := m4 + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://ftp.gnu.org/gnu/autoconf/?C=M;O=D' | \ + $(SED) -n 's,.*<a href="autoconf-\([0-9][^"]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD_$(BUILD) + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef diff --git a/src/automake.mk b/src/automake.mk new file mode 100644 index 0000000..ca5b5b5 --- /dev/null +++ b/src/automake.mk @@ -0,0 +1,26 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := automake +$(PKG)_IGNORE := 1.14% +$(PKG)_VERSION := 1.13.2 +$(PKG)_CHECKSUM := 72ee9fcd180c54fd7c067155d85fa071a99c3ea3 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/automake/$($(PKG)_FILE) +$(PKG)_DEPS := autoconf + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://ftp.gnu.org/gnu/automake/?C=M;O=D' | \ + $(SED) -n 's,.*<a href="automake-\([0-9][^"]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD_$(BUILD) + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' man1_MANS= + $(MAKE) -C '$(1).build' -j 1 install man1_MANS= +endef diff --git a/src/binutils.mk b/src/binutils.mk index 293fc1b..0424254 100644 --- a/src/binutils.mk +++ b/src/binutils.mk @@ -3,8 +3,8 @@ PKG := binutils $(PKG)_IGNORE := -$(PKG)_VERSION := 2.23.2 -$(PKG)_CHECKSUM := 042c51073205ebaf88c272d6168f9deb71984b56 +$(PKG)_VERSION := 2.24 +$(PKG)_CHECKSUM := 7ac75404ddb3c4910c7594b51ddfc76d4693debb $(PKG)_SUBDIR := binutils-$($(PKG)_VERSION) $(PKG)_FILE := binutils-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/binutils/$($(PKG)_FILE) @@ -19,10 +19,6 @@ define $(PKG)_UPDATE endef define $(PKG)_BUILD - # install config.guess for general use - $(INSTALL) -d '$(PREFIX)/bin' - $(INSTALL) -m755 '$(1)/config.guess' '$(PREFIX)/bin/' - # install target-specific autotools config file $(INSTALL) -d '$(PREFIX)/$(TARGET)/share' echo "ac_cv_build=`$(1)/config.guess`" > '$(PREFIX)/$(TARGET)/share/config.site' @@ -41,3 +37,5 @@ define $(PKG)_BUILD $(MAKE) -C '$(1)' -j '$(JOBS)' $(MAKE) -C '$(1)' -j 1 install endef + +$(PKG)_BUILD_$(BUILD) := diff --git a/src/bison.mk b/src/bison.mk new file mode 100644 index 0000000..a22e347 --- /dev/null +++ b/src/bison.mk @@ -0,0 +1,26 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := bison +$(PKG)_IGNORE := 3% +$(PKG)_VERSION := 2.7.1 +$(PKG)_CHECKSUM := 00ab1b32d864622077c311e4f5420d4e2931fdc8 +$(PKG)_SUBDIR := bison-$($(PKG)_VERSION) +$(PKG)_FILE := bison-$($(PKG)_VERSION).tar.xz +$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/bison/$($(PKG)_FILE) +$(PKG)_DEPS := flex + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://ftp.gnu.org/gnu/bison/?C=M;O=D' | \ + $(SED) -n 's,.*<a href="bison-\([0-9][^"]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD_$(BUILD) + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef diff --git a/src/boost-1-intrinsics-fix.patch b/src/boost-1-intrinsics-fix.patch new file mode 100644 index 0000000..81a19ba --- /dev/null +++ b/src/boost-1-intrinsics-fix.patch @@ -0,0 +1,37 @@ +This file is part of MXE. +See index.html for further information. + +This patch has been taken from: +http://pkgs.fedoraproject.org/cgit/mingw-boost.git/plain/boost-include-intrin-h-on-mingw-w64.patch + +--- a/boost/detail/interlocked.hpp.interlocked 2012-12-11 15:42:26.000000000 +0100 ++++ b/boost/detail/interlocked.hpp 2013-07-21 15:22:56.082346444 +0200 +@@ -69,9 +69,9 @@ + # define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \ + ((void*)BOOST_INTERLOCKED_EXCHANGE((long*)(dest),(long)(exchange))) + +-#elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN ) ++#elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN ) || defined( __MINGW64_VERSION_MAJOR ) + +-#if defined( BOOST_MSVC ) && BOOST_MSVC >= 1600 ++#if ( defined( BOOST_MSVC ) && BOOST_MSVC >= 1600 ) || defined( __MINGW64_VERSION_MAJOR ) + + #include <intrin.h> + +@@ -93,12 +93,16 @@ + + #endif + ++# if defined( BOOST_MSVC ) ++ + # pragma intrinsic( _InterlockedIncrement ) + # pragma intrinsic( _InterlockedDecrement ) + # pragma intrinsic( _InterlockedCompareExchange ) + # pragma intrinsic( _InterlockedExchange ) + # pragma intrinsic( _InterlockedExchangeAdd ) + ++# endif ++ + # if defined(_M_IA64) || defined(_M_AMD64) + + extern "C" void* __cdecl _InterlockedCompareExchangePointer( void* volatile *, void*, void* ); diff --git a/src/boost-2-winerror.patch b/src/boost-2-winerror.patch new file mode 100644 index 0000000..d9b03ea --- /dev/null +++ b/src/boost-2-winerror.patch @@ -0,0 +1,17 @@ +This file is part of MXE. +See index.html for further information. + +Fix WinError.h capitalization. See http://svn.boost.org/trac/boost/ticket/7081 + +diff -ur a/boost/detail/win/basic_types.hpp b/boost/detail/win/basic_types.hpp +--- a/boost/detail/win/basic_types.hpp 2011-03-25 02:20:55.000000000 +0100 ++++ b/boost/detail/win/basic_types.hpp 2013-11-13 18:59:00.225614699 +0100 +@@ -14,7 +14,7 @@ + #if defined( BOOST_USE_WINDOWS_H ) + # include <windows.h> + #elif defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ ) || defined(__CYGWIN__) +-# include <WinError.h> ++# include <winerror.h> + // @FIXME Which condition must be tested + # ifdef UNDER_CE + # ifndef WINAPI diff --git a/src/cairo.mk b/src/cairo.mk index 60f2e0b..cbb333a 100644 --- a/src/cairo.mk +++ b/src/cairo.mk @@ -3,8 +3,8 @@ PKG := cairo $(PKG)_IGNORE := -$(PKG)_VERSION := 1.12.14 -$(PKG)_CHECKSUM := 9106ab09b2e7b9f90521b18dd4a7e9577eba6c15 +$(PKG)_VERSION := 1.12.16 +$(PKG)_CHECKSUM := 4f6e337d5d3edd7ea79d1426f575331552b003ec $(PKG)_SUBDIR := cairo-$($(PKG)_VERSION) $(PKG)_FILE := cairo-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://cairographics.org/releases/$($(PKG)_FILE) diff --git a/src/cblas.mk b/src/cblas.mk index 732c6f4..8f0d584 100644 --- a/src/cblas.mk +++ b/src/cblas.mk @@ -9,26 +9,36 @@ $(PKG)_SUBDIR := CBLAS $(PKG)_FILE := $(PKG).tgz $(PKG)_URL := http://www.netlib.org/blas/blast-forum/$($(PKG)_FILE) $(PKG)_URL_2 := ftp://ftp.eq.uc.pt/pub/software/math/netlib/blas/blast-forum/$($(PKG)_FILE) -$(PKG)_DEPS := gcc +$(PKG)_DEPS := gcc blas define $(PKG)_UPDATE echo 1 endef define $(PKG)_BUILD - cp '$(1)/Makefile.LINUX' '$(1)/Makefile.MINGW32' - $(SED) -i 's,CBDIR =.*,CBDIR = $(1),g' '$(1)/Makefile.MINGW32' - $(SED) -i 's,FC =.*,FC = $(TARGET)-gfortran,g' '$(1)/Makefile.MINGW32' - $(SED) -i 's, make , $(MAKE) ,g' '$(1)/Makefile' - rm '$(1)/Makefile.in' - ln -sf '$(1)/Makefile.MINGW32' '$(1)/Makefile.in' - mkdir '$(1)/MINGW32' - $(MAKE) -C '$(1)' -j '$(JOBS)' alllib - cd '$(1)' && $(TARGET)-ar cr libcblas.a src/*.o + $(SED) -i 's, make , $(MAKE) ,g' '$(1)/Makefile' + $(MAKE) -C '$(1)' -j '$(JOBS)' \ + CBDIR='$(1)' \ + CBLIB='$(1)/lib/libcblas.a' \ + CC='$(TARGET)-gcc' \ + FC='$(TARGET)-gfortran' \ + ARCH='$(TARGET)-ar' \ + RANLIB='$(TARGET)-ranlib' \ + alllib - $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib' - $(INSTALL) -m644 '$(1)/libcblas.a' '$(PREFIX)/$(TARGET)/lib/' - $(INSTALL) -d '$(PREFIX)/$(TARGET)/include' + $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib' + $(INSTALL) -m644 '$(1)/lib/libcblas.a' '$(PREFIX)/$(TARGET)/lib/' + $(INSTALL) -d '$(PREFIX)/$(TARGET)/include' $(INSTALL) -m644 '$(1)/include/cblas.h' '$(PREFIX)/$(TARGET)/include/' $(INSTALL) -m644 '$(1)/include/cblas_f77.h' '$(PREFIX)/$(TARGET)/include/' + + '$(TARGET)-gcc' \ + -W -Wall -Werror -ansi -pedantic \ + '$(1)/examples/cblas_example1.c' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \ + -lcblas -lblas -lgfortran + + '$(TARGET)-gcc' \ + -W -Wall -Werror -ansi -pedantic \ + '$(1)/examples/cblas_example2.c' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG)-F77.exe' \ + -lcblas -lblas -lgfortran -DADD_ endef diff --git a/src/cloog.mk b/src/cloog.mk new file mode 100644 index 0000000..5efa132 --- /dev/null +++ b/src/cloog.mk @@ -0,0 +1,31 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := cloog +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.18.0 +$(PKG)_CHECKSUM := 85f620a26aabf6a934c44ca40a9799af0952f863 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := ftp://gcc.gnu.org/pub/gcc/infrastructure/$($(PKG)_FILE) +$(PKG)_DEPS := gcc gmp isl + +# stick to tested versions from gcc +define $(PKG)_UPDATE + $(WGET) -q -O- 'ftp://gcc.gnu.org/pub/gcc/infrastructure/' | \ + $(SED) -n 's,.*cloog-\([0-9][^>]*\)\.tar.*,\1,p' | \ + $(SORT) -V | + tail -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --enable-static \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-gmp-prefix='$(PREFIX)/$(TARGET)' \ + --with-isl-prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install +endef diff --git a/src/cmake.mk b/src/cmake.mk new file mode 100644 index 0000000..b7561c8 --- /dev/null +++ b/src/cmake.mk @@ -0,0 +1,26 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := cmake +$(PKG)_IGNORE := % +$(PKG)_VERSION := 2.8.12.1 +$(PKG)_CHECKSUM := 5661a607acbce7c16bb5f15ff2895fa5ca53a4da +$(PKG)_SUBDIR := cmake-$($(PKG)_VERSION) +$(PKG)_FILE := cmake-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.cmake.org/files/v$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://www.cmake.org/cmake/resources/software.html' | \ + $(SED) -n 's,.*cmake-\([0-9.]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD_$(BUILD) + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef diff --git a/src/cminpack.mk b/src/cminpack.mk index 96afc76..54333cb 100644 --- a/src/cminpack.mk +++ b/src/cminpack.mk @@ -3,8 +3,8 @@ PKG := cminpack $(PKG)_IGNORE := -$(PKG)_VERSION := 1.3.0 -$(PKG)_CHECKSUM := 8bf19ce37b486707c402a046c33d823c9e359410 +$(PKG)_VERSION := 1.3.2 +$(PKG)_CHECKSUM := f88374f014ca74a56691314cad070789bde62729 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://devernay.free.fr/hacks/cminpack/$($(PKG)_FILE) diff --git a/src/curl.mk b/src/curl.mk index 0b427c4..fb3e9b8 100644 --- a/src/curl.mk +++ b/src/curl.mk @@ -3,8 +3,8 @@ PKG := curl $(PKG)_IGNORE := -$(PKG)_VERSION := 7.31.0 -$(PKG)_CHECKSUM := 662e5c0239b7108a684743674c95cc8111a0a245 +$(PKG)_VERSION := 7.33.0 +$(PKG)_CHECKSUM := 00c4293c336a1f987cf93c9ff385c5eb865db5d0 $(PKG)_SUBDIR := curl-$($(PKG)_VERSION) $(PKG)_FILE := curl-$($(PKG)_VERSION).tar.lzma $(PKG)_URL := http://curl.haxx.se/download/$($(PKG)_FILE) diff --git a/src/dbus.mk b/src/dbus.mk index ff256ea..15ac696 100644 --- a/src/dbus.mk +++ b/src/dbus.mk @@ -3,8 +3,8 @@ PKG := dbus $(PKG)_IGNORE := -$(PKG)_VERSION := 1.7.2 -$(PKG)_CHECKSUM := 6e1828dded661183cd5e852d2f50d1e45c23dcff +$(PKG)_VERSION := 1.7.8 +$(PKG)_CHECKSUM := 0658d55ed3c2bdcf5ca0a8699a41f1960ae1cb10 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://$(PKG).freedesktop.org/releases/$(PKG)/$($(PKG)_FILE) @@ -30,6 +30,9 @@ define $(PKG)_BUILD --disable-maintainer-mode \ --enable-static \ --disable-silent-rules \ + --disable-launchd \ + --disable-doxygen-docs \ + --disable-xml--docs \ CFLAGS='-DPROCESS_QUERY_LIMITED_INFORMATION=0x1000' $(MAKE) -C '$(1)' -j '$(JOBS)' install endef diff --git a/src/dlfcn-win32-1-configure-fixes.patch b/src/dlfcn-win32-1-configure-fixes.patch new file mode 100644 index 0000000..80832d4 --- /dev/null +++ b/src/dlfcn-win32-1-configure-fixes.patch @@ -0,0 +1,35 @@ +This file is part of MXE. +See index.html for further information. + +From: Timothy Gu <timothygu99@gmail.com> +Subject: [PATCH 1/2] configure: make script return 0 if successfully executed + +diff -Naur dlfcn-win32-r19.orig/configure dlfcn-win32-r19/configure +--- dlfcn-win32-r19.orig/configure 2009-01-11 13:31:27.000000000 -0800 ++++ dlfcn-win32-r19/configure 2013-11-23 20:13:14.429342371 -0800 +@@ -186,7 +186,7 @@ + echo "strip: $strip" + echo "static: $static" + echo "shared: $shared" +-enabled shared && { ++if (enabled shared); then + echo "msvc: $msvc"; + echo "strip: $stripping"; +-} ++fi + +From: Timothy Gu <timothygu99@gmail.com> +Subject: [PATCH 2/2] configure: update $libdir and $incdir after parsing opts + +diff -Naur dlfcn-win32-r19.orig/configure dlfcn-win32-r19/configure +--- dlfcn-win32-r19.orig/configure 2009-01-11 13:31:27.000000000 -0800 ++++ dlfcn-win32-r19/configure 2013-11-23 20:15:43.777338541 -0800 +@@ -111,6 +111,8 @@ + esac + done + ++libdir="${PREFIX}/lib" ++incdir="${PREFIX}/include" + ar="${cross_prefix}${ar}" + cc_default="${cross_prefix}${cc_default}" + ranlib="${cross_prefix}${ranlib}" diff --git a/src/dlfcn-win32.mk b/src/dlfcn-win32.mk new file mode 100644 index 0000000..30e4163 --- /dev/null +++ b/src/dlfcn-win32.mk @@ -0,0 +1,28 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := dlfcn-win32 +$(PKG)_IGNORE := +$(PKG)_VERSION := 19 +$(PKG)_CHECKSUM := a0033e37a547c52059d0bf8664a96ecdeeb66419 +$(PKG)_SUBDIR := $(PKG)-r$($(PKG)_VERSION) +$(PKG)_FILE := $($(PKG)_SUBDIR).tar.bz2 +$(PKG)_URL := http://$(PKG).googlecode.com/files/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://code.google.com/p/dlfcn-win32/downloads/list?sort=-uploaded' | \ + $(SED) -n 's,.*dlfcn-win32-r\([0-9][^<]*\)\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --prefix='$(PREFIX)/$(TARGET)' \ + --cross-prefix='$(TARGET)-' \ + --disable-shared + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install + + # No test avalable temprorarily because MXE doesn't support shared build yet +endef diff --git a/src/eigen.mk b/src/eigen.mk index b9b3541..69555bc 100644 --- a/src/eigen.mk +++ b/src/eigen.mk @@ -3,9 +3,9 @@ PKG := eigen $(PKG)_IGNORE := -$(PKG)_VERSION := 3.1.3 -$(PKG)_CHECKSUM := 07e248deaaa5d2a8822a0581a606151127fce450 -$(PKG)_SUBDIR := $(PKG)-$(PKG)-2249f9c22fe8 +$(PKG)_VERSION := 3.1.4 +$(PKG)_CHECKSUM := a5cbe0a5676ea2105c8b0c4569c204bf58fc009a +$(PKG)_SUBDIR := $(PKG)-$(PKG)-36bf2ceaf8f5 $(PKG)_FILE := $($(PKG)_VERSION).tar.bz2 $(PKG)_URL := https://bitbucket.org/$(PKG)/$(PKG)/get/$($(PKG)_FILE) $(PKG)_DEPS := gcc diff --git a/src/exiv2-issue847.patch b/src/exiv2-issue847.patch deleted file mode 100644 index 1fd7b4f..0000000 --- a/src/exiv2-issue847.patch +++ /dev/null @@ -1,268 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -These patches have been taken from: -http://dev.exiv2.org/issues/847 - -From ffb5b66c5b1aeb77c1f95ef69a573030c6370e0c Mon Sep 17 00:00:00 2001 -From: vog <vog@b7c8b350-86e7-0310-a4b4-de8f6a8f16a3> -Date: Fri, 14 Sep 2012 16:06:23 +0000 -Subject: [PATCH 1/4] Issue #847: Add recognition of explicit and implicit - BeginPageSetup - -git-svn-id: svn://dev.exiv2.org/svn/trunk@2869 b7c8b350-86e7-0310-a4b4-de8f6a8f16a3 ---- - src/epsimage.cpp | 28 ++++++++++++++++++++++------ - 1 file changed, 22 insertions(+), 6 deletions(-) - -diff --git a/src/epsimage.cpp b/src/epsimage.cpp -index c937942..51e5bb4 100644 ---- a/src/epsimage.cpp -+++ b/src/epsimage.cpp -@@ -386,6 +386,7 @@ namespace { - size_t posBeginPhotoshop = posEndEps; - size_t posEndPhotoshop = posEndEps; - size_t posPage = posEndEps; -+ size_t posBeginPageSetup = posEndEps; - size_t posEndPageSetup = posEndEps; - size_t posPageTrailer = posEndEps; - size_t posEof = posEndEps; -@@ -397,7 +398,6 @@ namespace { - bool implicitPage = false; - bool implicitPageTrailer = false; - bool inDefaultsPreviewPrologSetup = false; -- bool inPageSetup = false; - bool inRemovableEmbedding = false; - std::string removableEmbeddingEndLine; - unsigned int removableEmbeddingsWithUnmarkedTrailer = 0; -@@ -465,7 +465,7 @@ namespace { - #endif - throw Error(write ? 21 : 14); - } else if (line == "%%BeginPageSetup") { -- inPageSetup = true; -+ posBeginPageSetup = startPos; - } else if (!inRemovableEmbedding && line == "%Exiv2BeginXMP: Before %%EndPageSetup") { - inRemovableEmbedding = true; - removableEmbeddings.push_back(std::make_pair(startPos, startPos)); -@@ -510,18 +510,34 @@ namespace { - if (posPage == posEndEps && posEndComments != posEndEps && !inDefaultsPreviewPrologSetup && !inRemovableEmbedding && !onlyWhitespaces(line)) { - posPage = startPos; - implicitPage = true; -+ posBeginPageSetup = startPos; - posEndPageSetup = startPos; - #ifdef DEBUG -- EXV_DEBUG << "readWriteEpsMetadata: Found implicit Page and EndPageSetup at position: " << startPos << "\n"; -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit Page, BeginPageSetup and EndPageSetup at position: " << startPos << "\n"; - #endif - } -- if (posEndPageSetup == posEndEps && posPage != posEndEps && !inPageSetup && !inRemovableEmbedding && line.size() >= 1 && line[0] != '%') { -+ if (posBeginPageSetup == posEndEps && posPage != posEndEps && !inRemovableEmbedding && line.size() >= 1 && line[0] != '%') { -+ posBeginPageSetup = startPos; - posEndPageSetup = startPos; - #ifdef DEBUG -- EXV_DEBUG << "readWriteEpsMetadata: Found implicit EndPageSetup at position: " << startPos << "\n"; -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit BeginPageSetup and EndPageSetup at position: " << startPos << "\n"; - #endif - } - if (line.size() >= 1 && line[0] != '%') continue; // performance optimization -+ if (line == "%%EOF" || line == "%%Trailer" || line == "%%PageTrailer") { -+ if (posBeginPageSetup == posEndEps) { -+ posBeginPageSetup = startPos; -+ #ifdef DEBUG -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit BeginPageSetup at position: " << startPos << "\n"; -+ #endif -+ } -+ if (posEndPageSetup == posEndEps) { -+ posEndPageSetup = startPos; -+ #ifdef DEBUG -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit EndPageSetup at position: " << startPos << "\n"; -+ #endif -+ } -+ } - if (line == "%%EOF" || line == "%%Trailer") { - if (posPageTrailer == posEndEps) { - posPageTrailer = startPos; -@@ -561,7 +577,6 @@ namespace { - } else if (line == "%%EndSetup") { - inDefaultsPreviewPrologSetup = false; - } else if (posEndPageSetup == posEndEps && line == "%%EndPageSetup") { -- inPageSetup = false; - posEndPageSetup = startPos; - } else if (posPageTrailer == posEndEps && line == "%%PageTrailer") { - posPageTrailer = startPos; -@@ -815,6 +830,7 @@ namespace { - positions.push_back(posExiv2Website); - positions.push_back(posEndComments); - positions.push_back(posPage); -+ positions.push_back(posBeginPageSetup); - positions.push_back(posEndPageSetup); - positions.push_back(posPageTrailer); - positions.push_back(posEof); --- -1.7.10.4 - -From f8c9c6114bf7631bb0dba67582c2666b05b2ff9f Mon Sep 17 00:00:00 2001 -From: vog <vog@b7c8b350-86e7-0310-a4b4-de8f6a8f16a3> -Date: Fri, 14 Sep 2012 16:06:26 +0000 -Subject: [PATCH 2/4] Issue #847: Always insert BeginPageSetup/EndPageSetup - when missing - -git-svn-id: svn://dev.exiv2.org/svn/trunk@2870 b7c8b350-86e7-0310-a4b4-de8f6a8f16a3 ---- - src/epsimage.cpp | 21 ++++++++++++++------- - 1 file changed, 14 insertions(+), 7 deletions(-) - -diff --git a/src/epsimage.cpp b/src/epsimage.cpp -index 51e5bb4..9276eb5 100644 ---- a/src/epsimage.cpp -+++ b/src/epsimage.cpp -@@ -935,6 +935,11 @@ namespace { - writeTemp(*tempIo, "%%EndPageComments" + lineEnding); - } - } -+ if (pos == posBeginPageSetup) { -+ if (line != "%%BeginPageSetup") { -+ writeTemp(*tempIo, "%%BeginPageSetup" + lineEnding); -+ } -+ } - if (useFlexibleEmbedding) { - // insert XMP metadata into existing flexible embedding - if (pos == xmpPos) { -@@ -947,7 +952,8 @@ namespace { - EXV_DEBUG << "readWriteEpsMetadata: Skipping to " << skipPos << " at " << __FILE__ << ":" << __LINE__ << "\n"; - #endif - } -- } else { -+ } -+ if (!useFlexibleEmbedding) { - // remove preceding embedding(s) - for (std::vector<std::pair<size_t, size_t> >::const_iterator e = removableEmbeddings.begin(); e != removableEmbeddings.end(); e++) { - if (pos == e->first) { -@@ -960,9 +966,6 @@ namespace { - } - // insert XMP metadata with new flexible embedding, if necessary - if (pos == posEndPageSetup && !deleteXmp) { -- if (line != "%%EndPageSetup") { -- writeTemp(*tempIo, "%%BeginPageSetup" + lineEnding); -- } - writeTemp(*tempIo, "%Exiv2BeginXMP: Before %%EndPageSetup" + lineEnding); - if (corelDraw) { - writeTemp(*tempIo, "%Exiv2Notice: The following line is needed by CorelDRAW." + lineEnding); -@@ -1004,10 +1007,14 @@ namespace { - writeTemp(*tempIo, "@sv" + lineEnding); - } - writeTemp(*tempIo, "%Exiv2EndXMP" + lineEnding); -- if (line != "%%EndPageSetup") { -- writeTemp(*tempIo, "%%EndPageSetup" + lineEnding); -- } - } -+ } -+ if (pos == posEndPageSetup) { -+ if (line != "%%EndPageSetup") { -+ writeTemp(*tempIo, "%%EndPageSetup" + lineEnding); -+ } -+ } -+ if (!useFlexibleEmbedding) { - if (pos == posPageTrailer && !deleteXmp) { - if (!implicitPageTrailer) { - skipPos = posLineEnd; --- -1.7.10.4 - -From b22ff432f0205d77d1b9e0ad2cd314ab6cdf20b0 Mon Sep 17 00:00:00 2001 -From: vog <vog@b7c8b350-86e7-0310-a4b4-de8f6a8f16a3> -Date: Fri, 14 Sep 2012 16:06:29 +0000 -Subject: [PATCH 3/4] Issue #847: Split recognition of implicit Page, - BeginPageSetup and EndPageSetup - -git-svn-id: svn://dev.exiv2.org/svn/trunk@2871 b7c8b350-86e7-0310-a4b4-de8f6a8f16a3 ---- - src/epsimage.cpp | 17 ++++++++++++----- - 1 file changed, 12 insertions(+), 5 deletions(-) - -diff --git a/src/epsimage.cpp b/src/epsimage.cpp -index 9276eb5..57051a1 100644 ---- a/src/epsimage.cpp -+++ b/src/epsimage.cpp -@@ -396,6 +396,7 @@ namespace { - bool illustrator8 = false; - bool corelDraw = false; - bool implicitPage = false; -+ bool implicitPageSetup = false; - bool implicitPageTrailer = false; - bool inDefaultsPreviewPrologSetup = false; - bool inRemovableEmbedding = false; -@@ -510,29 +511,35 @@ namespace { - if (posPage == posEndEps && posEndComments != posEndEps && !inDefaultsPreviewPrologSetup && !inRemovableEmbedding && !onlyWhitespaces(line)) { - posPage = startPos; - implicitPage = true; -- posBeginPageSetup = startPos; -- posEndPageSetup = startPos; - #ifdef DEBUG -- EXV_DEBUG << "readWriteEpsMetadata: Found implicit Page, BeginPageSetup and EndPageSetup at position: " << startPos << "\n"; -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit Page at position: " << startPos << "\n"; - #endif - } -- if (posBeginPageSetup == posEndEps && posPage != posEndEps && !inRemovableEmbedding && line.size() >= 1 && line[0] != '%') { -+ if (posBeginPageSetup == posEndEps && (implicitPage || (posPage != posEndEps && !inRemovableEmbedding && line.size() >= 1 && line[0] != '%'))) { - posBeginPageSetup = startPos; -+ implicitPageSetup = true; -+ #ifdef DEBUG -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit BeginPageSetup at position: " << startPos << "\n"; -+ #endif -+ } -+ if (posEndPageSetup == posEndEps && implicitPageSetup) { - posEndPageSetup = startPos; - #ifdef DEBUG -- EXV_DEBUG << "readWriteEpsMetadata: Found implicit BeginPageSetup and EndPageSetup at position: " << startPos << "\n"; -+ EXV_DEBUG << "readWriteEpsMetadata: Found implicit EndPageSetup at position: " << startPos << "\n"; - #endif - } - if (line.size() >= 1 && line[0] != '%') continue; // performance optimization - if (line == "%%EOF" || line == "%%Trailer" || line == "%%PageTrailer") { - if (posBeginPageSetup == posEndEps) { - posBeginPageSetup = startPos; -+ implicitPageSetup = true; - #ifdef DEBUG - EXV_DEBUG << "readWriteEpsMetadata: Found implicit BeginPageSetup at position: " << startPos << "\n"; - #endif - } - if (posEndPageSetup == posEndEps) { - posEndPageSetup = startPos; -+ implicitPageSetup = true; - #ifdef DEBUG - EXV_DEBUG << "readWriteEpsMetadata: Found implicit EndPageSetup at position: " << startPos << "\n"; - #endif --- -1.7.10.4 - -From 41fb1a2ff54a9377763e4a66544c2234f9b055c8 Mon Sep 17 00:00:00 2001 -From: vog <vog@b7c8b350-86e7-0310-a4b4-de8f6a8f16a3> -Date: Fri, 14 Sep 2012 17:01:36 +0000 -Subject: [PATCH 4/4] Issue #847: Ensure that Photoshop will always recognize - modified Photoshop EPS files - -For a full description of this issue, see: -http://dev.exiv2.org/issues/847 - -git-svn-id: svn://dev.exiv2.org/svn/trunk@2873 b7c8b350-86e7-0310-a4b4-de8f6a8f16a3 ---- - src/epsimage.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/epsimage.cpp b/src/epsimage.cpp -index 57051a1..4a0ca3a 100644 ---- a/src/epsimage.cpp -+++ b/src/epsimage.cpp -@@ -522,7 +522,7 @@ namespace { - EXV_DEBUG << "readWriteEpsMetadata: Found implicit BeginPageSetup at position: " << startPos << "\n"; - #endif - } -- if (posEndPageSetup == posEndEps && implicitPageSetup) { -+ if (posEndPageSetup == posEndEps && implicitPageSetup && !inRemovableEmbedding && line.size() >= 1 && line[0] != '%') { - posEndPageSetup = startPos; - #ifdef DEBUG - EXV_DEBUG << "readWriteEpsMetadata: Found implicit EndPageSetup at position: " << startPos << "\n"; --- -1.7.10.4 - diff --git a/src/exiv2-r2796.patch b/src/exiv2-r2796.patch deleted file mode 100644 index 34332da..0000000 --- a/src/exiv2-r2796.patch +++ /dev/null @@ -1,87 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -This patch has been taken from: -http://dev.exiv2.org/projects/exiv2/repository/revisions/2796 - -Index: trunk/src/basicio.cpp -=================================================================== ---- trunk/src/basicio.cpp (revision 2795) -+++ trunk/src/basicio.cpp (revision 2796) -@@ -61,6 +61,11 @@ - # include <unistd.h> // for getpid, stat - #endif - -+// Platform specific headers for handling extended attributes (xattr) -+#if defined(__APPLE__) -+# include <sys/xattr.h> -+#endif -+ - #if defined WIN32 && !defined __CYGWIN__ - // Windows doesn't provide mode_t, nlink_t - typedef unsigned short mode_t; -@@ -131,6 +136,8 @@ - int switchMode(OpMode opMode); - //! stat wrapper for internal use - int stat(StructStat& buf) const; -+ //! copy extended attributes (xattr) from another file -+ void copyXattrFrom(const FileIo& src); - #if defined WIN32 && !defined __CYGWIN__ - // Windows function to determine the number of hardlinks (on NTFS) - DWORD winNumberOfLinks() const; -@@ -252,6 +259,47 @@ - return ret; - } // FileIo::Impl::stat - -+ void FileIo::Impl::copyXattrFrom(const FileIo& src) -+ { -+#if defined(__APPLE__) -+# if defined(EXV_UNICODE_PATH) -+# error No xattr API for MacOS X with unicode support -+# endif -+ const ssize_t namebufSize = ::listxattr(src.p_->path_.c_str(), 0, 0, 0); -+ if (namebufSize < 0) { -+ throw Error(2, src.p_->path_, strError(), "listxattr"); -+ } -+ if (namebufSize == 0) { -+ // No extended attributes in source file -+ return; -+ } -+ char namebuf[namebufSize]; -+ if (::listxattr(src.p_->path_.c_str(), namebuf, sizeof(namebuf), 0) != namebufSize) { -+ throw Error(2, src.p_->path_, strError(), "listxattr"); -+ } -+ for (ssize_t namebufPos = 0; namebufPos < namebufSize;) { -+ const char *name = namebuf + namebufPos; -+ namebufPos += strlen(name) + 1; -+ const ssize_t valueSize = ::getxattr(src.p_->path_.c_str(), name, 0, 0, 0, 0); -+ if (valueSize < 0) { -+ throw Error(2, src.p_->path_, strError(), "getxattr"); -+ } -+ char value[valueSize]; -+ if (::getxattr(src.p_->path_.c_str(), name, value, sizeof(value), 0, 0) != valueSize) { -+ throw Error(2, src.p_->path_, strError(), "getxattr"); -+ } -+#ifdef DEBUG -+ EXV_DEBUG << "Copying xattr \"" << name << "\" with value size " << valueSize << "\n"; -+#endif -+ if (::setxattr(path_.c_str(), name, value, valueSize, 0, 0) != 0) { -+ throw Error(2, path_, strError(), "setxattr"); -+ } -+ } -+#else -+ // No xattr support for this platform. -+#endif -+ } // FileIo::Impl::copyXattrFrom -+ - #if defined WIN32 && !defined __CYGWIN__ - DWORD FileIo::Impl::winNumberOfLinks() const - { -@@ -521,6 +569,7 @@ - throw Error(10, path(), "w+b", strError()); - } - } -+ fileIo->p_->copyXattrFrom(*this); - basicIo = fileIo; - } - else { diff --git a/src/exiv2.mk b/src/exiv2.mk index 8a392b4..1af3636 100644 --- a/src/exiv2.mk +++ b/src/exiv2.mk @@ -3,8 +3,8 @@ PKG := exiv2 $(PKG)_IGNORE := -$(PKG)_VERSION := 0.23 -$(PKG)_CHECKSUM := 5f342bf642477526f41add11d6ee7787cdcd639f +$(PKG)_VERSION := 0.24 +$(PKG)_CHECKSUM := 2f19538e54f8c21c180fa96d17677b7cff7dc1bb $(PKG)_SUBDIR := exiv2-$($(PKG)_VERSION) $(PKG)_FILE := exiv2-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://www.exiv2.org/$($(PKG)_FILE) diff --git a/src/ffmpeg.mk b/src/ffmpeg.mk index 6b6f51f..2eecba4 100644 --- a/src/ffmpeg.mk +++ b/src/ffmpeg.mk @@ -2,18 +2,20 @@ # See index.html for further information. PKG := ffmpeg -$(PKG)_IGNORE := -$(PKG)_VERSION := 1.2.1 -$(PKG)_CHECKSUM := 930e5612d75d04fdf7c0579f4d85d47e31e38945 +$(PKG)_IGNORE := 2% +$(PKG)_VERSION := 1.2.4 +$(PKG)_CHECKSUM := ee73a05bde209fc23441c7e49767c1b7a4b6f124 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://www.ffmpeg.org/releases/$($(PKG)_FILE) $(PKG)_URL_2 := http://launchpad.net/ffmpeg/main/$($(PKG)_VERSION)/+download/$($(PKG)_FILE) -$(PKG)_DEPS := gcc bzip2 lame libvpx opencore-amr opus sdl speex theora vorbis x264 xvidcore zlib +$(PKG)_DEPS := gcc bzip2 lame libass libnut libvpx opencore-amr opus sdl speex theora vo-aacenc vo-amrwbenc vorbis x264 xvidcore zlib define $(PKG)_UPDATE $(WGET) -q -O- 'http://www.ffmpeg.org/download.html' | \ $(SED) -n 's,.*ffmpeg-\([0-9][^>]*\)\.tar.*,\1,p' | \ + grep 1.2.* | \ + $(SORT) -Vr | \ head -1 endef @@ -27,28 +29,30 @@ define $(PKG)_BUILD --prefix='$(PREFIX)/$(TARGET)' \ --disable-shared \ --disable-debug \ - --disable-doc \ --enable-memalign-hack \ + --disable-pthreads \ + --enable-w32threads \ + --disable-doc \ --enable-gpl \ --enable-version3 \ --disable-nonfree \ - --enable-postproc \ - --disable-pthreads \ - --enable-w32threads \ --enable-avisynth \ - --enable-libspeex \ - --enable-libtheora \ - --enable-libvorbis \ - --enable-libmp3lame \ - --enable-libxvid \ + --enable-libass \ --disable-libfaac \ + --enable-libmp3lame \ + --enable-libnut \ --enable-libopencore-amrnb \ --enable-libopencore-amrwb \ - --enable-libx264 \ + --enable-libopus \ + --enable-libspeex \ + --enable-libtheora \ + --enable-libvo-aacenc \ + --enable-libvo-amrwbenc \ + --enable-libvorbis \ --enable-libvpx \ - --enable-libopus + --enable-libx264 \ + --enable-libxvid \ + --enable-postproc $(MAKE) -C '$(1)' -j '$(JOBS)' $(MAKE) -C '$(1)' -j 1 install endef - -$(PKG)_BUILD_x86_64-w64-mingw32 = $(subst enable-libxvid,disable-libxvid,$($(PKG)_BUILD)) diff --git a/src/file.mk b/src/file.mk index e6533dd..0d0a251 100644 --- a/src/file.mk +++ b/src/file.mk @@ -3,8 +3,8 @@ PKG := file $(PKG)_IGNORE := -$(PKG)_VERSION := 5.14 -$(PKG)_CHECKSUM := 064c8f17a5f7ae1e336a9285131e046d3b2d04d7 +$(PKG)_VERSION := 5.15 +$(PKG)_CHECKSUM := de1a060aa5fe61c1a6f0359fb526e824b4244323 $(PKG)_SUBDIR := file-$($(PKG)_VERSION) $(PKG)_FILE := file-$($(PKG)_VERSION).tar.gz $(PKG)_URL := ftp://ftp.astron.com/pub/file/$($(PKG)_FILE) diff --git a/src/flann.mk b/src/flann.mk index fbf17cc..c4e62fb 100644 --- a/src/flann.mk +++ b/src/flann.mk @@ -18,7 +18,10 @@ define $(PKG)_UPDATE endef define $(PKG)_BUILD - cd '$(1)' && cmake . \ + # workaround for strange "too many sections" error + # setting CXXFLAGS='-O3' seems to fix it + # similar to http://www.mail-archive.com/mingw-w64-public@lists.sourceforge.net/msg06329.html + cd '$(1)' && CXXFLAGS='-O3' cmake . \ -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_CUDA_LIB=OFF \ diff --git a/src/flex.mk b/src/flex.mk new file mode 100644 index 0000000..e606523 --- /dev/null +++ b/src/flex.mk @@ -0,0 +1,26 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := flex +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.5.37 +$(PKG)_CHECKSUM := db4b140f2aff34c6197cab919828cc4146aae218 +$(PKG)_SUBDIR := flex-$($(PKG)_VERSION) +$(PKG)_FILE := flex-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://prdownloads.sourceforge.net/flex/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://flex.sourceforge.net/' | \ + $(SED) -n 's,.*flex-\([0-9][^"]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD_$(BUILD) + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef diff --git a/src/fontconfig-1-fix_mktemp_s.patch b/src/fontconfig-1-fix_mktemp_s.patch index e47cc40..6340234 100644 --- a/src/fontconfig-1-fix_mktemp_s.patch +++ b/src/fontconfig-1-fix_mktemp_s.patch @@ -11,7 +11,7 @@ diff --git a/configure.ac b/configure.ac index 7919372..6a8822b 100644 --- a/configure.ac +++ b/configure.ac -@@ -145,7 +145,7 @@ AC_TYPE_PID_T +@@ -148,7 +148,7 @@ AC_TYPE_PID_T # Checks for library functions. AC_FUNC_VPRINTF AC_FUNC_MMAP @@ -24,7 +24,7 @@ diff --git a/src/fccompat.c b/src/fccompat.c index a217160..fb383d4 100644 --- a/src/fccompat.c +++ b/src/fccompat.c -@@ -156,8 +156,8 @@ FcMakeTempfile (char *template) +@@ -152,8 +152,8 @@ FcMakeTempfile (char *template) fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC); } # endif diff --git a/src/fontconfig.mk b/src/fontconfig.mk index eb4a508..a7327ad 100644 --- a/src/fontconfig.mk +++ b/src/fontconfig.mk @@ -3,8 +3,8 @@ PKG := fontconfig $(PKG)_IGNORE := -$(PKG)_VERSION := 2.10.93 -$(PKG)_CHECKSUM := 78a87be2a59b0c803bfd69cdafc85cbc31381d3a +$(PKG)_VERSION := 2.11.0 +$(PKG)_CHECKSUM := 969818b0326ac08241b11cbeaa4f203699f9b550 $(PKG)_SUBDIR := fontconfig-$($(PKG)_VERSION) $(PKG)_FILE := fontconfig-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://fontconfig.org/release/$($(PKG)_FILE) diff --git a/src/freetype.mk b/src/freetype.mk index 7e64934..ef7a71f 100644 --- a/src/freetype.mk +++ b/src/freetype.mk @@ -3,8 +3,8 @@ PKG := freetype $(PKG)_IGNORE := -$(PKG)_VERSION := 2.5.0.1 -$(PKG)_CHECKSUM := 4bbd8357b4b723e1ff38414a9eaf50bf99dacb84 +$(PKG)_VERSION := 2.5.1 +$(PKG)_CHECKSUM := 38f561bf3eaa3627015503cb736e137da2fafc6c $(PKG)_SUBDIR := freetype-$($(PKG)_VERSION) $(PKG)_FILE := freetype-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/freetype/freetype2/$(shell echo '$($(PKG)_VERSION)' | cut -d . -f 1,2,3)/$($(PKG)_FILE) @@ -28,4 +28,5 @@ define $(PKG)_BUILD FT2_EXTRA_LIBS="`$(TARGET)-pkg-config libpng --libs`" $(MAKE) -C '$(1)' -j '$(JOBS)' $(MAKE) -C '$(1)' -j 1 install + ln -sf '$(PREFIX)/$(TARGET)/bin/freetype-config' '$(PREFIX)/bin/$(TARGET)-freetype-config' endef @@ -3,8 +3,8 @@ PKG := gc $(PKG)_IGNORE := -$(PKG)_VERSION := 7.2d -$(PKG)_CHECKSUM := b43573800e27361da78f05a2e98394521cfa04fc +$(PKG)_VERSION := 7.2e +$(PKG)_CHECKSUM := 3ad593c6d0ed9c0951c21a657b86c55dab6365c8 $(PKG)_SUBDIR := $(PKG)-7.2 $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://www.hpl.hp.com/personal/Hans_Boehm/$(PKG)/$(PKG)_source/$($(PKG)_FILE) diff --git a/src/gcc-2-darwin-no-pie.patch b/src/gcc-2-darwin-no-pie.patch deleted file mode 100644 index f227083..0000000 --- a/src/gcc-2-darwin-no-pie.patch +++ /dev/null @@ -1,28 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -MXE specific workaround for OSX Lion's new ASLR -causing problems with pre-compiled headers. - -1. more recent native compilers don't solve the problem -2. there isn't an equivalent sysctl for "kernel.randomize_va_space" -3. there isn't an equivalent command for "setarch -R" -4. Apple's version of gcc (based on 4.2) uses custom Makefiles that set "-fno-pic" - -Patch below achieves a similar result to 4, without drifting -too far from standard gcc. - ---- a/configure -+++ b/configure -@@ -30,6 +30,11 @@ else - esac - fi - -+case `uname -sr` in -+ Darwin*11*) -+ LDFLAGS="$LDFLAGS -Wl,-no_pie" -+ ;; -+esac - - as_nl=' - ' diff --git a/src/gcc-3-intrinsics.patch b/src/gcc-2-intrinsics.patch index 5fda900..5fda900 100644 --- a/src/gcc-3-intrinsics.patch +++ b/src/gcc-2-intrinsics.patch diff --git a/src/gcc-cloog.mk b/src/gcc-cloog.mk new file mode 100644 index 0000000..0f57991 --- /dev/null +++ b/src/gcc-cloog.mk @@ -0,0 +1,29 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := gcc-cloog +$(PKG)_IGNORE = $(cloog_IGNORE) +$(PKG)_VERSION = $(cloog_VERSION) +$(PKG)_CHECKSUM = $(cloog_CHECKSUM) +$(PKG)_SUBDIR = $(cloog_SUBDIR) +$(PKG)_FILE = $(cloog_FILE) +$(PKG)_URL = $(cloog_URL) +$(PKG)_URL_2 = $(cloog_URL_2) +$(PKG)_DEPS := gcc-gmp gcc-isl + +define $(PKG)_UPDATE + echo $(cloog_VERSION) +endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)' \ + --disable-shared \ + --with-gmp-prefix='$(PREFIX)' \ + --with-isl-prefix='$(PREFIX)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef + +$(PKG)_BUILD_$(BUILD) = diff --git a/src/gcc-gmp.mk b/src/gcc-gmp.mk index b7bfefe..d9f0a48 100644 --- a/src/gcc-gmp.mk +++ b/src/gcc-gmp.mk @@ -14,3 +14,14 @@ $(PKG)_DEPS := define $(PKG)_UPDATE echo $(gmp_VERSION) endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)' \ + --disable-shared + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef + +$(PKG)_BUILD_$(BUILD) = diff --git a/src/gcc-isl.mk b/src/gcc-isl.mk new file mode 100644 index 0000000..a99a9da --- /dev/null +++ b/src/gcc-isl.mk @@ -0,0 +1,28 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := gcc-isl +$(PKG)_IGNORE = $(isl_IGNORE) +$(PKG)_VERSION = $(isl_VERSION) +$(PKG)_CHECKSUM = $(isl_CHECKSUM) +$(PKG)_SUBDIR = $(isl_SUBDIR) +$(PKG)_FILE = $(isl_FILE) +$(PKG)_URL = $(isl_URL) +$(PKG)_URL_2 = $(isl_URL_2) +$(PKG)_DEPS := gcc-gmp + +define $(PKG)_UPDATE + echo $(isl_VERSION) +endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)' \ + --disable-shared \ + --with-gmp-prefix='$(PREFIX)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef + +$(PKG)_BUILD_$(BUILD) = diff --git a/src/gcc-mpc.mk b/src/gcc-mpc.mk index af7ae83..9311c9a 100644 --- a/src/gcc-mpc.mk +++ b/src/gcc-mpc.mk @@ -2,17 +2,27 @@ # See index.html for further information. PKG := gcc-mpc -$(PKG)_IGNORE := -$(PKG)_VERSION := 1.0.1 -$(PKG)_CHECKSUM := 8c7e19ad0dd9b3b5cc652273403423d6cf0c5edf -$(PKG)_SUBDIR := mpc-$($(PKG)_VERSION) -$(PKG)_FILE := mpc-$($(PKG)_VERSION).tar.gz -$(PKG)_URL := http://www.multiprecision.org/mpc/download/$($(PKG)_FILE) -$(PKG)_URL_2 := http://ftp.debian.org/debian/pool/main/m/mpclib/mpclib_$($(PKG)_VERSION).orig.tar.gz -$(PKG)_DEPS := +$(PKG)_IGNORE = $(mpc_IGNORE) +$(PKG)_VERSION = $(mpc_VERSION) +$(PKG)_CHECKSUM = $(mpc_CHECKSUM) +$(PKG)_SUBDIR = $(mpc_SUBDIR) +$(PKG)_FILE = $(mpc_FILE) +$(PKG)_URL = $(mpc_URL) +$(PKG)_URL_2 = $(mpc_URL_2) +$(PKG)_DEPS := gcc-gmp gcc-mpfr define $(PKG)_UPDATE - $(WGET) -q -O- 'https://gforge.inria.fr/scm/viewvc.php/tags/?root=mpc&sortby=date' | \ - $(SED) -n 's,.*<a name="\([0-9][^"]*\)".*,\1,p' | \ - head -1 + echo $(mpc_VERSION) endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)' \ + --disable-shared \ + --with-gmp='$(PREFIX)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef + +$(PKG)_BUILD_$(BUILD) = diff --git a/src/gcc-mpfr.mk b/src/gcc-mpfr.mk index 5e33038..78192c9 100644 --- a/src/gcc-mpfr.mk +++ b/src/gcc-mpfr.mk @@ -9,8 +9,20 @@ $(PKG)_SUBDIR = $(mpfr_SUBDIR) $(PKG)_FILE = $(mpfr_FILE) $(PKG)_URL = $(mpfr_URL) $(PKG)_URL_2 = $(mpfr_URL_2) -$(PKG)_DEPS := +$(PKG)_DEPS := gcc-gmp define $(PKG)_UPDATE echo $(mpfr_VERSION) endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)' \ + --disable-shared \ + --with-gmp='$(PREFIX)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef + +$(PKG)_BUILD_$(BUILD) = @@ -3,13 +3,17 @@ PKG := gcc $(PKG)_IGNORE := -$(PKG)_VERSION := 4.8.1 -$(PKG)_CHECKSUM := 4e655032cda30e1928fcc3f00962f4238b502169 +$(PKG)_VERSION := 4.8.2 +$(PKG)_CHECKSUM := 810fb70bd721e1d9f446b6503afe0a9088b62986 $(PKG)_SUBDIR := gcc-$($(PKG)_VERSION) $(PKG)_FILE := gcc-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/gcc/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_URL_2 := ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE) -$(PKG)_DEPS := mingwrt w32api mingw-w64 binutils gcc-gmp gcc-mpc gcc-mpfr +$(PKG)_DEPS := binutils gcc-cloog gcc-gmp gcc-isl gcc-mpc gcc-mpfr + +$(PKG)_DEPS_i686-pc-mingw32 := mingwrt w32api +$(PKG)_DEPS_i686-w64-mingw32 := mingw-w64 +$(PKG)_DEPS_x86_64-w64-mingw32 := mingw-w64 define $(PKG)_UPDATE $(WGET) -q -O- 'http://ftp.gnu.org/gnu/gcc/?C=M;O=D' | \ @@ -18,18 +22,8 @@ define $(PKG)_UPDATE tail -1 endef -define $(PKG)_PRE_CONFIGURE - # unpack support libraries - cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-gmp) - mv '$(1)/$(gcc-gmp_SUBDIR)' '$(1)/gmp' - cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-mpc) - mv '$(1)/$(gcc-mpc_SUBDIR)' '$(1)/mpc' - cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,gcc-mpfr) - mv '$(1)/$(gcc-mpfr_SUBDIR)' '$(1)/mpfr' -endef - define $(PKG)_CONFIGURE - # configure gcc and support libraries + # configure gcc mkdir '$(1).build' cd '$(1).build' && '$(1)/configure' \ --target='$(TARGET)' \ @@ -49,8 +43,11 @@ define $(PKG)_CONFIGURE --enable-threads=win32 \ --disable-libgomp \ --disable-libmudflap \ - --with-mpfr-include='$(1)/mpfr/src' \ - --with-mpfr-lib='$(1).build/mpfr/src/.libs' \ + --with-cloog='$(PREFIX)' \ + --with-gmp='$(PREFIX)' \ + --with-isl='$(PREFIX)' \ + --with-mpc='$(PREFIX)' \ + --with-mpfr='$(PREFIX)' \ $(shell [ `uname -s` == Darwin ] && echo "LDFLAGS='-Wl,-no_pie'") endef @@ -102,7 +99,6 @@ endef define $(PKG)_BUILD_i686-pc-mingw32 # build full cross gcc - $($(PKG)_PRE_CONFIGURE) \ $($(PKG)_CONFIGURE) \ --disable-sjlj-exceptions $(MAKE) -C '$(1).build' -j '$(JOBS)' @@ -113,7 +109,6 @@ endef define $(PKG)_BUILD_mingw-w64 # build standalone gcc - $($(PKG)_PRE_CONFIGURE) \ $($(PKG)_CONFIGURE) $(MAKE) -C '$(1).build' -j '$(JOBS)' all-gcc $(MAKE) -C '$(1).build' -j 1 install-gcc @@ -125,7 +120,7 @@ define $(PKG)_BUILD_mingw-w64 --host='$(TARGET)' \ --prefix='$(PREFIX)/$(TARGET)' \ mxe-config-opts - $(MAKE) -C '$(1).crt-build' -j '$(JOBS)' + $(MAKE) -C '$(1).crt-build' -j '$(JOBS)' || $(MAKE) -C '$(1).crt-build' -j '$(JOBS)' $(MAKE) -C '$(1).crt-build' -j 1 install # build rest of gcc @@ -139,3 +134,10 @@ endef $(PKG)_BUILD_x86_64-w64-mingw32 = $(subst mxe-config-opts,--disable-lib32,$($(PKG)_BUILD_mingw-w64)) $(PKG)_BUILD_i686-w64-mingw32 = $(subst mxe-config-opts,--disable-lib64,$($(PKG)_BUILD_mingw-w64)) + +define $(PKG)_BUILD_$(BUILD) + for f in c++ cpp g++ gcc gcov; do \ + ln -sf "`which $$f`" '$(PREFIX)/bin/$(TARGET)'-$$f ; \ + done + $($(PKG)_POST_BUILD) +endef diff --git a/src/gd-1-libpng15.patch b/src/gd-1-libpng15.patch deleted file mode 100644 index 5c4af61..0000000 --- a/src/gd-1-libpng15.patch +++ /dev/null @@ -1,17 +0,0 @@ -# This file is part of MXE. -# See index.html for further information. - -This patch has been taken from: -http://bugs.gentoo.org/show_bug.cgi?id=305101 -http://repos.archlinux.org/wsvn/packages/gd/trunk/libpng14.patch - ---- a/gd_png.c -+++ b/gd_png.c -@@ -149,7 +149,7 @@ - return NULL; - } - -- if (!png_check_sig (sig, 8)) { /* bad signature */ -+ if (png_sig_cmp (sig, 0, 8)) { /* bad signature */ - return NULL; /* bad signature */ - } @@ -3,44 +3,32 @@ PKG := gd $(PKG)_IGNORE := -$(PKG)_VERSION := 2.0.35 -$(PKG)_CHECKSUM := ccf34a610abff2dbf133a20c4d2a4aa94939018a -$(PKG)_SUBDIR := gd-$($(PKG)_VERSION) -$(PKG)_FILE := gd-$($(PKG)_VERSION).tar.bz2 -$(PKG)_URL := http://www.libgd.org/releases/$($(PKG)_FILE) -$(PKG)_DEPS := gcc freetype libpng jpeg libxml2 pthreads +$(PKG)_VERSION := 2.1.0 +$(PKG)_CHECKSUM := 66c56fc07246b66ba649c83e996fd2085ea2f9e2 +$(PKG)_SUBDIR := libgd-$($(PKG)_VERSION) +$(PKG)_FILE := libgd-$($(PKG)_VERSION).tar.xz +$(PKG)_URL := https://bitbucket.org/libgd/gd-libgd/downloads/$($(PKG)_FILE) +$(PKG)_DEPS := gcc fontconfig freetype jpeg libpng libvpx pthreads tiff define $(PKG)_UPDATE - echo 'Warning: Updates are temporarily disabled for package gd.' >&2; - echo $(gd_VERSION) -endef -define $(PKG)_UPDATE_orig - $(WGET) -q -O- 'http://www.libgd.org/releases/' | \ - $(SED) -n 's,.*gd-\([0-9][^>]*\)\.tar.*,\1,p' | \ + $(WGET) -q -O- 'https://bitbucket.org/libgd/gd-libgd/downloads/' | \ + $(SED) -n 's,.*libgd-\([0-9.]*\)\.tar.*,\1,p' | \ head -1 endef define $(PKG)_BUILD - touch '$(1)/aclocal.m4' - touch '$(1)/config.hin' - touch '$(1)/Makefile.in' - $(SED) -i 's,-I@includedir@,-I@includedir@ -DNONDLL,' '$(1)/config/gdlib-config.in' - $(SED) -i 's,-lX11 ,,g' '$(1)/configure' - $(SED) -i 's,png12,png16,g' '$(1)/configure' + $(SED) -i 's,-I@includedir@,-I@includedir@ -DNONDLL -DBGDWIN32,' '$(1)/config/gdlib-config.in' cd '$(1)' && ./configure \ --host='$(TARGET)' \ --disable-shared \ --prefix='$(PREFIX)/$(TARGET)' \ --with-freetype='$(PREFIX)/$(TARGET)' \ --without-x \ - LIBPNG_CONFIG='$(PREFIX)/$(TARGET)/bin/libpng-config' \ - CFLAGS='-DNONDLL -DXMD_H -L$(PREFIX)/$(TARGET)/lib' \ - LIBS="`$(PREFIX)/$(TARGET)/bin/xml2-config --libs`" + CFLAGS='-DNONDLL' $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= '$(TARGET)-gcc' \ -W -Wall -Werror -ansi -pedantic \ '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-gd.exe' \ - `'$(PREFIX)/$(TARGET)/bin/gdlib-config' --cflags` \ - -lgd `'$(PREFIX)/$(TARGET)/bin/gdlib-config' --libs` + `'$(PREFIX)/$(TARGET)/bin/gdlib-config' --cflags --libs` endef diff --git a/src/gdal.mk b/src/gdal.mk index 1a2bfbf..f14cf82 100644 --- a/src/gdal.mk +++ b/src/gdal.mk @@ -3,13 +3,13 @@ PKG := gdal $(PKG)_IGNORE := -$(PKG)_VERSION := 1.10.0 -$(PKG)_CHECKSUM := e522b95056905e4c41047fdb42c0ca172ef3ad25 +$(PKG)_VERSION := 1.10.1 +$(PKG)_CHECKSUM := b4df76e2c0854625d2bedce70cc1eaf4205594ae $(PKG)_SUBDIR := gdal-$($(PKG)_VERSION) $(PKG)_FILE := gdal-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://download.osgeo.org/gdal/CURRENT/$($(PKG)_FILE) $(PKG)_URL_2 := ftp://ftp.remotesensing.org/gdal/CURRENT/$($(PKG)_FILE) -$(PKG)_DEPS := gcc zlib libpng tiff libgeotiff jpeg jasper giflib expat sqlite curl geos postgresql gta hdf4 hdf5 netcdf +$(PKG)_DEPS := gcc proj zlib libpng tiff libgeotiff jpeg jasper giflib expat sqlite curl geos postgresql gta hdf4 hdf5 netcdf define $(PKG)_UPDATE $(WGET) -q -O- 'http://trac.osgeo.org/gdal/wiki/DownloadSource' | \ @@ -31,6 +31,7 @@ define $(PKG)_CONFIGURE --with-vfk \ --with-pam \ --without-threads \ + --with-static-proj4 \ --with-libz='$(PREFIX)/$(TARGET)' \ --with-png='$(PREFIX)/$(TARGET)' \ --with-libtiff='$(PREFIX)/$(TARGET)' \ @@ -46,7 +47,6 @@ define $(PKG)_CONFIGURE --with-gta='$(PREFIX)/$(TARGET)' \ --with-hdf5='$(PREFIX)/$(TARGET)' \ --without-odbc \ - --without-static-proj4 \ --without-xerces \ --without-grass \ --without-libgrass \ @@ -2,8 +2,8 @@ # See index.html for further information. PKG := gdb -$(PKG)_VERSION := 7.6 -$(PKG)_CHECKSUM := b64095579a20e011beeaa5b264fe23a9606ee40f +$(PKG)_VERSION := 7.6.1 +$(PKG)_CHECKSUM := 0e38633b3902070d9c6755e4c54602148a094361 $(PKG)_SUBDIR := gdb-$($(PKG)_VERSION) $(PKG)_FILE := gdb-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/$(PKG)/$($(PKG)_FILE) diff --git a/src/gdk-pixbuf.mk b/src/gdk-pixbuf.mk index fc7529a..cfe2834 100644 --- a/src/gdk-pixbuf.mk +++ b/src/gdk-pixbuf.mk @@ -3,8 +3,8 @@ PKG := gdk-pixbuf $(PKG)_IGNORE := -$(PKG)_VERSION := 2.28.2 -$(PKG)_CHECKSUM := 9876d0a20f592f8fb2a52d4a86ec43d607661beb +$(PKG)_VERSION := 2.30.1 +$(PKG)_CHECKSUM := c3494a68f1bd72c3eaaeaf5e5c638e4051a31075 $(PKG)_SUBDIR := gdk-pixbuf-$($(PKG)_VERSION) $(PKG)_FILE := gdk-pixbuf-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/geos.mk b/src/geos.mk index 5457f5a..7544ddf 100644 --- a/src/geos.mk +++ b/src/geos.mk @@ -3,8 +3,8 @@ PKG := geos $(PKG)_IGNORE := -$(PKG)_VERSION := 3.3.8 -$(PKG)_CHECKSUM := 1743e09f37eb75d85283a684a5765c4f44d035fa +$(PKG)_VERSION := 3.4.2 +$(PKG)_CHECKSUM := b8aceab04dd09f4113864f2d12015231bb318e9a $(PKG)_SUBDIR := geos-$($(PKG)_VERSION) $(PKG)_FILE := geos-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://download.osgeo.org/geos/$($(PKG)_FILE) diff --git a/src/gettext.mk b/src/gettext.mk index f21b37b..7e36506 100644 --- a/src/gettext.mk +++ b/src/gettext.mk @@ -3,8 +3,8 @@ PKG := gettext $(PKG)_IGNORE := -$(PKG)_VERSION := 0.18.2 -$(PKG)_CHECKSUM := 47685e20abf9df6e5fede9efd04442943a96818b +$(PKG)_VERSION := 0.18.3.1 +$(PKG)_CHECKSUM := a32c19a6e39450748f6e56d2ac6b8b0966a5ab05 $(PKG)_SUBDIR := gettext-$($(PKG)_VERSION) $(PKG)_FILE := gettext-$($(PKG)_VERSION).tar.gz $(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/gettext/$($(PKG)_FILE) diff --git a/src/giflib.mk b/src/giflib.mk index ea1e776..f44ef7b 100644 --- a/src/giflib.mk +++ b/src/giflib.mk @@ -3,8 +3,8 @@ PKG := giflib $(PKG)_IGNORE := -$(PKG)_VERSION := 5.0.4 -$(PKG)_CHECKSUM := af3fdf84e2b9ac5c18e7102835a92e2066c7c9f1 +$(PKG)_VERSION := 5.0.5 +$(PKG)_CHECKSUM := 926fecbcef1c5b1ca9d17257d15a197b8b35e405 $(PKG)_SUBDIR := giflib-$($(PKG)_VERSION) $(PKG)_FILE := giflib-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/giflib/giflib-5.x/$($(PKG)_FILE) diff --git a/src/glew.mk b/src/glew.mk index cb6c762..8f2c3ca 100644 --- a/src/glew.mk +++ b/src/glew.mk @@ -3,8 +3,8 @@ PKG := glew $(PKG)_IGNORE := -$(PKG)_VERSION := 1.9.0 -$(PKG)_CHECKSUM := 9291f5c5afefd482c7f3e91ffb3cd4716c6c9ffe +$(PKG)_VERSION := 1.10.0 +$(PKG)_CHECKSUM := f41b45ca4a630ad1d00b8b87c5f493781a380300 $(PKG)_SUBDIR := glew-$($(PKG)_VERSION) $(PKG)_FILE := glew-$($(PKG)_VERSION).tgz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/glew/glew/$($(PKG)_VERSION)/$($(PKG)_FILE) diff --git a/src/glfw2-test.c b/src/glfw2-test.c new file mode 100644 index 0000000..b7c473e --- /dev/null +++ b/src/glfw2-test.c @@ -0,0 +1,28 @@ +/* + * This file is part of MXE. + * See index.html for further information. + */ + +#include <stdlib.h> +#include <GL/glfw.h> + +int main(void) +{ + /* Initialise GLFW */ + if( !glfwInit() ) + { + return EXIT_FAILURE; + } + + /* Open a window and create its OpenGL context */ + if( !glfwOpenWindow( 640, 480, 0,0,0,0, 0,0, GLFW_WINDOW ) ) + { + glfwTerminate(); + return EXIT_FAILURE; + } + + /* Close OpenGL window and terminate GLFW*/ + glfwTerminate(); + + return EXIT_SUCCESS; +} diff --git a/src/glfw2.mk b/src/glfw2.mk new file mode 100644 index 0000000..de7abec --- /dev/null +++ b/src/glfw2.mk @@ -0,0 +1,32 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := glfw2 +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.7.9 +$(PKG)_CHECKSUM := b189922e9804062a0014a3799b4dc35431034623 +$(PKG)_SUBDIR := glfw-$($(PKG)_VERSION) +$(PKG)_FILE := glfw-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/glfw/glfw/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://sourceforge.net/projects/glfw/files/glfw/' | \ + $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \ + grep '^2\.' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD + cd '$(1)/lib/win32' && $(MAKE) -f Makefile.win32.cross-mgw \ + TARGET=$(TARGET)- \ + PREFIX='$(PREFIX)/$(TARGET)' \ + install -j '$(JOBS)' + + #Test + '$(TARGET)-gcc' \ + -W -Wall -Werror -ansi -pedantic \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-glfw2.exe' \ + `'$(TARGET)-pkg-config' libglfw --cflags --libs` +endef diff --git a/src/glfw3-1-fixes.patch b/src/glfw3-1-fixes.patch new file mode 100644 index 0000000..969adb7 --- /dev/null +++ b/src/glfw3-1-fixes.patch @@ -0,0 +1,108 @@ +This file is part of MXE. +See index.html for further information. + +Contains ad hoc patches for cross building. + +From 7106d77856268c39b08de8cbe6f526fda8506389 Mon Sep 17 00:00:00 2001 +From: MXE +Date: Sun, 10 Nov 2013 16:23:03 +1100 +Subject: [PATCH] add option to install pkg-config file + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7c9b2c2..cd0112c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -14,6 +14,7 @@ option(BUILD_SHARED_LIBS "Build shared libraries" OFF) + option(GLFW_BUILD_EXAMPLES "Build the GLFW example programs" ON) + option(GLFW_BUILD_TESTS "Build the GLFW test programs" ON) + option(GLFW_INSTALL "Generate installation target" ON) ++option(GLFW_INSTALL_PKG_CONFIG "Install pkg-config file" OFF) + option(GLFW_DOCUMENT_INTERNALS "Include internals in documentation" OFF) + + if (WIN32) +@@ -117,7 +118,7 @@ endif() + #-------------------------------------------------------------------- + if (WIN32) + set(_GLFW_WIN32 1) +- message(STATUS "Using Win32 for window creation") ++ message(STATUS "Using Win32 for window creation") + + if (GLFW_USE_EGL) + set(_GLFW_EGL 1) +@@ -133,7 +134,7 @@ elseif (APPLE) + message(STATUS "Using NSGL for context creation") + elseif (UNIX) + set(_GLFW_X11 1) +- message(STATUS "Using X11 for window creation") ++ message(STATUS "Using X11 for window creation") + + if (GLFW_USE_EGL) + set(_GLFW_EGL 1) +@@ -238,7 +239,7 @@ if (_GLFW_X11) + # Check for Xkb (X keyboard extension) + if (NOT X11_Xkb_FOUND) + message(FATAL_ERROR "The X keyboard extension headers were not found") +- endif() ++ endif() + + list(APPEND glfw_INCLUDE_DIR ${X11_Xkb_INCLUDE_PATH}) + +@@ -336,7 +337,7 @@ endif() + # Use Cocoa for window creation and NSOpenGL for context creation + #-------------------------------------------------------------------- + if (_GLFW_COCOA AND _GLFW_NSGL) +- ++ + if (GLFW_USE_MENUBAR) + set(_GLFW_USE_MENUBAR 1) + endif() +@@ -351,7 +352,7 @@ if (_GLFW_COCOA AND _GLFW_NSGL) + else() + message(STATUS "Building GLFW only for the native architecture") + endif() +- ++ + # Set up library and include paths + find_library(COCOA_FRAMEWORK Cocoa) + find_library(IOKIT_FRAMEWORK IOKit) +@@ -386,7 +387,7 @@ endif() + configure_file(${GLFW_SOURCE_DIR}/docs/Doxyfile.in + ${GLFW_BINARY_DIR}/docs/Doxyfile @ONLY) + +-configure_file(${GLFW_SOURCE_DIR}/src/config.h.in ++configure_file(${GLFW_SOURCE_DIR}/src/config.h.in + ${GLFW_BINARY_DIR}/src/config.h @ONLY) + + configure_file(${GLFW_SOURCE_DIR}/src/glfwConfig.cmake.in +@@ -395,7 +396,7 @@ configure_file(${GLFW_SOURCE_DIR}/src/glfwConfig.cmake.in + configure_file(${GLFW_SOURCE_DIR}/src/glfwConfigVersion.cmake.in + ${GLFW_BINARY_DIR}/src/glfwConfigVersion.cmake @ONLY) + +-if (UNIX) ++if (UNIX OR GLFW_INSTALL_PKG_CONFIG) + configure_file(${GLFW_SOURCE_DIR}/src/glfw3.pc.in + ${GLFW_BINARY_DIR}/src/glfw3.pc @ONLY) + endif() +@@ -422,7 +423,7 @@ endif() + # The library is installed by src/CMakeLists.txt + #-------------------------------------------------------------------- + if (GLFW_INSTALL) +- install(DIRECTORY include/GLFW DESTINATION include ++ install(DIRECTORY include/GLFW DESTINATION include + FILES_MATCHING PATTERN glfw3.h PATTERN glfw3native.h) + + install(FILES ${GLFW_BINARY_DIR}/src/glfwConfig.cmake +@@ -431,6 +432,9 @@ if (GLFW_INSTALL) + + if (UNIX) + install(EXPORT glfwTargets DESTINATION lib${LIB_SUFFIX}/cmake/glfw) ++ endif() ++ ++ if (UNIX OR GLFW_INSTALL_PKG_CONFIG) + install(FILES ${GLFW_BINARY_DIR}/src/glfw3.pc + DESTINATION lib${LIB_SUFFIX}/pkgconfig) + endif() +-- +1.8.4 + diff --git a/src/glfw3-test.c b/src/glfw3-test.c new file mode 100644 index 0000000..51f6932 --- /dev/null +++ b/src/glfw3-test.c @@ -0,0 +1,41 @@ +/* + * This file is part of MXE. + * See index.html for further information. + */ + +#include <GLFW/glfw3.h> + +int main(void) +{ + GLFWwindow* window; + + /* Initialize the library */ + if (!glfwInit()) + return -1; + + /* Create a windowed mode window and its OpenGL context */ + window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL); + if (!window) + { + glfwTerminate(); + return -1; + } + + /* Make the window's context current */ + glfwMakeContextCurrent(window); + + /* Loop until the user closes the window */ + while (!glfwWindowShouldClose(window)) + { + /* Render here */ + + /* Swap front and back buffers */ + glfwSwapBuffers(window); + + /* Poll for and process events */ + glfwPollEvents(); + } + + glfwTerminate(); + return 0; +} diff --git a/src/glfw3.mk b/src/glfw3.mk new file mode 100644 index 0000000..57459df --- /dev/null +++ b/src/glfw3.mk @@ -0,0 +1,35 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := glfw3 +$(PKG)_IGNORE := +$(PKG)_VERSION := 3.0.3 +$(PKG)_CHECKSUM := 95d0d2a250dc4e9d612cdd1a7433de464db16d89 +$(PKG)_SUBDIR := glfw-$($(PKG)_VERSION) +$(PKG)_FILE := glfw-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/glfw/glfw/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://sourceforge.net/projects/glfw/files/glfw/' | \ + $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \ + grep '^3\.' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && cmake '$(1)' \ + -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ + -DGLFW_BUILD_EXAMPLES=FALSE \ + -DGLFW_BUILD_TESTS=FALSE \ + -DGLFW_INSTALL_PKG_CONFIG=TRUE \ + -DGLFW_PKG_LIBS='-lopengl32 -lgdi32' + $(MAKE) -C '$(1).build' -j '$(JOBS)' install + + '$(TARGET)-gcc' \ + -W -Wall -Werror -ansi -pedantic \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-glfw3.exe' \ + `'$(TARGET)-pkg-config' glfw3 --cflags --libs` +endef diff --git a/src/glib-1-fixes.patch b/src/glib-1-fixes.patch index 3052913..5325ca1 100644 --- a/src/glib-1-fixes.patch +++ b/src/glib-1-fixes.patch @@ -189,7 +189,7 @@ diff -ur a/gio-2.0.pc.in b/gio-2.0.pc.in Requires: glib-2.0 gobject-2.0 Requires.private: gmodule-no-export-2.0 -Libs: -L${libdir} -lgio-2.0 -+Libs: -L${libdir} -lgio-2.0 -ldnsapi ++Libs: -L${libdir} -lgio-2.0 -ldnsapi -liphlpapi Libs.private: @ZLIB_LIBS@ @NETWORK_LIBS@ Cflags: @@ -578,8 +578,8 @@ Subject: [PATCH 8/8] kill docs and gtk-doc dependence (mxe-specific) diff -urN a/autogen.sh b/autogen.sh ---- a/autogen.sh 2012-08-18 19:32:04.000000000 +0200 -+++ b/autogen.sh 2013-06-29 05:50:43.972750651 +0200 +--- a/autogen.sh 2013-05-07 20:26:07.000000000 +0200 ++++ b/autogen.sh 2013-11-09 06:17:50.014630402 +0100 @@ -7,18 +7,6 @@ olddir=`pwd` cd "$srcdir" @@ -600,9 +600,9 @@ diff -urN a/autogen.sh b/autogen.sh if test -z $AUTORECONF; then echo "*** No autoreconf found, please install it ***" diff -urN a/configure.ac b/configure.ac ---- a/configure.ac 2013-06-10 00:53:13.000000000 +0200 -+++ b/configure.ac 2013-06-29 05:52:05.224754174 +0200 -@@ -2645,13 +2645,6 @@ +--- a/configure.ac 2013-10-15 21:14:26.000000000 +0200 ++++ b/configure.ac 2013-11-09 06:18:17.274631022 +0100 +@@ -2710,13 +2710,6 @@ dnl ************************** dnl *** Checks for gtk-doc *** dnl ************************** @@ -617,25 +617,25 @@ diff -urN a/configure.ac b/configure.ac AC_ARG_ENABLE(man, [AS_HELP_STRING([--enable-man], diff -urN a/docs/Makefile.am b/docs/Makefile.am ---- a/docs/Makefile.am 2013-06-10 00:03:17.000000000 +0200 +--- a/docs/Makefile.am 2013-08-08 12:00:40.000000000 +0200 +++ b/docs/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -@@ -1,11 +0,0 @@ +@@ -1,12 +0,0 @@ -## Process this file with automake to produce Makefile.in --include $(top_srcdir)/Makefile.decl - -SUBDIRS = reference - --EXTRA_DIST += debugging.txt macros.txt +-EXTRA_DIST = debugging.txt macros.txt - -files: - @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \ - echo $$p; \ - done +- +-.PHONY: test test-report perf-report full-report diff -urN a/docs/reference/gio/gdbus-object-manager-example/Makefile.am b/docs/reference/gio/gdbus-object-manager-example/Makefile.am ---- a/docs/reference/gio/gdbus-object-manager-example/Makefile.am 2013-06-10 00:03:17.000000000 +0200 +--- a/docs/reference/gio/gdbus-object-manager-example/Makefile.am 2013-08-08 12:00:40.000000000 +0200 +++ b/docs/reference/gio/gdbus-object-manager-example/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -@@ -1,68 +0,0 @@ --include $(top_srcdir)/Makefile.decl +@@ -1,67 +0,0 @@ -NULL = - -# The name of the module. @@ -704,10 +704,9 @@ diff -urN a/docs/reference/gio/gdbus-object-manager-example/Makefile.am b/docs/r -install-data-hook : - rm -rf $(DESTDIR)$(datadir)/gtk-doc/html/gdbus-object-manager-example diff -urN a/docs/reference/gio/Makefile.am b/docs/reference/gio/Makefile.am ---- a/docs/reference/gio/Makefile.am 2013-06-10 00:03:17.000000000 +0200 +--- a/docs/reference/gio/Makefile.am 2013-08-08 12:00:40.000000000 +0200 +++ b/docs/reference/gio/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -@@ -1,179 +0,0 @@ --include $(top_srcdir)/Makefile.decl +@@ -1,178 +0,0 @@ -NULL = - -SUBDIRS = gdbus-object-manager-example @@ -887,11 +886,10 @@ diff -urN a/docs/reference/gio/Makefile.am b/docs/reference/gio/Makefile.am -gio-docs-clean: clean - cd $(srcdir) && rm -rf xml html diff -urN a/docs/reference/glib/Makefile.am b/docs/reference/glib/Makefile.am ---- a/docs/reference/glib/Makefile.am 2013-06-10 00:03:17.000000000 +0200 +--- a/docs/reference/glib/Makefile.am 2013-08-08 12:00:40.000000000 +0200 +++ b/docs/reference/glib/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -@@ -1,128 +0,0 @@ +@@ -1,127 +0,0 @@ -## Process this file with automake to produce Makefile.in --include $(top_srcdir)/Makefile.decl - -AUTOMAKE_OPTIONS = 1.6 - @@ -1019,11 +1017,10 @@ diff -urN a/docs/reference/glib/Makefile.am b/docs/reference/glib/Makefile.am -glib-docs-clean: clean - cd $(srcdir) && rm -rf xml html diff -urN a/docs/reference/gobject/Makefile.am b/docs/reference/gobject/Makefile.am ---- a/docs/reference/gobject/Makefile.am 2013-06-10 00:03:17.000000000 +0200 +--- a/docs/reference/gobject/Makefile.am 2013-08-08 12:00:40.000000000 +0200 +++ b/docs/reference/gobject/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -@@ -1,104 +0,0 @@ +@@ -1,103 +0,0 @@ -## Process this file with automake to produce Makefile.in --include $(top_srcdir)/Makefile.decl - -AUTOMAKE_OPTIONS = 1.6 - @@ -1127,31 +1124,43 @@ diff -urN a/docs/reference/gobject/Makefile.am b/docs/reference/gobject/Makefile -gobject-docs-clean: clean - cd $(srcdir) && rm -rf xml html diff -urN a/docs/reference/Makefile.am b/docs/reference/Makefile.am ---- a/docs/reference/Makefile.am 2013-06-10 00:03:17.000000000 +0200 +--- a/docs/reference/Makefile.am 2013-08-08 12:00:40.000000000 +0200 +++ b/docs/reference/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -@@ -1,3 +0,0 @@ --include $(top_srcdir)/Makefile.decl -- +@@ -1 +0,0 @@ -SUBDIRS = glib gobject gio +diff -urN a/gio/tests/gdbus-object-manager-example/Makefile.am b/gio/tests/gdbus-object-manager-example/Makefile.am +--- a/gio/tests/gdbus-object-manager-example/Makefile.am 2013-08-08 12:00:40.000000000 +0200 ++++ b/gio/tests/gdbus-object-manager-example/Makefile.am 2013-11-09 06:20:32.858634115 +0100 +@@ -25,12 +25,6 @@ + + test_ltlibraries = libgdbus-example-objectmanager.la + +-if ENABLE_GTK_DOC +-# The docs pull these in, so we need them even if not doing 'make check' +-BUILT_SOURCES += $(GDBUS_GENERATED) +-noinst_LTLIBRARIES += libgdbus-example-objectmanager.la +-endif +- + nodist_libgdbus_example_objectmanager_la_SOURCES = \ + gdbus-example-objectmanager-generated.h \ + gdbus-example-objectmanager-generated.c diff -urN a/Makefile.am b/Makefile.am ---- a/Makefile.am 2013-06-10 00:03:17.000000000 +0200 -+++ b/Makefile.am 2013-06-29 05:50:18.224749533 +0200 +--- a/Makefile.am 2013-09-17 20:47:14.000000000 +0200 ++++ b/Makefile.am 2013-11-09 06:16:23.310628423 +0100 @@ -6,7 +6,7 @@ ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS} --SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs -+SUBDIRS = . m4macros glib gmodule gthread gobject gio po +-SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests ++SUBDIRS = . m4macros glib gmodule gthread gobject gio po tests DIST_SUBDIRS = $(SUBDIRS) build - if BUILD_MODULAR_TESTS - SUBDIRS += tests -@@ -71,8 +71,7 @@ - README \ - INSTALL \ - ChangeLog \ -- config.h.win32 \ -- gtk-doc.make -+ config.h.win32 - - CONFIGURE_DEPENDENCIES = acglib.m4 + + bin_SCRIPTS = glib-gettextize +@@ -61,7 +61,6 @@ + gio-unix-2.0.pc.in \ + gio-windows-2.0.pc.in \ + check-abis.sh \ +- gtk-doc.make \ + $(NULL) + diff --git a/src/glib.mk b/src/glib.mk index 900a9d1..0b42ef7 100644 --- a/src/glib.mk +++ b/src/glib.mk @@ -3,8 +3,8 @@ PKG := glib $(PKG)_IGNORE := -$(PKG)_VERSION := 2.36.3 -$(PKG)_CHECKSUM := aafba69934b9ba77cc8cb0e5d8105aa1d8463eba +$(PKG)_VERSION := 2.38.2 +$(PKG)_CHECKSUM := 685c5a4215b776b83dd5330ab9084c5dcb0a51b8 $(PKG)_SUBDIR := glib-$($(PKG)_VERSION) $(PKG)_FILE := glib-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/glib/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/glibmm.mk b/src/glibmm.mk index 53b8eb6..a20a1f2 100644 --- a/src/glibmm.mk +++ b/src/glibmm.mk @@ -3,8 +3,8 @@ PKG := glibmm $(PKG)_IGNORE := -$(PKG)_VERSION := 2.36.2 -$(PKG)_CHECKSUM := 399b6acd3756879fa61b185ab50abecf9652d15f +$(PKG)_VERSION := 2.38.1 +$(PKG)_CHECKSUM := d543b32b32514bfbcad9242e1636af9a53283e3a $(PKG)_SUBDIR := glibmm-$($(PKG)_VERSION) $(PKG)_FILE := glibmm-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/glibmm/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) @@ -3,8 +3,8 @@ PKG := gmp $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.2 -$(PKG)_CHECKSUM := 2cb498322b9be4713829d94dee944259c017d615 +$(PKG)_VERSION := 5.1.3 +$(PKG)_CHECKSUM := b35928e2927b272711fdfbf71b7cfd5f86a6b165 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := ftp://ftp.gmplib.org/pub/$(PKG)-$($(PKG)_VERSION)/$($(PKG)_FILE) @@ -29,4 +29,13 @@ define $(PKG)_BUILD --without-readline $(MAKE) -C '$(1)' -j '$(JOBS)' $(MAKE) -C '$(1)' -j 1 install + + # build runtime tests to verify toolchain components + -$(MAKE) -C '$(1)' -j '$(JOBS)' check -k + rm -rf '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests' + cp -R '$(1)/tests' '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests' + (printf 'date /t > all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n'; \ + printf 'time /t >> all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n'; \ + printf 'for /R %%%%f in (*.exe) do %%%%f || echo %%%%f fail >> all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n';) \ + > '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests/all-tests-$(PKG)-$($(PKG)_VERSION).bat' endef diff --git a/src/gnutls-1-fixes.patch b/src/gnutls-1-fixes.patch index b4c8e7b..54bdd70 100644 --- a/src/gnutls-1-fixes.patch +++ b/src/gnutls-1-fixes.patch @@ -1,23 +1,23 @@ This file is part of MXE. See index.html for further information. -From 331c9b1a946f83deae950e0722b37688600e8073 Mon Sep 17 00:00:00 2001 +From 05cd16c35674665009d16f2469b9124c16638237 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Tue, 3 Apr 2012 13:58:42 +0200 -Subject: [PATCH 1/5] Revert "make dist will also make lzip compressed tarball" +Subject: [PATCH 1/4] Revert "make dist will also make lzip compressed tarball" This reverts commit 97ac1bc58274f651338444693bd75441ba12f46f. diff --git a/configure.ac b/configure.ac -index 064905e..d727500 100644 +index 6459403..f8dd727 100644 --- a/configure.ac +++ b/configure.ac @@ -26,7 +26,7 @@ AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_HOST --AM_INIT_AUTOMAKE([1.11.3 no-dist-gzip dist-xz dist-lzip -Wall -Wno-override]) -+AM_INIT_AUTOMAKE([1.11.3 no-dist-gzip dist-xz -Wall -Wno-override]) +-AM_INIT_AUTOMAKE([1.12.2 no-dist-gzip dist-xz dist-lzip -Wall -Wno-override]) ++AM_INIT_AUTOMAKE([1.12.2 no-dist-gzip dist-xz -Wall -Wno-override]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AC_CONFIG_HEADERS([config.h]) @@ -25,21 +25,21 @@ index 064905e..d727500 100644 1.8.1.4 -From 41e7bdf61b95973ebf021184ea3952d1a9349d4c Mon Sep 17 00:00:00 2001 +From 6d7644c82de49b38afda2a171d1195861ebd9db0 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Wed, 6 Jun 2012 09:57:24 +0200 -Subject: [PATCH 2/5] AM_PROG_AR for automake 1.12 compatibility +Subject: [PATCH 2/4] AM_PROG_AR for automake 1.12 compatibility Taken from http://lists.gnu.org/archive/html/automake/2012-05/msg00014.html diff --git a/configure.ac b/configure.ac -index d727500..0f4cd70 100644 +index f8dd727..2c05458 100644 --- a/configure.ac +++ b/configure.ac @@ -40,6 +40,7 @@ gl_EARLY AM_PROG_AS - dnl AM_PROG_AR + AM_PROG_AR AC_PROG_CXX +m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) @@ -49,43 +49,43 @@ index d727500..0f4cd70 100644 1.8.1.4 -From 42dd30f85578ddf957b1bfd2b0cf0752dd4ca8e7 Mon Sep 17 00:00:00 2001 +From 7afa4d386bb2076890113a5d4e665c39583ff025 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Mon, 4 Feb 2013 16:11:12 +0100 -Subject: [PATCH 3/5] add missing private lib to pc file +Subject: [PATCH 3/4] add missing private lib to pc file diff --git a/lib/gnutls.pc.in b/lib/gnutls.pc.in -index 13f2d3b..926c30c 100644 +index a25fcdf..3860c68 100644 --- a/lib/gnutls.pc.in +++ b/lib/gnutls.pc.in @@ -19,6 +19,6 @@ Description: Transport Security Layer implementation for the GNU system URL: http://www.gnutls.org/ Version: @VERSION@ Libs: -L${libdir} -lgnutls --Libs.private: @LTLIBZ@ @LTLIBINTL@ @LIBSOCKET@ @LTLIBPTHREAD@ @LTLIBICONV@ @P11_KIT_LIBS@ @LIB_SELECT@ @TSS_LIBS@ -+Libs.private: @LTLIBZ@ @LTLIBINTL@ @LIBSOCKET@ @LTLIBPTHREAD@ @LTLIBICONV@ @P11_KIT_LIBS@ @LIB_SELECT@ @TSS_LIBS@ -lcrypt32 +-Libs.private: @LTLIBZ@ @LTLIBINTL@ @LIBSOCKET@ @LTLIBPTHREAD@ @LTLIBICONV@ @P11_KIT_LIBS@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ ++Libs.private: @LTLIBZ@ @LTLIBINTL@ @LIBSOCKET@ @LTLIBPTHREAD@ @LTLIBICONV@ @P11_KIT_LIBS@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ -lcrypt32 @GNUTLS_REQUIRES_PRIVATE@ Cflags: -I${includedir} -- 1.8.1.4 -From 7acc157b266701671f5a047e227ea4f91290d698 Mon Sep 17 00:00:00 2001 +From 903e858e59718f03fd3b3bef00fab897b0313007 Mon Sep 17 00:00:00 2001 From: Tony Theodore <tonyt@logyst.com> Date: Wed, 6 Feb 2013 08:43:43 +0100 -Subject: [PATCH 4/5] relax automake version check +Subject: [PATCH 4/4] relax automake version check diff --git a/configure.ac b/configure.ac -index 0f4cd70..a8c7a7c 100644 +index 2c05458..dd45228 100644 --- a/configure.ac +++ b/configure.ac @@ -26,7 +26,7 @@ AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_HOST --AM_INIT_AUTOMAKE([1.11.3 no-dist-gzip dist-xz -Wall -Wno-override]) +-AM_INIT_AUTOMAKE([1.12.2 no-dist-gzip dist-xz -Wall -Wno-override]) +AM_INIT_AUTOMAKE([1.11.1 no-dist-gzip dist-xz -Wall -Wno-override]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AC_CONFIG_HEADERS([config.h]) @@ -93,29 +93,3 @@ index 0f4cd70..a8c7a7c 100644 -- 1.8.1.4 - -From 06f1cb7ad830199bcab7da030827dba09fce9325 Mon Sep 17 00:00:00 2001 -From: Mark Brand <mabrand@mabrand.nl> -Date: Sat, 1 Jun 2013 18:06:37 +0200 -Subject: [PATCH 5/5] mingw compatibility fix - -Follow-up to f1cd31cfb0d80d8681d107591c87725445768529 -taken from https://gitorious.org/gnutls/gnutls/merge_requests/3 - -diff --git a/src/cli.c b/src/cli.c -index a7da6a4..3ff7417 100644 ---- a/src/cli.c -+++ b/src/cli.c -@@ -853,7 +853,9 @@ main (int argc, char **argv) - int user_term = 0, retval = 0; - socket_st hd; - ssize_t bytes; -+#ifndef _WIN32 - struct sigaction new_action, old_action; -+#endif - - set_program_name (argv[0]); - cmd_parser (argc, argv); --- -1.8.1.4 - diff --git a/src/gnutls.mk b/src/gnutls.mk index bc2bc2b..910341e 100644 --- a/src/gnutls.mk +++ b/src/gnutls.mk @@ -2,8 +2,8 @@ # See index.html for further information. PKG := gnutls -$(PKG)_VERSION := 3.2.1 -$(PKG)_CHECKSUM := 477118eaffb8f16bd7fd511069c2c5d618f6e400 +$(PKG)_VERSION := 3.2.6 +$(PKG)_CHECKSUM := eb5a404d297e8ee2f344bcd9cdeea86fe8977287 $(PKG)_SUBDIR := gnutls-$($(PKG)_VERSION) $(PKG)_FILE := gnutls-$($(PKG)_VERSION).tar.xz $(PKG)_URL := ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2//$($(PKG)_FILE) diff --git a/src/graphicsmagick.mk b/src/graphicsmagick.mk index 25a18c0..ade8e7d 100644 --- a/src/graphicsmagick.mk +++ b/src/graphicsmagick.mk @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 085c23666adcf88585119cb6aea7efe5c58481d4 $(PKG)_SUBDIR := GraphicsMagick-$($(PKG)_VERSION) $(PKG)_FILE := GraphicsMagick-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc pthreads libtool zlib bzip2 jpeg jasper lcms1 libpng tiff freetype libxml2 +$(PKG)_DEPS := gcc pthreads libltdl zlib bzip2 jpeg jasper lcms libpng tiff freetype libxml2 define $(PKG)_UPDATE $(WGET) -q -O- 'http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/' | \ @@ -35,7 +35,7 @@ define $(PKG)_BUILD --without-jbig \ --with-jpeg \ --with-jp2 \ - --with-lcms \ + --with-lcms2 \ --with-png \ --with-tiff \ --without-trio \ @@ -52,5 +52,5 @@ define $(PKG)_BUILD '$(TARGET)-g++' \ -W -Wall -Werror -pedantic -std=gnu++0x \ '$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-graphicsmagick.exe' \ - `'$(TARGET)-pkg-config' GraphicsMagick++ --cflags --libs` + `'$(TARGET)-pkg-config' GraphicsMagick++ --cflags --libs` -llzma endef @@ -3,8 +3,8 @@ PKG := gsl $(PKG)_IGNORE := -$(PKG)_VERSION := 1.15 -$(PKG)_CHECKSUM := d914f84b39a5274b0a589d9b83a66f44cd17ca8e +$(PKG)_VERSION := 1.16 +$(PKG)_CHECKSUM := 210af9366485f149140973700d90dc93a4b6213e $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://ftp.gnu.org/gnu/$(PKG)/$($(PKG)_FILE) diff --git a/src/gsoap-1-fixes.patch b/src/gsoap-1-fixes.patch index 9493608..cfd2ce0 100644 --- a/src/gsoap-1-fixes.patch +++ b/src/gsoap-1-fixes.patch @@ -22,7 +22,7 @@ index c4598a4..c7a46d2 100755 WSDL2H_EXTRA_LIBS="-lssl -lcrypto -lws2_32 -lkernel32 -luser32 -lgdi32 -lm" ;; *-*-freebsd*) platform=FREEBSD ;; -@@ -7340,7 +7340,7 @@ echo $ECHO_N "checking for enable gnutls in library... $ECHO_C" >&6; } +@@ -7560,7 +7560,7 @@ echo $ECHO_N "checking for enable gnutls in library... $ECHO_C" >&6; } { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } WSDL2H_EXTRA_FLAGS="-DWITH_GNUTLS -DWITH_GZIP" diff --git a/src/gsoap.mk b/src/gsoap.mk index c771eeb..9882e0a 100644 --- a/src/gsoap.mk +++ b/src/gsoap.mk @@ -3,8 +3,8 @@ PKG := gsoap $(PKG)_IGNORE := -$(PKG)_VERSION := 2.8.15 -$(PKG)_CHECKSUM := 3238ea70fcd3356bd2e7cd3d1e2ef91c1040b81a +$(PKG)_VERSION := 2.8.16 +$(PKG)_CHECKSUM := 8024f03dedef361a5271a7c0b26f961fd278703c $(PKG)_SUBDIR := gsoap-$(call SHORT_PKG_VERSION,$(PKG)) $(PKG)_FILE := gsoap_$($(PKG)_VERSION).zip $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/gsoap2/gSOAP/$($(PKG)_FILE) diff --git a/src/gst-plugins-base.mk b/src/gst-plugins-base.mk index 94e202e..16f0d8f 100644 --- a/src/gst-plugins-base.mk +++ b/src/gst-plugins-base.mk @@ -3,8 +3,8 @@ PKG := gst-plugins-base $(PKG)_IGNORE := -$(PKG)_VERSION := 1.1.1 -$(PKG)_CHECKSUM := 373a3af5ff301da8f8b9b3cebd3f588250affcb0 +$(PKG)_VERSION := 1.2.1 +$(PKG)_CHECKSUM := 77638d4007de0c2057ce502327e7ccac031e2e34 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://gstreamer.freedesktop.org/src/$(PKG)/$($(PKG)_FILE) diff --git a/src/gst-plugins-good.mk b/src/gst-plugins-good.mk index 7843091..df43590 100644 --- a/src/gst-plugins-good.mk +++ b/src/gst-plugins-good.mk @@ -3,8 +3,8 @@ PKG := gst-plugins-good $(PKG)_IGNORE := -$(PKG)_VERSION := 1.1.1 -$(PKG)_CHECKSUM := ff1c47cecde5b6fccbe5d9fe49dd3994d2c7c63f +$(PKG)_VERSION := 1.2.1 +$(PKG)_CHECKSUM := 62aebcaf4084b2cb2dd1306c45c943a04ed45833 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://gstreamer.freedesktop.org/src/$(PKG)/$($(PKG)_FILE) diff --git a/src/gstreamer-1-fixes.patch b/src/gstreamer-1-fixes.patch new file mode 100644 index 0000000..873dd2b --- /dev/null +++ b/src/gstreamer-1-fixes.patch @@ -0,0 +1,27 @@ +This file is part of MXE. +See index.html for further information. + +Contains ad hoc patches for cross building. + +From 3c2f96d5bbadcff5724523612e5cf0e2d6a9ac51 Mon Sep 17 00:00:00 2001 +From: MXE +Date: Tue, 12 Nov 2013 02:49:49 +1100 +Subject: [PATCH] remove _chsize redefinition + + +diff --git a/plugins/elements/gstfilesink.c b/plugins/elements/gstfilesink.c +index 470ad5e..eb8dbe8 100644 +--- a/plugins/elements/gstfilesink.c ++++ b/plugins/elements/gstfilesink.c +@@ -56,8 +56,6 @@ + #define lseek _lseeki64 + #undef off_t + #define off_t guint64 +-#undef ftruncate +-#define ftruncate _chsize + #ifdef _MSC_VER /* Check if we are using MSVC, fileno is deprecated in favour */ + #define fileno _fileno /* of _fileno */ + #endif +-- +1.8.4 + diff --git a/src/gstreamer.mk b/src/gstreamer.mk index 45a9c10..2bc934c 100644 --- a/src/gstreamer.mk +++ b/src/gstreamer.mk @@ -3,8 +3,8 @@ PKG := gstreamer $(PKG)_IGNORE := -$(PKG)_VERSION := 1.1.1 -$(PKG)_CHECKSUM := 56f6a760f4c9e0ccf9e67a602a53df8ca1bb4252 +$(PKG)_VERSION := 1.2.1 +$(PKG)_CHECKSUM := c61b54da3eefddbc4cb8d773488dc6661607e578 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://gstreamer.freedesktop.org/src/$(PKG)/$($(PKG)_FILE) diff --git a/src/gtk2-1-fixes.patch b/src/gtk2-1-fixes.patch index 45778b9..2eb0c06 100644 --- a/src/gtk2-1-fixes.patch +++ b/src/gtk2-1-fixes.patch @@ -6,7 +6,7 @@ Contains ad hoc patches for cross building. From 374c56944944128d57b33b3b5c1be978a02d3dbb Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:43:43 +0200 -Subject: [PATCH 01/11] s,DllMain,static _disabled_DllMain, +Subject: [PATCH 01/10] s,DllMain,static _disabled_DllMain, diff --git a/gdk/win32/gdkmain-win32.c b/gdk/win32/gdkmain-win32.c @@ -42,7 +42,7 @@ index 56c92db..655f575 100644 From 8e08b42e368166814289abf32958c979d8d480c6 Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:46:20 +0200 -Subject: [PATCH 02/11] s,__declspec(dllimport),, +Subject: [PATCH 02/10] s,__declspec(dllimport),, diff --git a/gdk/gdktypes.h b/gdk/gdktypes.h @@ -104,7 +104,7 @@ index c624aea..b792ea5 100644 From 59408e4752be8277c26f9ae458a086874844ab2b Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 15:03:28 +0200 -Subject: [PATCH 03/11] s,__declspec(dllexport),, +Subject: [PATCH 03/10] s,__declspec(dllexport),, diff --git a/gdk/gdktypes.h b/gdk/gdktypes.h @@ -166,7 +166,7 @@ index b792ea5..f382a64 100644 From 15527e24127117bbaf24dec513daa6fb67a00a8c Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:17:22 +0200 -Subject: [PATCH 04/11] fix gtk+-2.0.pc.in +Subject: [PATCH 04/10] fix gtk+-2.0.pc.in diff --git a/gtk+-2.0.pc.in b/gtk+-2.0.pc.in @@ -187,7 +187,7 @@ index 46853e1..7f3eb22 100644 From 165597a3bbe73e830d79dbd2d109e3b075ea2985 Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:48:31 +0200 -Subject: [PATCH 05/11] disable gtkbuiltincache +Subject: [PATCH 05/10] disable gtkbuiltincache diff --git a/gtk/Makefile.in b/gtk/Makefile.in @@ -210,7 +210,7 @@ index 54200e7..e984933 100644 From 465171f3b0ebba7760719c0ee86a0d0f216fe51e Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:49:50 +0200 -Subject: [PATCH 06/11] disable test-inline-pixbufs.h +Subject: [PATCH 06/10] disable test-inline-pixbufs.h diff --git a/demos/Makefile.in b/demos/Makefile.in @@ -233,7 +233,7 @@ index 97e9536..abf0f14 100644 From 417065a8b000250f6553c2801a26eae4491041dd Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:51:04 +0200 -Subject: [PATCH 07/11] permit static building +Subject: [PATCH 07/10] permit static building diff --git a/configure b/configure @@ -334,7 +334,7 @@ index c61e096..34a116d 100755 From 907f9831f56004a322d785f34417e99735de3109 Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:53:18 +0200 -Subject: [PATCH 08/11] no -Wl +Subject: [PATCH 08/10] no -Wl diff --git a/configure b/configure @@ -357,7 +357,7 @@ index 34a116d..3c12234 100755 From 1e02f2e984433a899bc642af5622bea971a06a3a Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 14:54:15 +0200 -Subject: [PATCH 09/11] gio not gio-unix +Subject: [PATCH 09/10] gio not gio-unix diff --git a/configure b/configure @@ -383,7 +383,7 @@ index 3c12234..ce40ad1 100755 From b9bd33ba09c0297b874b7e6955864e6a76b83364 Mon Sep 17 00:00:00 2001 From: MXE Date: Fri, 24 Sep 2010 15:30:49 +0200 -Subject: [PATCH 10/11] removed duplicate _gtk_marshal_OBJECT__VOID() +Subject: [PATCH 10/10] removed duplicate _gtk_marshal_OBJECT__VOID() diff --git a/perf/marshalers.c b/perf/marshalers.c @@ -437,29 +437,3 @@ index 9a8c715..14f5ab1 100644 -- 1.8.2.2 - -From e232e6602e7476fbc72521892a69c636b63a6f14 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Thu, 23 May 2013 20:53:44 +1000 -Subject: [PATCH 11/11] fix for mingw-w64 uuid - - -diff --git a/gdk/win32/gdkdnd-win32.c b/gdk/win32/gdkdnd-win32.c -index a41a0e7..05c60b8 100644 ---- a/gdk/win32/gdkdnd-win32.c -+++ b/gdk/win32/gdkdnd-win32.c -@@ -69,8 +69,10 @@ - * the current Windows code page. See gdkim-win32.c for more info on that. - * - */ -- -+ -+#ifndef __MINGW64_VERSION_MAJOR - #define INITGUID -+#endif - - #include "gdkdnd.h" - #include "gdkproperty.h" --- -1.8.2.2 - diff --git a/src/gtk2.mk b/src/gtk2.mk index 50af05b..05f1822 100644 --- a/src/gtk2.mk +++ b/src/gtk2.mk @@ -3,8 +3,8 @@ PKG := gtk2 $(PKG)_IGNORE := -$(PKG)_VERSION := 2.24.20 -$(PKG)_CHECKSUM := 89315bf05dd3d626a50bae5417942ee4428012c9 +$(PKG)_VERSION := 2.24.22 +$(PKG)_CHECKSUM := 2175e25041244dc321e35dbdcf9cb5c371b455da $(PKG)_SUBDIR := gtk+-$($(PKG)_VERSION) $(PKG)_FILE := gtk+-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/gtk+/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/guile.mk b/src/guile.mk index 1788b9a..9c28996 100644 --- a/src/guile.mk +++ b/src/guile.mk @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 24cd2f06439c76d41d982a7384fe8a0fe5313b54 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://ftp.gnu.org/gnu/$(PKG)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc libtool gmp libiconv gettext libunistring gc libffi readline libgnurx +$(PKG)_DEPS := gcc libltdl gmp libiconv gettext libunistring gc libffi readline libgnurx define $(PKG)_UPDATE $(WGET) -q -O- 'http://git.savannah.gnu.org/gitweb/?p=$(PKG).git;a=tags' | \ diff --git a/src/harfbuzz.mk b/src/harfbuzz.mk index a2e1823..5d8bccf 100644 --- a/src/harfbuzz.mk +++ b/src/harfbuzz.mk @@ -3,8 +3,8 @@ PKG := harfbuzz $(PKG)_IGNORE := -$(PKG)_VERSION := 0.9.18 -$(PKG)_CHECKSUM := 621943fa0cadbc5514d8c8cdf985b7158baebc2d +$(PKG)_VERSION := 0.9.24 +$(PKG)_CHECKSUM := 30220790afd989c678e6a6cc31fc73ef33650e3b $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://www.freedesktop.org/software/$(PKG)/release/$($(PKG)_FILE) diff --git a/src/hdf5-3-fix-autoconf-version.patch b/src/hdf5-3-fix-autoconf-version.patch index 9b062fd..2208f8e 100644 --- a/src/hdf5-3-fix-autoconf-version.patch +++ b/src/hdf5-3-fix-autoconf-version.patch @@ -1,12 +1,13 @@ This file is part of MXE. See index.html for further information. ---- a/configure.ac 2013-05-08 08:34:56.000000000 +0200 -+++ b/configure.ac 2013-05-23 17:00:12.917415891 +0200 +diff -ur a/configure.ac b/configure.ac +--- a/configure.ac 2013-11-04 23:52:05.000000000 +0100 ++++ b/configure.ac 2013-11-13 17:25:28.945801661 +0100 @@ -17,7 +17,7 @@ ## Initialize configure. ## - AC_REVISION($Id: configure.ac 23659 2013-04-30 21:50:05Z acheng $) + AC_REVISION($Id: configure.ac 24404 2013-11-04 22:57:14Z epourmal $) -AC_PREREQ([2.69]) +AC_PREREQ([2.67]) diff --git a/src/hdf5.mk b/src/hdf5.mk index 2b9a5fa..2d1199e 100644 --- a/src/hdf5.mk +++ b/src/hdf5.mk @@ -3,8 +3,8 @@ PKG := hdf5 $(PKG)_IGNORE := -$(PKG)_VERSION := 1.8.11 -$(PKG)_CHECKSUM := 87ded0894b104cf23a4b965f4ac0a567f8612e5e +$(PKG)_VERSION := 1.8.12 +$(PKG)_CHECKSUM := 8414ca0e6ff7d08e423955960d641ec5f309a55f $(PKG)_SUBDIR := hdf5-$($(PKG)_VERSION) $(PKG)_FILE := hdf5-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://www.hdfgroup.org/ftp/HDF5/current/src/$($(PKG)_FILE) diff --git a/src/icu4c-1-fixes.patch b/src/icu4c-1-fixes.patch index 7874fc1..282f10a 100644 --- a/src/icu4c-1-fixes.patch +++ b/src/icu4c-1-fixes.patch @@ -22,30 +22,4 @@ index 406b196..cc53055 100644 #datarootdir = @datarootdir@ #datadir = @datadir@ #sbindir = @sbindir@ -diff --git a/source/config/mh-mingw b/source/config/mh-mingw -index eb25c8a..11ea464 100644 ---- a/source/config/mh-mingw -+++ b/source/config/mh-mingw -@@ -72,7 +72,6 @@ A = a - ## An import library is needed for z/OS and MSVC - IMPORT_LIB_EXT = .lib - --LIBPREFIX= - - # Change the stubnames so that poorly working FAT disks and installation programs can work. - # This is also for backwards compatibility. -diff --git a/source/config/mh-mingw64 b/source/config/mh-mingw64 -index 1b37f29..3c7ae7f 100644 ---- a/source/config/mh-mingw64 -+++ b/source/config/mh-mingw64 -@@ -72,7 +72,6 @@ A = a - ## An import library is needed for z/OS and MSVC - IMPORT_LIB_EXT = .lib - --LIBPREFIX= - - # Change the stubnames so that poorly working FAT disks and installation programs can work. - # This is also for backwards compatibility. --- -1.8.2.2 diff --git a/src/icu4c.mk b/src/icu4c.mk index e577103..156bbfc 100644 --- a/src/icu4c.mk +++ b/src/icu4c.mk @@ -3,16 +3,19 @@ PKG := icu4c $(PKG)_IGNORE := -$(PKG)_VERSION := 51.1 -$(PKG)_CHECKSUM := 7905632335e3dcd6667224da0fa087b49f9095e9 +$(PKG)_VERSION := 52.1 +$(PKG)_CHECKSUM := 6de440b71668f1a65a9344cdaf7a437291416781 $(PKG)_SUBDIR := icu $(PKG)_FILE := $(PKG)-$(subst .,_,$($(PKG)_VERSION))-src.tgz $(PKG)_URL := http://download.icu-project.org/files/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_DEPS := gcc define $(PKG)_UPDATE - echo 'TODO: Updates for package icu4c need to be written.' >&2; - echo $(icu4c_VERSION) + $(WGET) -q -O- 'http://bugs.icu-project.org/trac/browser/icu/tags' | \ + $(SED) -n 's,.*release-\([0-9-]*\)<.*,\1,p' | \ + tr '-' '.' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD @@ -28,6 +31,7 @@ define $(PKG)_BUILD --disable-shared \ --with-cross-build='$(1).native' \ CFLAGS=-DU_USING_ICU_NAMESPACE=0 \ + CXXFLAGS='--std=gnu++0x' \ SHELL=bash $(MAKE) -C '$(1).cross' -j '$(JOBS)' install diff --git a/src/ilmbase.mk b/src/ilmbase.mk index d02dddb..b30f3d8 100644 --- a/src/ilmbase.mk +++ b/src/ilmbase.mk @@ -3,8 +3,8 @@ PKG := ilmbase $(PKG)_IGNORE := -$(PKG)_VERSION := 2.0.0 -$(PKG)_CHECKSUM := 0f047217d287627ddc37ed06d573a2099e67f447 +$(PKG)_VERSION := 2.0.1 +$(PKG)_CHECKSUM := bfa62519094413f686c6f08c5923b47a10eea180 $(PKG)_SUBDIR := ilmbase-$($(PKG)_VERSION) $(PKG)_FILE := ilmbase-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://download.savannah.nongnu.org/releases/openexr/$($(PKG)_FILE) diff --git a/src/imagemagick.mk b/src/imagemagick.mk index cc03b8e..6ac6a67 100644 --- a/src/imagemagick.mk +++ b/src/imagemagick.mk @@ -3,13 +3,13 @@ PKG := imagemagick $(PKG)_IGNORE := -$(PKG)_VERSION := 6.8.6-3 -$(PKG)_CHECKSUM := fff85a0b7fa1c8d6307908e4cc58d2576c79ff11 +$(PKG)_VERSION := 6.8.7-6 +$(PKG)_CHECKSUM := 0938d776b93d18d78a2a0f0109af013206912883 $(PKG)_SUBDIR := ImageMagick-$($(PKG)_VERSION) $(PKG)_FILE := ImageMagick-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://www.imagemagick.org/download/$($(PKG)_FILE) $(PKG)_URL_2 := http://ftp.nluug.nl/ImageMagick/$($(PKG)_FILE) -$(PKG)_DEPS := gcc bzip2 ffmpeg fftw freetype jasper jpeg lcms liblqr-1 libpng libtool openexr pthreads tiff +$(PKG)_DEPS := gcc bzip2 ffmpeg fftw freetype jasper jpeg lcms liblqr-1 libpng libltdl openexr pthreads tiff define $(PKG)_UPDATE $(WGET) -q -O- 'http://www.imagemagick.org/' | \ diff --git a/src/isl.mk b/src/isl.mk new file mode 100644 index 0000000..0d3a47f --- /dev/null +++ b/src/isl.mk @@ -0,0 +1,30 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := isl +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.11.1 +$(PKG)_CHECKSUM := d7936929c3937e03f09b64c3c54e49422fa8ddb3 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := ftp://gcc.gnu.org/pub/gcc/infrastructure/$($(PKG)_FILE) +$(PKG)_DEPS := gcc gmp + +# stick to tested versions from gcc +define $(PKG)_UPDATE + $(WGET) -q -O- 'ftp://gcc.gnu.org/pub/gcc/infrastructure/' | \ + $(SED) -n 's,.*isl-\([0-9][^>]*\)\.tar.*,\1,p' | \ + $(SORT) -V | + tail -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --enable-static \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-gmp-prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install +endef diff --git a/src/itk-1-hostcheck.patch b/src/itk-1-hostcheck.patch deleted file mode 100644 index df28c44..0000000 --- a/src/itk-1-hostcheck.patch +++ /dev/null @@ -1,14 +0,0 @@ -# This file is part of MXE. -# See index.html for further information. - ---- InsightToolkit-4.3.2/CMakeLists.txt 2013-04-23 13:35:23.000000000 +0200 -+++ InsightToolkit-4.3.2/CMakeLists.txt.new 2013-06-26 18:42:27.360004957 +0200 -@@ -12,7 +12,7 @@ - - project(ITK) - --if( WIN32 ) -+if( CMAKE_HOST_WIN32 ) - - string( LENGTH "${CMAKE_CURRENT_SOURCE_DIR}" n ) - if( n GREATER 50 ) diff --git a/src/itk-2-tryrun.patch b/src/itk-1-tryrun.patch index 0a19da4..0a19da4 100644 --- a/src/itk-2-tryrun.patch +++ b/src/itk-1-tryrun.patch @@ -3,8 +3,8 @@ PKG := itk $(PKG)_IGNORE := -$(PKG)_VERSION := 4.4.0 -$(PKG)_CHECKSUM := 859854cee741d97cbd3a44b1a46ff5f7a580ebca +$(PKG)_VERSION := 4.4.1 +$(PKG)_CHECKSUM := 9272a15323e9c1d44f598fca02d2bb0c16478bb5 $(PKG)_SUBDIR := InsightToolkit-$($(PKG)_VERSION) $(PKG)_FILE := $($(PKG)_SUBDIR).tar.xz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/jpeg-1-fixes.patch b/src/jpeg-1-fixes.patch new file mode 100644 index 0000000..93834e5 --- /dev/null +++ b/src/jpeg-1-fixes.patch @@ -0,0 +1,25 @@ +This file is part of MXE. +See index.html for further information. + +From e523bccfefbf105ebe00d986bb1f057dfc304247 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Sat, 17 Aug 2013 20:16:41 +0200 +Subject: [PATCH] include stdio.h for FILE + + +diff --git a/jpeglib.h b/jpeglib.h +index 0a6dac4..2028d4e 100644 +--- a/jpeglib.h ++++ b/jpeglib.h +@@ -33,6 +33,8 @@ extern "C" { + #endif + #endif + ++#include <stdio.h> ++ + /* Version IDs for the JPEG library. + * Might be useful for tests like "#if JPEG_LIB_VERSION >= 90". + */ +-- +1.8.1.4 + diff --git a/src/lame.mk b/src/lame.mk index e130606..959e1b8 100644 --- a/src/lame.mk +++ b/src/lame.mk @@ -3,17 +3,20 @@ PKG := lame $(PKG)_IGNORE := -$(PKG)_VERSION := 3.99 -$(PKG)_CHECKSUM := 91dfd25bedc02759051a6b3af05e61337a575028 +$(PKG)_VERSION := 3.99.5 +$(PKG)_CHECKSUM := 03a0bfa85713adcc6b3383c12e2cc68a9cfbf4c4 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz -$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) $(PKG)_DEPS := gcc define $(PKG)_UPDATE - $(WGET) -q -O- 'http://sourceforge.net/projects/lame/files/lame/' | \ - $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \ - head -1 + $(WGET) -q -O- 'http://lame.cvs.sourceforge.net/viewvc/lame/lame/' | \ + grep RELEASE_ | \ + $(SED) -n 's,.*RELEASE__\([0-9_][^<]*\)<.*,\1,p' | \ + tr '_' '.' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD @@ -25,6 +28,3 @@ define $(PKG)_BUILD $(MAKE) -C '$(1)' -j '$(JOBS)' MXE_CFLAGS= $(MAKE) -C '$(1)' -j 1 install endef - -$(PKG)_BUILD_x86_64-w64-mingw32 = $(subst MXE_CFLAGS=,CFLAGS="-DFORCEINLINE=inline",$($(PKG)_BUILD)) -$(PKG)_BUILD_i686-w64-mingw32 = $(subst MXE_CFLAGS=,CFLAGS="-DFORCEINLINE=inline",$($(PKG)_BUILD)) diff --git a/src/lapack-test.c b/src/lapack-test.c new file mode 100644 index 0000000..00bf092 --- /dev/null +++ b/src/lapack-test.c @@ -0,0 +1,55 @@ +/* + * This file is part of MXE. + * See index.html for further information. + */ + +/* taken from http://www.netlib.org/lapack/lapacke.html */ + +/* Calling CGEQRF and CUNGQR to compute Q with workspace querying */ + +#include <stdio.h> +#include <stdlib.h> +#include <lapacke_utils.h> +#include <cblas.h> + +int main (int argc, const char * argv[]) +{ + (void)argc; + (void)argv; + + lapack_complex_float *a,*tau,*r,*work,one,zero,query; + lapack_int info,m,n,lda,lwork; + int i,j; + float err; + m = 10; n = 5; lda = m; + one = lapack_make_complex_float(1.0,0.0); + zero= lapack_make_complex_float(0.0,0.0); + a = calloc(m*n,sizeof(lapack_complex_float)); + r = calloc(n*n,sizeof(lapack_complex_float)); + tau = calloc(m,sizeof(lapack_complex_float)); + for(j=0;j<n;j++) + for(i=0;i<m;i++) + a[i+j*m] = lapack_make_complex_float(i+1,j+1); + info = LAPACKE_cgeqrf_work(LAPACK_COL_MAJOR,m,n,a,lda,tau,&query,-1); + lwork = (lapack_int)query; + info = LAPACKE_cungqr_work(LAPACK_COL_MAJOR,m,n,n,a,lda,tau,&query,-1); + lwork = MAX(lwork,(lapack_int)query); + work = calloc(lwork,sizeof(lapack_complex_float)); + info = LAPACKE_cgeqrf_work(LAPACK_COL_MAJOR,m,n,a,lda,tau,work,lwork); + info = LAPACKE_cungqr_work(LAPACK_COL_MAJOR,m,n,n,a,lda,tau,work,lwork); + for(j=0;j<n;j++) + for(i=0;i<n;i++) + r[i+j*n]=(i==j)?-one:zero; + cblas_cgemm(CblasColMajor,CblasConjTrans,CblasNoTrans, + n,n,m,&one,a,lda,a,lda,&one,r,n); + err=0.0; + for(i=0;i<n;i++) + for(j=0;j<n;j++) + err=MAX(err,cabs(r[i+j*n])); + printf("error=%e\n",err); + free(work); + free(tau); + free(r); + free(a); + return(info); +} diff --git a/src/lapack.mk b/src/lapack.mk index 53c6a98..a0fdfa3 100644 --- a/src/lapack.mk +++ b/src/lapack.mk @@ -2,13 +2,13 @@ # See index.html for further information. PKG := lapack -$(PKG)_VERSION := 3.4.2 -$(PKG)_CHECKSUM := 93a6e4e6639aaf00571d53a580ddc415416e868b +$(PKG)_VERSION := 3.5.0 +$(PKG)_CHECKSUM := 5870081889bf5d15fd977993daab29cf3c5ea970 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tgz $(PKG)_URL := http://www.netlib.org/$(PKG)/$($(PKG)_FILE) $(PKG)_URL_2 := ftp://ftp.eq.uc.pt/pub/software/math/netlib/$(PKG)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc +$(PKG)_DEPS := gcc cblas define $(PKG)_UPDATE $(WGET) -q -O- 'http://www.netlib.org/lapack/' | \ @@ -21,11 +21,19 @@ define $(PKG)_BUILD -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ -DCMAKE_AR='$(PREFIX)/bin/$(TARGET)-ar' \ -DCMAKE_RANLIB='$(PREFIX)/bin/$(TARGET)-ranlib' \ + -DLAPACKE=ON \ . - $(MAKE) -C '$(1)/SRC' -j '$(JOBS)' install + cp '$(1)/lapacke/include/lapacke_mangling_with_flags.h' '$(1)/lapacke/include/lapacke_mangling.h' + $(MAKE) -C '$(1)/SRC' -j '$(JOBS)' install + $(MAKE) -C '$(1)/lapacke' -j '$(JOBS)' install '$(TARGET)-gfortran' \ -W -Wall -Werror -pedantic \ '$(2).f' -o '$(PREFIX)/$(TARGET)/bin/test-lapack.exe' \ -llapack + + '$(TARGET)-gcc' \ + -W -Wall -Werror -pedantic \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-lapacke.exe' \ + -llapacke -llapack -lcblas -lblas -lgfortran endef diff --git a/src/lensfun-1-memset.patch b/src/lensfun-1-memset.patch deleted file mode 100644 index 7e91901..0000000 --- a/src/lensfun-1-memset.patch +++ /dev/null @@ -1,14 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -diff -ur lensfun-0.2.7.orig/libs/auxfun/image.cpp lensfun-0.2.7/libs/auxfun/image.cpp ---- lensfun-0.2.7.orig/libs/auxfun/image.cpp 2013-03-24 05:01:02.000000000 +1100 -+++ lensfun-0.2.7/libs/auxfun/image.cpp 2013-03-24 05:01:27.000000000 +1100 -@@ -7,6 +7,7 @@ - #include <zlib.h> - #include <png.h> - #include <stdlib.h> -+#include <string.h> - #ifdef _MSC_VER - #define _USE_MATH_DEFINES 1 - #include <math.h> diff --git a/src/lensfun.mk b/src/lensfun.mk index e39c978..d5220c7 100644 --- a/src/lensfun.mk +++ b/src/lensfun.mk @@ -3,11 +3,11 @@ PKG := lensfun $(PKG)_IGNORE := -$(PKG)_VERSION := 0.2.7 -$(PKG)_CHECKSUM := f26121093dfee85d6371c2c79dae22e6d1b8d0d6 +$(PKG)_VERSION := 0.2.8 +$(PKG)_CHECKSUM := 0e85eb7692620668d27e2303687492ad68c90eb4 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 -$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/lensfun.berlios/$($(PKG)_FILE) +$(PKG)_URL := http://download.berlios.de/lensfun/$($(PKG)_FILE) $(PKG)_DEPS := gcc libpng glib libgnurx define $(PKG)_UPDATE diff --git a/src/libass.mk b/src/libass.mk index 0ac84e4..e0833ba 100644 --- a/src/libass.mk +++ b/src/libass.mk @@ -3,8 +3,8 @@ PKG := libass $(PKG)_IGNORE := -$(PKG)_VERSION := 0.10.1 -$(PKG)_CHECKSUM := 6ebc6c4762c95c5abb96db33289b81780a4fbda6 +$(PKG)_VERSION := 0.10.2 +$(PKG)_CHECKSUM := 72a153364e838d3b561bae3653f1515169d479c4 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $($(PKG)_SUBDIR).tar.xz $(PKG)_URL := http://libass.googlecode.com/files/$($(PKG)_FILE) diff --git a/src/libbluray-1-fix-strncasecmp.patch b/src/libbluray-1-fix-strncasecmp.patch new file mode 100644 index 0000000..befe435 --- /dev/null +++ b/src/libbluray-1-fix-strncasecmp.patch @@ -0,0 +1,20 @@ +This file is part of MXE. +See index.html for further information. + +diff -Naur a/src/libbluray/bdnav/meta_parse.c b/src/libbluray/bdnav/meta_parse.c +--- a/src/libbluray/bdnav/meta_parse.c 2013-04-26 13:42:38.000000000 -0700 ++++ b/src/libbluray/bdnav/meta_parse.c 2013-11-09 15:41:29.000000000 -0800 +@@ -29,6 +29,13 @@ + #include "meta_parse.h" + #include "libbluray/register.h" + ++#if (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR)) ++#define strncasecmp _strnicmp ++#ifdef __STRICT_ANSI__ ++#undef __STRICT_ANSI__ ++#endif ++#endif ++ + #include <stdlib.h> + #include <string.h> + #include <errno.h> diff --git a/src/libbluray.mk b/src/libbluray.mk new file mode 100644 index 0000000..59cfb82 --- /dev/null +++ b/src/libbluray.mk @@ -0,0 +1,31 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libbluray +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.4.0 +$(PKG)_CHECKSUM := 39984aae77efde2e0917ed7e183ebf612813d7f3 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $($(PKG)_SUBDIR).tar.bz2 +$(PKG)_URL := ftp://ftp.videolan.org/pub/videolan/libbluray/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := freetype gcc libxml2 + +define $(PKG)_UPDATE + $(WGET) -q -O- 'ftp://ftp.videolan.org/pub/videolan/libbluray/last/' | \ + $(SED) -n 's,.*libbluray-\([0-9][^<]*\)\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --build="`config.guess`" \ + --prefix='$(PREFIX)/$(TARGET)' \ + --disable-shared \ + --disable-examples \ + --with-freetype \ + --with-libxml2 \ + --disable-bdjava + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/libdca-1-mark-tables-as-static-constants.patch b/src/libdca-1-mark-tables-as-static-constants.patch new file mode 100644 index 0000000..4e4414d --- /dev/null +++ b/src/libdca-1-mark-tables-as-static-constants.patch @@ -0,0 +1,719 @@ +This file is part of MXE. +See index.html for further information. + +Taken from libdca svn: svn://svn.videolan.org/libdca/trunk. + +r83 | gbazin | 2008-05-26 12:48:45 +0000 (Mon, 26 May 2008) | 1 line +Mark tables as static constants. Patch by Diego Flameeyes Petten?\195?\178 + +--- libdca.orig/libdca/tables_fir.h ++++ libdca/libdca/tables_fir.h +@@ -21,7 +21,7 @@ + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +-double fir_32bands_perfect[] = ++static const double fir_32bands_perfect[] = + { + +1.135985195E-010, + -6.022448247E-007, +@@ -537,7 +537,7 @@ + -1.135985195E-010 + }; + +-double fir_32bands_nonperfect[] = ++static const double fir_32bands_nonperfect[] = + { + -1.390191784E-007, + -1.693738625E-007, +@@ -1053,7 +1053,7 @@ + +1.390191784E-007 + }; + +-double lfe_fir_64[] = ++static const double lfe_fir_64[] = + { + 2.6584343868307770E-004, + 8.1793652498163280E-005, +@@ -1569,7 +1569,7 @@ + 2.6584343868307770E-004 + }; + +-double lfe_fir_128[] = ++static const double lfe_fir_128[] = + { + 0.00053168571, + 0.00016358691, +--- libdca.orig/libdca/tables_huffman.h ++++ libdca/libdca/tables_huffman.h +@@ -29,7 +29,7 @@ + + } huff_entry_t; + +-huff_entry_t bitalloc_a_12[] = ++static const huff_entry_t bitalloc_a_12[] = + { + { 1, 0, 1}, { 2, 2, 2}, { 3, 6, 3}, { 4, 14, 4}, + { 5, 30, 5}, { 6, 62, 6}, { 8, 255, 7}, { 8, 254, 8}, +@@ -37,7 +37,7 @@ + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_12[] = ++static const huff_entry_t bitalloc_b_12[] = + { + { 1, 1, 1}, { 2, 0, 2}, { 3, 2, 3}, { 5, 15, 4}, + { 5, 12, 5}, { 6, 29, 6}, { 7, 57, 7}, { 7, 56, 8}, +@@ -45,7 +45,7 @@ + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_12[] = ++static const huff_entry_t bitalloc_c_12[] = + { + { 2, 0, 1}, { 3, 7, 2}, { 3, 5, 3}, { 3, 4, 4}, + { 3, 2, 5}, { 4, 13, 6}, { 4, 12, 7}, { 4, 6, 8}, +@@ -53,7 +53,7 @@ + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_12[] = ++static const huff_entry_t bitalloc_d_12[] = + { + { 2, 3, 1}, { 2, 2, 2}, { 2, 0, 3}, { 3, 2, 4}, + { 4, 6, 5}, { 5, 14, 6}, { 6, 30, 7}, { 7, 62, 8}, +@@ -61,7 +61,7 @@ + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_e_12[] = ++static const huff_entry_t bitalloc_e_12[] = + { + { 1, 1, 1}, { 2, 0, 2}, { 3, 2, 3}, { 4, 6, 4}, + { 5, 14, 5}, { 7, 63, 6}, { 7, 61, 7}, { 8, 124, 8}, +@@ -69,7 +69,7 @@ + { 0, 0, 0} + }; + +-huff_entry_t *bitalloc_12[] = ++static const huff_entry_t *const bitalloc_12[] = + { + bitalloc_a_12, + bitalloc_b_12, +@@ -78,7 +78,7 @@ + bitalloc_e_12 + }; + +-huff_entry_t scales_a_129[] = ++static const huff_entry_t scales_a_129[] = + { + { 2, 1, 0}, { 3, 6, 1}, { 3, 5, -1}, { 3, 0, 2}, + { 4, 15, -2}, { 4, 8, 3}, { 4, 3, -3}, { 5, 28, 4}, +@@ -115,7 +115,7 @@ + {14, 15024,-64}, { 0, 0, 0} + }; + +-huff_entry_t scales_b_129[] = ++static const huff_entry_t scales_b_129[] = + { + { 3, 3, 0}, { 3, 2, 1}, { 3, 1, -1}, { 4, 15, 2}, + { 4, 14, -2}, { 4, 12, 3}, { 4, 11, -3}, { 4, 10, 4}, +@@ -152,7 +152,7 @@ + {15, 3936,-64}, { 0, 0, 0} + }; + +-huff_entry_t scales_c_129[] = ++static const huff_entry_t scales_c_129[] = + { + { 3, 4, 0}, { 3, 1, 1}, { 3, 0, -1}, { 4, 13, 2}, + { 4, 12, -2}, { 4, 7, 3}, { 4, 6, -3}, { 5, 31, 4}, +@@ -189,7 +189,7 @@ + {15, 20944,-64}, { 0, 0, 0} + }; + +-huff_entry_t scales_d_129[] = ++static const huff_entry_t scales_d_129[] = + { + { 2, 0, 0}, { 3, 5, 1}, { 3, 4, -1}, { 4, 15, 2}, + { 4, 14, -2}, { 4, 7, 3}, { 4, 6, -3}, { 5, 26, 4}, +@@ -226,7 +226,7 @@ + {15, 28516,-64}, { 0, 0, 0} + }; + +-huff_entry_t scales_e_129[] = ++static const huff_entry_t scales_e_129[] = + { + { 4, 14, 0}, { 4, 11, 1}, { 4, 10, -1}, { 4, 7, 2}, + { 4, 6, -2}, { 4, 3, 3}, { 4, 2, -3}, { 5, 31, 4}, +@@ -263,7 +263,7 @@ + {16, 57172,-64}, { 0, 0, 0} + }; + +-huff_entry_t *scales_129[] = ++static const huff_entry_t *const scales_129[] = + { + scales_a_129, + scales_b_129, +@@ -272,36 +272,36 @@ + scales_e_129 + }; + +-huff_entry_t bitalloc_a_3[] = ++static const huff_entry_t bitalloc_a_3[] = + { + { 1, 0, 0}, { 2, 2, 1}, { 2, 3, -1}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_4[] = ++static const huff_entry_t bitalloc_a_4[] = + { + { 1, 0, 0}, { 2, 2, 1}, { 3, 6, 2}, { 3, 7, 3}, + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_4[] = ++static const huff_entry_t bitalloc_b_4[] = + { + { 2, 2, 0}, { 3, 6, 1}, { 3, 7, 2}, { 1, 0, 3}, + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_4[] = ++static const huff_entry_t bitalloc_c_4[] = + { + { 3, 6, 0}, { 3, 7, 1}, { 1, 0, 2}, { 2, 2, 3}, + { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_4[] = ++static const huff_entry_t bitalloc_d_4[] = + { + { 2, 0, 0}, { 2, 1, 1}, { 2, 2, 2}, { 2, 3, 3}, + { 0, 0, 0} + }; + +-huff_entry_t *tmode[] = ++static const huff_entry_t *const tmode[] = + { + bitalloc_a_4, + bitalloc_b_4, +@@ -309,64 +309,64 @@ + bitalloc_d_4 + }; + +-huff_entry_t bitalloc_a_5[] = ++static const huff_entry_t bitalloc_a_5[] = + { + { 1, 0, 0}, { 2, 2, 1}, { 3, 6, -1}, { 4, 14, 2}, + { 4, 15, -2}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_5[] = ++static const huff_entry_t bitalloc_b_5[] = + { + { 2, 2, 0}, { 2, 0, 1}, { 2, 1, -1}, { 3, 6, 2}, + { 3, 7, -2}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_5[] = ++static const huff_entry_t bitalloc_c_5[] = + { + { 1, 0, 0}, { 3, 4, 1}, { 3, 5, -1}, { 3, 6, 2}, + { 3, 7, -2}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_7[] = ++static const huff_entry_t bitalloc_a_7[] = + { + { 1, 0, 0}, { 3, 6, 1}, { 3, 5, -1}, { 3, 4, 2}, + { 4, 14, -2}, { 5, 31, 3}, { 5, 30, -3}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_7[] = ++static const huff_entry_t bitalloc_b_7[] = + { + { 2, 3, 0}, { 2, 1, 1}, { 2, 0, -1}, { 3, 4, 2}, + { 4, 11, -2}, { 5, 21, 3}, { 5, 20, -3}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_7[] = ++static const huff_entry_t bitalloc_c_7[] = + { + { 2, 3, 0}, { 2, 2, 1}, { 2, 1, -1}, { 4, 3, 2}, + { 4, 2, -2}, { 4, 1, 3}, { 4, 0, -3}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_9[] = ++static const huff_entry_t bitalloc_a_9[] = + { + { 1, 0, 0}, { 3, 7, 1}, { 3, 5, -1}, { 4, 13, 2}, + { 4, 9, -2}, { 4, 8, 3}, { 5, 25, -3}, { 6, 49, 4}, + { 6, 48, -4}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_9[] = ++static const huff_entry_t bitalloc_b_9[] = + { + { 2, 2, 0}, { 2, 0, 1}, { 3, 7, -1}, { 3, 3, 2}, + { 3, 2, -2}, { 5, 27, 3}, { 5, 26, -3}, { 5, 25, 4}, + { 5, 24, -4}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_9[] = ++static const huff_entry_t bitalloc_c_9[] = + { + { 2, 2, 0}, { 2, 0, 1}, { 3, 7, -1}, { 3, 6, 2}, + { 3, 2, -2}, { 4, 6, 3}, { 5, 15, -3}, { 6, 29, 4}, + { 6, 28, -4}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_13[] = ++static const huff_entry_t bitalloc_a_13[] = + { + { 1, 0, 0}, { 3, 4, 1}, { 4, 15, -1}, { 4, 13, 2}, + { 4, 12, -2}, { 4, 10, 3}, { 5, 29, -3}, { 5, 22, 4}, +@@ -374,7 +374,7 @@ + { 7, 112, -6}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_13[] = ++static const huff_entry_t bitalloc_b_13[] = + { + { 2, 0, 0}, { 3, 6, 1}, { 3, 5, -1}, { 3, 2, 2}, + { 4, 15, -2}, { 4, 9, 3}, { 4, 7, -3}, { 4, 6, 4}, +@@ -382,7 +382,7 @@ + { 6, 56, -6}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_13[] = ++static const huff_entry_t bitalloc_c_13[] = + { + { 3, 5, 0}, { 3, 4, 1}, { 3, 3, -1}, { 3, 2, 2}, + { 3, 0, -2}, { 4, 15, 3}, { 4, 14, -3}, { 4, 12, 4}, +@@ -390,7 +390,7 @@ + { 5, 4, -6}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_17[] = ++static const huff_entry_t bitalloc_a_17[] = + { + { 2, 1, 0}, { 3, 7, 1}, { 3, 6, -1}, { 3, 4, 2}, + { 3, 1, -2}, { 4, 11, 3}, { 4, 10, -3}, { 4, 0, 4}, +@@ -399,7 +399,7 @@ + {12, 340, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_17[] = ++static const huff_entry_t bitalloc_b_17[] = + { + { 2, 0, 0}, { 3, 6, 1}, { 3, 5, -1}, { 3, 2, 2}, + { 4, 15, -2}, { 4, 9, 3}, { 4, 8, -3}, { 5, 29, 4}, +@@ -408,7 +408,7 @@ + { 8, 124, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_17[] = ++static const huff_entry_t bitalloc_c_17[] = + { + { 3, 6, 0}, { 3, 4, 1}, { 3, 3, -1}, { 3, 0, 2}, + { 4, 15, -2}, { 4, 11, 3}, { 4, 10, -3}, { 4, 4, 4}, +@@ -417,7 +417,7 @@ + { 7, 44, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_17[] = ++static const huff_entry_t bitalloc_d_17[] = + { + { 1, 0, 0}, { 3, 7, 1}, { 3, 6, -1}, { 4, 11, 2}, + { 4, 10, -2}, { 5, 19, 3}, { 5, 18, -3}, { 6, 35, 4}, +@@ -426,7 +426,7 @@ + { 9, 256, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_e_17[] = ++static const huff_entry_t bitalloc_e_17[] = + { + { 1, 0, 0}, { 3, 5, 1}, { 3, 4, -1}, { 4, 12, 2}, + { 5, 31, -2}, { 5, 28, 3}, { 5, 27, -3}, { 6, 60, 4}, +@@ -435,7 +435,7 @@ + { 8, 232, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_f_17[] = ++static const huff_entry_t bitalloc_f_17[] = + { + { 3, 6, 0}, { 3, 5, 1}, { 3, 4, -1}, { 3, 2, 2}, + { 3, 1, -2}, { 4, 15, 3}, { 4, 14, -3}, { 4, 6, 4}, +@@ -444,7 +444,7 @@ + { 8, 4, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_g_17[] = ++static const huff_entry_t bitalloc_g_17[] = + { + { 2, 2, 0}, { 3, 7, 1}, { 3, 6, -1}, { 3, 1, 2}, + { 3, 0, -2}, { 4, 5, 3}, { 4, 4, -3}, { 5, 14, 4}, +@@ -453,7 +453,7 @@ + { 8, 96, -8}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_25[] = ++static const huff_entry_t bitalloc_a_25[] = + { + { 3, 6, 0}, { 3, 4, 1}, { 3, 3, -1}, { 3, 1, 2}, + { 3, 0, -2}, { 4, 15, 3}, { 4, 14, -3}, { 4, 5, 4}, +@@ -464,7 +464,7 @@ + {14, 10324,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_25[] = ++static const huff_entry_t bitalloc_b_25[] = + { + { 3, 5, 0}, { 3, 2, 1}, { 3, 1, -1}, { 4, 15, 2}, + { 4, 14, -2}, { 4, 9, 3}, { 4, 8, -3}, { 4, 6, 4}, +@@ -475,7 +475,7 @@ + { 9, 28,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_25[] = ++static const huff_entry_t bitalloc_c_25[] = + { + { 3, 1, 0}, { 4, 15, 1}, { 4, 14, -1}, { 4, 12, 2}, + { 4, 11, -2}, { 4, 9, 3}, { 4, 8, -3}, { 4, 6, 4}, +@@ -486,7 +486,7 @@ + { 8, 76,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_25[] = ++static const huff_entry_t bitalloc_d_25[] = + { + { 2, 2, 0}, { 3, 7, 1}, { 3, 6, -1}, { 3, 1, 2}, + { 3, 0, -2}, { 4, 5, 3}, { 4, 4, -3}, { 5, 13, 4}, +@@ -497,7 +497,7 @@ + {12, 1920,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_e_25[] = ++static const huff_entry_t bitalloc_e_25[] = + { + { 2, 3, 0}, { 3, 3, 1}, { 3, 2, -1}, { 4, 11, 2}, + { 4, 10, -2}, { 4, 1, 3}, { 4, 0, -3}, { 5, 17, 4}, +@@ -508,7 +508,7 @@ + { 8, 60,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_f_25[] = ++static const huff_entry_t bitalloc_f_25[] = + { + { 3, 1, 0}, { 3, 0, 1}, { 4, 15, -1}, { 4, 14, 2}, + { 4, 13, -2}, { 4, 11, 3}, { 4, 10, -3}, { 4, 8, 4}, +@@ -519,7 +519,7 @@ + {10, 804,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_g_25[] = ++static const huff_entry_t bitalloc_g_25[] = + { + { 2, 1, 0}, { 3, 6, 1}, { 3, 5, -1}, { 3, 0, 2}, + { 4, 15, -2}, { 4, 8, 3}, { 4, 3, -3}, { 5, 28, 4}, +@@ -530,7 +530,7 @@ + {10, 936,-12}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_33[] = ++static const huff_entry_t bitalloc_a_33[] = + { + { 3, 2, 0}, { 3, 1, 1}, { 3, 0, -1}, { 4, 14, 2}, + { 4, 13, -2}, { 4, 12, 3}, { 4, 11, -3}, { 4, 9, 4}, +@@ -543,7 +543,7 @@ + {13, 5504,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_33[] = ++static const huff_entry_t bitalloc_b_33[] = + { + { 3, 1, 0}, { 4, 15, 1}, { 4, 14, -1}, { 4, 11, 2}, + { 4, 10, -2}, { 4, 8, 3}, { 4, 7, -3}, { 4, 4, 4}, +@@ -556,7 +556,7 @@ + {10, 780,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_33[] = ++static const huff_entry_t bitalloc_c_33[] = + { + { 4, 13, 0}, { 4, 11, 1}, { 4, 10, -1}, { 4, 8, 2}, + { 4, 7, -2}, { 4, 4, 3}, { 4, 3, -3}, { 4, 2, 4}, +@@ -569,7 +569,7 @@ + { 9, 204,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_33[] = ++static const huff_entry_t bitalloc_d_33[] = + { + { 2, 1, 0}, { 3, 6, 1}, { 3, 5, -1}, { 3, 0, 2}, + { 4, 15, -2}, { 4, 8, 3}, { 4, 3, -3}, { 5, 28, 4}, +@@ -582,7 +582,7 @@ + {14, 15096,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_e_33[] = ++static const huff_entry_t bitalloc_e_33[] = + { + { 2, 2, 0}, { 3, 2, 1}, { 3, 1, -1}, { 4, 12, 2}, + { 4, 7, -2}, { 4, 0, 3}, { 5, 31, -3}, { 5, 27, 4}, +@@ -595,7 +595,7 @@ + { 9, 456,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_f_33[] = ++static const huff_entry_t bitalloc_f_33[] = + { + { 4, 13, 0}, { 4, 12, 1}, { 4, 11, -1}, { 4, 9, 2}, + { 4, 8, -2}, { 4, 7, 3}, { 4, 6, -3}, { 4, 4, 4}, +@@ -608,7 +608,7 @@ + {11, 1828,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_g_33[] = ++static const huff_entry_t bitalloc_g_33[] = + { + { 3, 6, 0}, { 3, 3, 1}, { 3, 2, -1}, { 4, 15, 2}, + { 4, 14, -2}, { 4, 9, 3}, { 4, 8, -3}, { 4, 1, 4}, +@@ -621,7 +621,7 @@ + {10, 644,-16}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_65[] = ++static const huff_entry_t bitalloc_a_65[] = + { + { 4, 6, 0}, { 4, 5, 1}, { 4, 4, -1}, { 4, 2, 2}, + { 4, 1, -2}, { 4, 0, 3}, { 5, 31, -3}, { 5, 29, 4}, +@@ -642,7 +642,7 @@ + {16, 40540,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_65[] = ++static const huff_entry_t bitalloc_b_65[] = + { + { 4, 4, 0}, { 4, 2, 1}, { 4, 1, -1}, { 5, 30, 2}, + { 5, 29, -2}, { 5, 26, 3}, { 5, 25, -3}, { 5, 23, 4}, +@@ -663,7 +663,7 @@ + {12, 2700,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_65[] = ++static const huff_entry_t bitalloc_c_65[] = + { + { 5, 28, 0}, { 5, 25, 1}, { 5, 24, -1}, { 5, 23, 2}, + { 5, 22, -2}, { 5, 19, 3}, { 5, 18, -3}, { 5, 16, 4}, +@@ -684,7 +684,7 @@ + {11, 1116,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_65[] = ++static const huff_entry_t bitalloc_d_65[] = + { + { 3, 4, 0}, { 3, 1, 1}, { 3, 0, -1}, { 4, 13, 2}, + { 4, 12, -2}, { 4, 7, 3}, { 4, 6, -3}, { 5, 31, 4}, +@@ -705,7 +705,7 @@ + {15, 28848,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_e_65[] = ++static const huff_entry_t bitalloc_e_65[] = + { + { 3, 4, 0}, { 3, 0, 1}, { 4, 15, -1}, { 4, 7, 2}, + { 4, 6, -2}, { 5, 29, 3}, { 5, 28, -3}, { 5, 23, 4}, +@@ -726,7 +726,7 @@ + {10, 812,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_f_65[] = ++static const huff_entry_t bitalloc_f_65[] = + { + { 3, 6, 0}, { 3, 3, 1}, { 3, 2, -1}, { 4, 15, 2}, + { 4, 14, -2}, { 4, 9, 3}, { 4, 8, -3}, { 4, 1, 4}, +@@ -747,7 +747,7 @@ + {14, 4064,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_g_65[] = ++static const huff_entry_t bitalloc_g_65[] = + { + { 4, 14, 0}, { 4, 11, 1}, { 4, 10, -1}, { 4, 8, 2}, + { 4, 6, -2}, { 4, 4, 3}, { 4, 3, -3}, { 4, 0, 4}, +@@ -768,7 +768,7 @@ + {11, 268,-32}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_a_129[] = ++static const huff_entry_t bitalloc_a_129[] = + { + { 4, 8, 0}, { 4, 10, 1}, { 4, 9, -1}, { 4, 0, 2}, + { 5, 31, -2}, { 5, 24, 3}, { 5, 23, -3}, { 5, 12, 4}, +@@ -805,7 +805,7 @@ + {11, 1632,-64}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_b_129[] = ++static const huff_entry_t bitalloc_b_129[] = + { + { 5, 10, 0}, { 5, 7, 1}, { 5, 6, -1}, { 5, 4, 2}, + { 5, 3, -2}, { 5, 0, 3}, { 6, 63, -3}, { 6, 60, 4}, +@@ -842,7 +842,7 @@ + {14, 10716,-64}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_c_129[] = ++static const huff_entry_t bitalloc_c_129[] = + { + { 6, 58, 0}, { 6, 55, 1}, { 6, 54, -1}, { 6, 52, 2}, + { 6, 51, -2}, { 6, 49, 3}, { 6, 48, -3}, { 6, 46, 4}, +@@ -879,7 +879,7 @@ + {13, 3676,-64}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_d_129[] = ++static const huff_entry_t bitalloc_d_129[] = + { + { 4, 9, 0}, { 4, 6, 1}, { 4, 5, -1}, { 4, 2, 2}, + { 4, 1, -2}, { 5, 30, 3}, { 5, 29, -3}, { 5, 26, 4}, +@@ -916,7 +916,7 @@ + {16, 42392,-64}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_e_129[] = ++static const huff_entry_t bitalloc_e_129[] = + { + { 5, 12, 0}, { 5, 11, 1}, { 5, 10, -1}, { 5, 9, 2}, + { 5, 8, -2}, { 5, 7, 3}, { 5, 6, -3}, { 5, 4, 4}, +@@ -953,7 +953,7 @@ + {16, 41276,-64}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_f_129[] = ++static const huff_entry_t bitalloc_f_129[] = + { + { 6, 56, 0}, { 6, 55, 1}, { 6, 54, -1}, { 6, 52, 2}, + { 6, 51, -2}, { 6, 50, 3}, { 6, 49, -3}, { 6, 48, 4}, +@@ -990,7 +990,7 @@ + {15, 30252,-64}, { 0, 0, 0} + }; + +-huff_entry_t bitalloc_g_129[] = ++static const huff_entry_t bitalloc_g_129[] = + { + { 4, 0, 0}, { 5, 29, 1}, { 5, 28, -1}, { 5, 25, 2}, + { 5, 24, -2}, { 5, 21, 3}, { 5, 20, -3}, { 5, 17, 4}, +@@ -1027,7 +1027,7 @@ + {13, 7712,-64}, { 0, 0, 0} + }; + +-huff_entry_t *bitalloc_select[11][8] = ++static const huff_entry_t *const bitalloc_select[11][8] = + { + { 0 }, + { bitalloc_a_3, 0 }, +@@ -1047,7 +1047,7 @@ + bitalloc_e_129, bitalloc_f_129, bitalloc_g_129, 0 }, + }; + +-static int InverseQ( dca_state_t * state, huff_entry_t * huff ) ++static int InverseQ( dca_state_t * state, const huff_entry_t * huff ) + { + int value = 0; + int length = 0, j; +--- libdca.orig/libdca/tables_quantization.h ++++ libdca/libdca/tables_quantization.h +@@ -21,7 +21,7 @@ + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +-int scale_factor_quant6[] = ++static const int scale_factor_quant6[] = + { + 1, 2, 2, 3, 3, 4, 6, 7, + 10, 12, 16, 20, 26, 34, 44, 56, +@@ -33,7 +33,7 @@ + 1819701, 2344229, 3019952, 3890451, 5011872, 6456542, 8317638, 0 + }; + +-int scale_factor_quant7[] = ++static const int scale_factor_quant7[] = + { + 1, 1, 2, 2, 2, 2, 3, 3, + 3, 4, 4, 5, 6, 7, 7, 8, +@@ -54,7 +54,7 @@ + }; + + /* 20bits unsigned fractional binary codes */ +-int lossy_quant[] = ++static const int lossy_quant[] = + { + 0, 6710886, 4194304, 3355443, 2474639, 2097152, 1761608, 1426063, + 796918, 461373, 251658, 146801, 79692, 46137, 27263, 16777, +@@ -62,7 +62,7 @@ + 84, 42, 21, 0, 0, 0, 0, 0 + }; + +-double lossy_quant_d[] = ++static const double lossy_quant_d[] = + { + 0, 1.6, 1.0, 0.8, 0.59, 0.50, 0.42, 0.34, + 0.19, 0.11, 0.06, 0.035, 0.019, 0.011, 0.0065, 0.0040, +@@ -71,7 +71,7 @@ + }; + + /* 20bits unsigned fractional binary codes */ +-int lossless_quant[] = ++static const int lossless_quant[] = + { + 0, 4194304, 2097152, 1384120, 1048576, 696254, 524288, 348127, + 262144, 131072, 65431, 33026, 16450, 8208, 4100, 2049, +@@ -79,7 +79,7 @@ + 4, 2, 1, 0, 0, 0, 0, 0 + }; + +-double lossless_quant_d[] = ++static const double lossless_quant_d[] = + { + 0, 1.0, 0.5, 0.33, 0.25, 0.166, 0.125, + 0.083, 0.0625, 0.03125, 0.0156, 7.874E-3, 3.922E-3, 1.957E-3, +--- libdca.orig/libdca/parse.c ++++ libdca/libdca/parse.c +@@ -548,7 +548,7 @@ + /* Scale factors */ + for (j = 0; j < state->prim_channels; j++) + { +- int *scale_table; ++ const int *scale_table; + int scale_sum; + + for (k = 0; k < state->subband_activity[j]; k++) +@@ -761,7 +761,7 @@ + int k, l; + int subsubframe = state->current_subsubframe; + +- double *quant_step_table; ++ const double *quant_step_table; + + /* FIXME */ + double subband_samples[DCA_PRIM_CHANNELS_MAX][DCA_SUBBANDS][8]; +@@ -1145,7 +1145,7 @@ + double samples_in[32][8], sample_t *samples_out, + double scale, sample_t bias) + { +- double *prCoeff; ++ const double *prCoeff; + int i, j, k; + double raXin[32]; + +@@ -1236,7 +1236,7 @@ + */ + + int nDeciFactor, k, J; +- double *prCoeff; ++ const double *prCoeff; + + int NumFIRCoef = 512; /* Number of FIR coefficients */ + int nInterpIndex = 0; /* Index to the interpolated samples */ diff --git a/src/libdca-2-normalisation-factor-sqrt2+output-bias.patch b/src/libdca-2-normalisation-factor-sqrt2+output-bias.patch new file mode 100644 index 0000000..2d4cdb5 --- /dev/null +++ b/src/libdca-2-normalisation-factor-sqrt2+output-bias.patch @@ -0,0 +1,112 @@ +This file is part of MXE. +See index.html for further information. + +Taken from libdca svn: svn://svn.videolan.org/libdca/trunk. + +r84 | gbazin | 2008-06-01 16:13:33 +0000 (Sun, 01 Jun 2008) | 3 lines + * libdca/parse.c: Change output normalisation factor from 3/2 to sqrt(2). + Thanks to Alexander E. Patrakov for finding that this is the proper normalisation factor. + Fixed a bug where the output bias wasn't applied when downmixing wasn't being done. + +--- libdca.orig/libdca/parse.c ++++ libdca/libdca/parse.c +@@ -59,12 +59,11 @@ + static int decode_blockcode (int code, int levels, int *values); + + static void qmf_32_subbands (dca_state_t * state, int chans, +- double samples_in[32][8], sample_t *samples_out, +- double rScale, sample_t bias); ++ double samples_in[32][8], sample_t *samples_out); + + static void lfe_interpolation_fir (int nDecimationSelect, int nNumDeciSample, + double *samples_in, sample_t *samples_out, +- double rScale, sample_t bias ); ++ sample_t bias); + + static void pre_calc_cosmod( dca_state_t * state ); + +@@ -123,7 +122,9 @@ + bitstream_get (state, 1); + + *frame_length = (bitstream_get (state, 7) + 1) * 32; ++ if (*frame_length < 6 * 32) return 0; + frame_size = bitstream_get (state, 14) + 1; ++ if (frame_size < 96) return 0; + if (!state->word_mode) frame_size = frame_size * 8 / 14 * 2; + + /* Audio channel arrangement */ +@@ -981,14 +982,7 @@ + /* 32 subbands QMF */ + for (k = 0; k < state->prim_channels; k++) + { +- /*static double pcm_to_float[8] = +- {32768.0, 32768.0, 524288.0, 524288.0, 0, 8388608.0, 8388608.0};*/ +- +- qmf_32_subbands (state, k, +- subband_samples[k], +- &state->samples[256*k], +- /*WTF ???*/ 32768.0*3/2/*pcm_to_float[state->source_pcm_res]*/, +- 0/*state->bias*/); ++ qmf_32_subbands (state, k, subband_samples[k], &state->samples[256*k]); + } + + /* Down/Up mixing */ +@@ -1000,6 +994,10 @@ + { + dca_downmix (state->samples, state->amode, state->output, state->bias, + state->clev, state->slev); ++ } else if (state->bias) ++ { ++ for ( k = 0; k < 256*state->prim_channels; k++ ) ++ state->samples[k] += state->bias; + } + + /* Generate LFE samples for this subsubframe FIXME!!! */ +@@ -1011,8 +1009,7 @@ + lfe_interpolation_fir (state->lfe, 2 * state->lfe, + state->lfe_data + lfe_samples + + 2 * state->lfe * subsubframe, +- &state->samples[256*i_channels], +- 8388608.0, state->bias); ++ &state->samples[256*i_channels], state->bias); + /* Outputs 20bits pcm samples */ + } + +@@ -1142,9 +1139,9 @@ + } + + static void qmf_32_subbands (dca_state_t * state, int chans, +- double samples_in[32][8], sample_t *samples_out, +- double scale, sample_t bias) ++ double samples_in[32][8], sample_t *samples_out) + { ++ static const double scale = 1.4142135623730951 /* sqrt(2) */ * 32768.0; + const double *prCoeff; + int i, j, k; + double raXin[32]; +@@ -1211,7 +1208,7 @@ + + /* Create 32 PCM output samples */ + for (i=0;i<32;i++) +- samples_out[nChIndex++] = subband_fir_hist2[i] / scale + bias; ++ samples_out[nChIndex++] = subband_fir_hist2[i] / scale; + + /* Update working arrays */ + for (i=511;i>=32;i--) +@@ -1225,7 +1222,7 @@ + + static void lfe_interpolation_fir (int nDecimationSelect, int nNumDeciSample, + double *samples_in, sample_t *samples_out, +- double scale, sample_t bias) ++ sample_t bias) + { + /* samples_in: An array holding decimated samples. + * Samples in current subframe starts from samples_in[0], +@@ -1235,6 +1232,7 @@ + * samples_out: An array holding interpolated samples + */ + ++ static const double scale = 8388608.0; + int nDeciFactor, k, J; + const double *prCoeff; + diff --git a/src/libdca-3-sanity-check-for-subframes-and-prim_channels.patch b/src/libdca-3-sanity-check-for-subframes-and-prim_channels.patch new file mode 100644 index 0000000..25bdb4c --- /dev/null +++ b/src/libdca-3-sanity-check-for-subframes-and-prim_channels.patch @@ -0,0 +1,27 @@ +This file is part of MXE. +See index.html for further information. + +Taken from libdca svn: svn://svn.videolan.org/libdca/trunk. + +r87 | sam | 2008-07-18 19:22:47 +0000 (Fri, 18 Jul 2008) | 2 lines + * parse.c: sanity check for subframes and prim_channels to avoid crashes + with invalid streams. + +--- libdca.orig/libdca/parse.c ++++ libdca/libdca/parse.c +@@ -305,8 +305,15 @@ + + /* Primary audio coding header */ + state->subframes = bitstream_get (state, 4) + 1; ++ ++ if (state->subframes > DCA_SUBFRAMES_MAX) ++ state->subframes = DCA_SUBFRAMES_MAX; ++ + state->prim_channels = bitstream_get (state, 3) + 1; + ++ if (state->prim_channels > DCA_PRIM_CHANNELS_MAX) ++ state->prim_channels = DCA_PRIM_CHANNELS_MAX; ++ + #ifdef DEBUG + fprintf (stderr, "subframes: %i\n", state->subframes); + fprintf (stderr, "prim channels: %i\n", state->prim_channels); diff --git a/src/libdca-4-fix-random-crashes-caused-by-invalid-32-bit-shifts.patch b/src/libdca-4-fix-random-crashes-caused-by-invalid-32-bit-shifts.patch new file mode 100644 index 0000000..f247802 --- /dev/null +++ b/src/libdca-4-fix-random-crashes-caused-by-invalid-32-bit-shifts.patch @@ -0,0 +1,48 @@ +This file is part of MXE. +See index.html for further information. + +Taken from libdca svn: svn://svn.videolan.org/libdca/trunk. + +r88 | sam | 2008-07-19 22:26:13 +0000 (Sat, 19 Jul 2008) | 2 lines + * bitstream.c: fix random crashes caused by invalid 32-bit shifts on 32-bit + values. + +--- libdca.orig/libdca/bitstream.c ++++ libdca/libdca/bitstream.c +@@ -25,6 +25,7 @@ + + #include "config.h" + ++#include <stdio.h> + #include <inttypes.h> + + #include "dca.h" +@@ -46,7 +47,7 @@ + state->bigendian_mode = bigendian_mode; + bitstream_get (state, align * 8); + } +-#include<stdio.h> ++ + static inline void bitstream_fill_current (dca_state_t * state) + { + uint32_t tmp; +@@ -76,12 +77,14 @@ + + uint32_t dca_bitstream_get_bh (dca_state_t * state, uint32_t num_bits) + { +- uint32_t result; +- +- num_bits -= state->bits_left; ++ uint32_t result = 0; + +- result = ((state->current_word << (32 - state->bits_left)) >> +- (32 - state->bits_left)); ++ if (state->bits_left) ++ { ++ num_bits -= state->bits_left; ++ result = ((state->current_word << (32 - state->bits_left)) >> ++ (32 - state->bits_left)); ++ } + + if ( !state->word_mode && num_bits > 28 ) { + bitstream_fill_current (state); diff --git a/src/libdca-5-avoid-crashing-with-invalid-frames.patch b/src/libdca-5-avoid-crashing-with-invalid-frames.patch new file mode 100644 index 0000000..cd14444 --- /dev/null +++ b/src/libdca-5-avoid-crashing-with-invalid-frames.patch @@ -0,0 +1,31 @@ +This file is part of MXE. +See index.html for further information. + +Taken from libdca svn: svn://svn.videolan.org/libdca/trunk. + +r89 | sam | 2008-07-19 22:26:17 +0000 (Sat, 19 Jul 2008) | 2 lines + * parse.c: avoid crashing with invalid frames setting a bitalloc_huffman + component to 7. + +--- libdca.orig/libdca/parse.c ++++ libdca/libdca/parse.c +@@ -364,7 +364,10 @@ + for (i = 0; i < state->prim_channels; i++) + { + state->bitalloc_huffman[i] = bitstream_get (state, 3); +- /* if (state->bitalloc_huffman[i] == 7) bailout */ ++ /* There might be a way not to trash the whole frame, but for ++ * now we must bail out or we will buffer overflow later. */ ++ if (state->bitalloc_huffman[i] == 7) ++ return 1; + #ifdef DEBUG + fprintf (stderr, "bit allocation quantizer: %i\n", + state->bitalloc_huffman[i]); +@@ -541,6 +544,7 @@ + k < state->vq_start_subband[j] && + state->bitalloc[j][k] > 0) + { ++ /* tmode cannot overflow since transient_huffman[j] < 4 */ + state->transition_mode[j][k] = InverseQ (state, + tmode[state->transient_huffman[j]]); + } diff --git a/src/libdca-test.c b/src/libdca-test.c new file mode 100644 index 0000000..3028f34 --- /dev/null +++ b/src/libdca-test.c @@ -0,0 +1,23 @@ +/* + * This file is part of MXE. + * See index.html for further information. + */ + +#include <stdint.h> +#include <dca.h> + +int main(int argc, char *argv[]) +{ + dca_state_t *state; + + (void)argc; + (void)argv; + + state = dca_init(0); + if (!state) { + return 1; + } + + dca_free(state); + return 0; +} diff --git a/src/libdca.mk b/src/libdca.mk new file mode 100644 index 0000000..1a9174c --- /dev/null +++ b/src/libdca.mk @@ -0,0 +1,31 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libdca +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.0.5 +$(PKG)_CHECKSUM := 3fa5188eaaa2fc83fb9c4196f6695a23cb17f3bc +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $($(PKG)_SUBDIR).tar.bz2 +$(PKG)_URL := http://download.videolan.org/pub/videolan/libdca/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + echo 'TODO: write update script for libdca.' >&2; + echo $(libdca_VERSION) +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --enable-static \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + + '$(TARGET)-gcc' \ + -W -Wall -Werror -ansi -pedantic \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-libdca.exe' \ + `'$(TARGET)-pkg-config' libdca --cflags --libs` +endef diff --git a/src/libdvdcss.mk b/src/libdvdcss.mk new file mode 100644 index 0000000..cf8f069 --- /dev/null +++ b/src/libdvdcss.mk @@ -0,0 +1,28 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libdvdcss +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.2.13 +$(PKG)_CHECKSUM := 1a4a5e55c7529da46386c1c333340eee2c325a77 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $($(PKG)_SUBDIR).tar.bz2 +$(PKG)_URL := http://download.videolan.org/pub/libdvdcss/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://download.videolan.org/pub/libdvdcss/last/' | \ + $(SED) -n 's,.*libdvdcss-\([0-9][^<]*\)\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --build="`config.guess`" \ + --prefix='$(PREFIX)/$(TARGET)' \ + --disable-shared \ + --disable-doc + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/libftdi1-1-dont-build-tests.patch b/src/libftdi1-1-dont-build-tests.patch new file mode 100644 index 0000000..bba3a44 --- /dev/null +++ b/src/libftdi1-1-dont-build-tests.patch @@ -0,0 +1,14 @@ +This file is part of MXE. +See index.html for further information. + +diff -Naur a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt.orig 2013-08-22 17:27:01.000000000 +0200 ++++ b/CMakeLists.txt 2013-08-22 17:27:07.000000000 +0200 +@@ -143,7 +143,6 @@ + add_subdirectory(ftdi_eeprom) + add_subdirectory(examples) + add_subdirectory(packages) +-add_subdirectory(test) + + # PkgConfig + set(prefix ${CMAKE_INSTALL_PREFIX}) diff --git a/src/libftdi1.mk b/src/libftdi1.mk new file mode 100644 index 0000000..3292ee1 --- /dev/null +++ b/src/libftdi1.mk @@ -0,0 +1,25 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libftdi1 +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.0 +$(PKG)_CHECKSUM := 5be76cfd7cd36c5291054638f7caf4137303386f +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://www.intra2net.com/en/developer/libftdi/download/$($(PKG)_FILE) +$(PKG)_DEPS := gcc libusb1 + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://www.intra2net.com/en/developer/libftdi/download.php' | \ + $(SED) -n 's,.*libftdi1-\([0-9][^>]*\)\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && cmake . \ + -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ + -DCMAKE_BUILD_TYPE=Release \ + -DLIBUSB_INCLUDE_DIR=$(PREFIX)/$(TARGET)/include/libusb-1.0 + $(MAKE) -C '$(1)' -j '$(JOBS)' install VERBOSE=1 +endef diff --git a/src/libgcrypt.mk b/src/libgcrypt.mk index 14544ea..bd3be3d 100644 --- a/src/libgcrypt.mk +++ b/src/libgcrypt.mk @@ -3,8 +3,8 @@ PKG := libgcrypt $(PKG)_IGNORE := -$(PKG)_VERSION := 1.5.2 -$(PKG)_CHECKSUM := c9998383532ba3e8bcaf690f2f0d65e814b48d2f +$(PKG)_VERSION := 1.5.3 +$(PKG)_CHECKSUM := 2c6553cc17f2a1616d512d6870fe95edf6b0e26e $(PKG)_SUBDIR := libgcrypt-$($(PKG)_VERSION) $(PKG)_FILE := libgcrypt-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := ftp://ftp.gnupg.org/gcrypt/libgcrypt/$($(PKG)_FILE) diff --git a/src/libglade-1-fixes.patch b/src/libglade-1-fixes.patch new file mode 100644 index 0000000..52cd435 --- /dev/null +++ b/src/libglade-1-fixes.patch @@ -0,0 +1,32 @@ +This file is part of MXE. +See index.html for further information. + +Contains ad hoc patches for cross building. + +From 01e3cf1fae96edc0b5e8ccd0bf2c2ea11d0a6987 Mon Sep 17 00:00:00 2001 +From: MXE +Date: Sun, 4 Aug 2013 23:32:15 +0200 +Subject: [PATCH] comment out production of some file for make install to + succeed + + +diff --git a/glade/Makefile.am b/glade/Makefile.am +index f6271f7..fae55bc 100644 +--- a/glade/Makefile.am ++++ b/glade/Makefile.am +@@ -13,10 +13,10 @@ if OS_WIN32 + export_symbols = -export-symbols glade.def + + install-libtool-import-lib: +- $(INSTALL) .libs/libglade-2.0.dll.a $(DESTDIR)$(libdir) ++# $(INSTALL) .libs/libglade-2.0.dll.a $(DESTDIR)$(libdir) + + uninstall-libtool-import-lib: +- -rm $(DESTDIR)$(libdir)/libglade-2.0.dll.a ++# -rm $(DESTDIR)$(libdir)/libglade-2.0.dll.a + else + + export_symbols = -export-symbols-regex "^[^_].*" +-- +1.8.1.2 + diff --git a/src/libglade.mk b/src/libglade.mk index 4f95d7d..f321d9b 100644 --- a/src/libglade.mk +++ b/src/libglade.mk @@ -17,6 +17,7 @@ define $(PKG)_UPDATE endef define $(PKG)_BUILD + cd '$(1)' && autoreconf -fi -I'$(PREFIX)/$(TARGET)/share/aclocal' cd '$(1)' && ./configure \ --host='$(TARGET)' \ --build="`config.guess`" \ @@ -24,5 +25,5 @@ define $(PKG)_BUILD --prefix='$(PREFIX)/$(TARGET)' \ PKG_CONFIG='$(PREFIX)/bin/$(TARGET)-pkg-config' $(MAKE) -C '$(1)' -j '$(JOBS)' - $(MAKE) -C '$(1)' -j 1 install-exec + $(MAKE) -C '$(1)' -j 1 install endef diff --git a/src/libgpg_error.mk b/src/libgpg_error.mk index 42abb35..58732b5 100644 --- a/src/libgpg_error.mk +++ b/src/libgpg_error.mk @@ -26,4 +26,5 @@ define $(PKG)_BUILD --disable-languages $(MAKE) -C '$(1)/src' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= $(MAKE) -C '$(1)/src' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + ln -sf '$(PREFIX)/$(TARGET)/bin/gpg-error-config' '$(PREFIX)/bin/$(TARGET)-gpg-error-config' endef diff --git a/src/libgsf.mk b/src/libgsf.mk index 55731c6..098b002 100644 --- a/src/libgsf.mk +++ b/src/libgsf.mk @@ -3,8 +3,8 @@ PKG := libgsf $(PKG)_IGNORE := -$(PKG)_VERSION := 1.14.27 -$(PKG)_CHECKSUM := b6082b71bf9d6e1cdafde9628cae58fcedc4a8fd +$(PKG)_VERSION := 1.14.28 +$(PKG)_CHECKSUM := 6e361410a8922bd5970add23398868abab47608f $(PKG)_SUBDIR := libgsf-$($(PKG)_VERSION) $(PKG)_FILE := libgsf-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/libgsf/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/libidn.mk b/src/libidn.mk index 316ccd1..7e71c83 100644 --- a/src/libidn.mk +++ b/src/libidn.mk @@ -3,8 +3,8 @@ PKG := libidn $(PKG)_IGNORE := -$(PKG)_VERSION := 1.27 -$(PKG)_CHECKSUM := 67364d0cc331f2ea93f09a1b436dc606db16ad4d +$(PKG)_VERSION := 1.28 +$(PKG)_CHECKSUM := 725587211b229c156e29fa2ad116b0ef71a7ca17 $(PKG)_SUBDIR := libidn-$($(PKG)_VERSION) $(PKG)_FILE := libidn-$($(PKG)_VERSION).tar.gz $(PKG)_URL := ftp://ftp.gnu.org/gnu/libidn/$($(PKG)_FILE) diff --git a/src/libircclient-1-fixes.patch b/src/libircclient-1-fixes.patch index da48eb5..b22e428 100644 --- a/src/libircclient-1-fixes.patch +++ b/src/libircclient-1-fixes.patch @@ -3,58 +3,19 @@ See index.html for further information. Contains ad hoc patches for cross building. -From 06b27e262de1d156ea31b52762ed372211b72de9 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Mon, 23 Jan 2012 08:26:14 +0100 +From aab6124359bbf8d0b3003ccf4adc791e0d921aa3 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Tue, 8 Oct 2013 22:37:07 +0200 Subject: [PATCH 1/2] use the proper WIN32 define -diff --git a/examples/censor.cpp b/examples/censor.cpp -index 0c15f4c..c784040 100644 ---- a/examples/censor.cpp -+++ b/examples/censor.cpp -@@ -32,7 +32,7 @@ - #include <errno.h> - #include <string.h> - --#if !defined (WIN32) -+#if !defined (_WIN32) - #include <unistd.h> - #endif - -diff --git a/examples/irctest.c b/examples/irctest.c -index bd6dbc3..08d2ba7 100644 ---- a/examples/irctest.c -+++ b/examples/irctest.c -@@ -51,7 +51,7 @@ void addlog (const char * fmt, ...) - va_list va_alist; - - va_start (va_alist, fmt); --#if defined (WIN32) -+#if defined (_WIN32) - _vsnprintf (buf, sizeof(buf), fmt, va_alist); - #else - vsnprintf (buf, sizeof(buf), fmt, va_alist); -diff --git a/examples/spammer.c b/examples/spammer.c -index ae9c2c7..2a0861b 100644 ---- a/examples/spammer.c -+++ b/examples/spammer.c -@@ -17,7 +17,7 @@ - #include <errno.h> - #include <string.h> - --#if defined (WIN32) -+#if defined (_WIN32) - #include <windows.h> - - #define CREATE_THREAD(id,func,param) (CreateThread(0, 0, func, param, 0, id) == 0) diff --git a/include/libircclient.h b/include/libircclient.h -index 2dcd44c..af7d769 100644 +index 250a0d1..7ff83be 100644 --- a/include/libircclient.h +++ b/include/libircclient.h -@@ -44,7 +44,7 @@ - #ifndef INCLUDE_LIBIRC_H - #define INCLUDE_LIBIRC_H +@@ -46,7 +46,7 @@ + + #include <stdlib.h> -#if !defined (WIN32) +#if !defined (_WIN32) @@ -62,20 +23,20 @@ index 2dcd44c..af7d769 100644 #else #include <winsock2.h> -- -1.7.8.3 +1.8.1.4 -From 1a54c4dda67b99c1c0c0c68b45a395b741cb7030 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Sun, 22 Jan 2012 22:39:23 +0100 +From 1ac4521bd869d7cb3a82640d44f80cb9f9388eb7 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Tue, 8 Oct 2013 22:37:29 +0200 Subject: [PATCH 2/2] fix missing header diff --git a/include/libircclient.h b/include/libircclient.h -index af7d769..57c8516 100644 +index 7ff83be..677f41f 100644 --- a/include/libircclient.h +++ b/include/libircclient.h -@@ -131,6 +131,7 @@ typedef void (*irc_dcc_callback_t) (irc_session_t * session, irc_dcc_t id, int s +@@ -133,6 +133,7 @@ typedef void (*irc_dcc_callback_t) (irc_session_t * session, irc_dcc_t id, int s #include "libirc_errors.h" #include "libirc_events.h" #include "libirc_options.h" @@ -84,5 +45,5 @@ index af7d769..57c8516 100644 -- -1.7.8.3 +1.8.1.4 diff --git a/src/libircclient.mk b/src/libircclient.mk index 4f2b5dc..ac114a4 100644 --- a/src/libircclient.mk +++ b/src/libircclient.mk @@ -5,8 +5,8 @@ PKG := libircclient $(PKG)_IGNORE := -$(PKG)_VERSION := 1.6 -$(PKG)_CHECKSUM := 10fb7a2478f6d668dce2d7fb5cd5a35ea8f53ed4 +$(PKG)_VERSION := 1.7 +$(PKG)_CHECKSUM := 02f1502d486c89ca26a59d6ba2cc5a4f92be95b1 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) diff --git a/src/libltdl.mk b/src/libltdl.mk new file mode 100644 index 0000000..79e09f5 --- /dev/null +++ b/src/libltdl.mk @@ -0,0 +1,25 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libltdl +$(PKG)_IGNORE = $(libtool_IGNORE) +$(PKG)_VERSION = $(libtool_VERSION) +$(PKG)_CHECKSUM = $(libtool_CHECKSUM) +$(PKG)_SUBDIR = $(libtool_SUBDIR) +$(PKG)_FILE = $(libtool_FILE) +$(PKG)_URL = $(libtool_URL) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + echo $(libtool_VERSION) +endef + +define $(PKG)_BUILD + cd '$(1)/libltdl' && ./configure \ + --host='$(TARGET)' \ + --prefix='$(PREFIX)/$(TARGET)' \ + --disable-shared \ + --enable-ltdl-install + $(MAKE) -C '$(1)/libltdl' -j '$(JOBS)' + $(MAKE) -C '$(1)/libltdl' -j 1 install +endef diff --git a/src/libmicrohttpd-1-fixes.patch b/src/libmicrohttpd-1-fixes.patch new file mode 100644 index 0000000..31891be --- /dev/null +++ b/src/libmicrohttpd-1-fixes.patch @@ -0,0 +1,27 @@ +This file is part of MXE. +See index.html for further information. + +Contains ad hoc patches for cross building. + +From e4d4a423ea51d159b7a214b2aa2f6f36ab49df70 Mon Sep 17 00:00:00 2001 +From: MXE +Date: Tue, 12 Nov 2013 00:45:28 +1100 +Subject: [PATCH] add requirements to pkg-config file + + +diff --git a/libmicrohttpd.pc.in b/libmicrohttpd.pc.in +index 54ce379..5cb9321 100644 +--- a/libmicrohttpd.pc.in ++++ b/libmicrohttpd.pc.in +@@ -6,7 +6,7 @@ includedir=@includedir@ + Name: libmicrohttpd + Description: A library for creating an embedded HTTP server + Version: @VERSION@ +-Requires: ++Requires: pthreads plibc + Conflicts: + Libs: -L${libdir} -lmicrohttpd + Libs.private: @MHD_LIBDEPS@ +-- +1.8.4 + diff --git a/src/libmicrohttpd-test.c b/src/libmicrohttpd-test.c new file mode 100644 index 0000000..3157060 --- /dev/null +++ b/src/libmicrohttpd-test.c @@ -0,0 +1,46 @@ +/* + * This file is part of MXE. + * See index.html for further information. + */ + +#include <stdio.h> +#include <sys/types.h> +#include <microhttpd.h> + +#define PORT 8888 + +int answer_to_connection (void *cls, struct MHD_Connection *connection, + const char *url, + const char *method, const char *version, + const char *upload_data, + size_t *upload_data_size, void **con_cls) +{ + const char *page = "<html><body>Hello, browser!</body></html>"; + + struct MHD_Response *response; + int ret; + + response = MHD_create_response_from_buffer (strlen (page), + (void*) page, MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_response (connection, MHD_HTTP_OK, response); + MHD_destroy_response (response); + + return ret; +} + +int main (int argc, char *const *argv) +{ + (void)argc; + (void)argv; + + struct MHD_Daemon *daemon; + + daemon = MHD_start_daemon (MHD_USE_THREAD_PER_CONNECTION, PORT, NULL, NULL, + &answer_to_connection, NULL, MHD_OPTION_END); + if (NULL == daemon) return 1; + + getchar (); + + MHD_stop_daemon (daemon); + return 0; +} diff --git a/src/libmicrohttpd.mk b/src/libmicrohttpd.mk new file mode 100644 index 0000000..9505ec0 --- /dev/null +++ b/src/libmicrohttpd.mk @@ -0,0 +1,40 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libmicrohttpd +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.9.31 +$(PKG)_CHECKSUM := 45d79b0ae25a7fa40dbae90a4195fed9d52f5041 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/libmicrohttpd/$($(PKG)_FILE) +$(PKG)_DEPS := gcc plibc pthreads + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://ftp.gnu.org/gnu/libmicrohttpd/?C=M;O=D' | \ + $(SED) -n 's,.*<a href="libmicrohttpd-\([0-9][^"]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' \ + --build="`config.guess`" \ + --host='$(TARGET)' \ + --enable-static \ + --disable-shared \ + CFLAGS="`'$(TARGET)-pkg-config' --cflags plibc`" \ + LIBS="`'$(TARGET)-pkg-config' --libs plibc`" + $(MAKE) -C '$(1).build' -j '$(JOBS)' PROGRAMS= + $(MAKE) -C '$(1).build' -j 1 install PROGRAMS= + + '$(TARGET)-gcc' \ + -W -Wall -Werror -std=c99 -pedantic -Wno-error=unused-parameter \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-libmicrohttpd.exe' \ + `'$(TARGET)-pkg-config' --cflags --libs libmicrohttpd` +endef + +$(PKG)_BUILD_i686-w64-mingw32 = +$(PKG)_BUILD_x86_64-w64-mingw32 = diff --git a/src/libmng-1-fixes.patch b/src/libmng-1-fixes.patch deleted file mode 100644 index dcf0fdb..0000000 --- a/src/libmng-1-fixes.patch +++ /dev/null @@ -1,32 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -Contains ad hoc patches for cross building. - -From 1a94342a8f86ab72b8d6c24b8ecd974d2821be04 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Thu, 3 Nov 2011 14:40:24 +0100 -Subject: [PATCH] add pkg-config file - - -diff --git a/libmng.pc.in b/libmng.pc.in -new file mode 100644 -index 0000000..1dfc9fa ---- /dev/null -+++ b/libmng.pc.in -@@ -0,0 +1,12 @@ -+prefix=@prefix@ -+exec_prefix=${prefix} -+libdir=${exec_prefix}/lib -+includedir=${prefix}/include -+ -+Name: libmng -+Description: The MNG library. -+Version: @VERSION@ -+Libs: -L${libdir} -lmng -+Libs.private: @mng_libs_private@ -+Cflags: -I${includedir} -+Requires.private: @mng_requires_private@ --- -1.7.7 - diff --git a/src/libmng.mk b/src/libmng.mk index 33a9151..6f08e09 100644 --- a/src/libmng.mk +++ b/src/libmng.mk @@ -3,12 +3,12 @@ PKG := libmng $(PKG)_IGNORE := -$(PKG)_VERSION := 1.0.10 -$(PKG)_CHECKSUM := c21c84b614500ae1a41c6595d5f81c596e406ca2 +$(PKG)_VERSION := 2.0.2 +$(PKG)_CHECKSUM := 7dd35369ff5916e1823cbacef984ab1b87714b69 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)-devel/$($(PKG)_VERSION)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc zlib jpeg lcms1 +$(PKG)_DEPS := gcc zlib jpeg lcms define $(PKG)_UPDATE $(WGET) -q -O- 'http://sourceforge.net/projects/libmng/files/libmng-devel/' | \ @@ -17,18 +17,10 @@ define $(PKG)_UPDATE endef define $(PKG)_BUILD - $(MAKE) -C '$(1)' -j '$(JOBS)' \ - -f '$(1)'/makefiles/makefile.unix \ - CC=$(TARGET)-gcc CFLAGS='-DMNG_BUILD_SO -DMNG_FULL_CMS' - $(TARGET)-ranlib '$(1)/libmng.a' - $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib' - $(INSTALL) -m644 '$(1)/libmng.a' '$(PREFIX)/$(TARGET)/lib/' - $(INSTALL) -d '$(PREFIX)/$(TARGET)/include' - $(INSTALL) -m644 '$(1)/libmng.h' '$(1)/libmng_conf.h' '$(1)/libmng_types.h' '$(PREFIX)/$(TARGET)/include/' - $(SED) -e 's^@prefix@^$(PREFIX)/$(TARGET)^;' \ - -e 's^@VERSION@^$(libmng_VERSION)^;' \ - -e 's^@mng_libs_private@^-ljpeg^;' \ - -e 's^@mng_requires_private@^lcms zlib^;' \ - < '$(1)/libmng.pc.in' > '$(1)/libmng.pc' - $(INSTALL) -m644 '$(1)/libmng.pc' '$(PREFIX)/$(TARGET)/lib/pkgconfig/' + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --build="`config.guess`" \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install endef diff --git a/src/libntlm.mk b/src/libntlm.mk index 59895e8..f66824a 100644 --- a/src/libntlm.mk +++ b/src/libntlm.mk @@ -3,8 +3,8 @@ PKG := libntlm $(PKG)_IGNORE := -$(PKG)_VERSION := 1.3 -$(PKG)_CHECKSUM := 5dd798d5fb9a75656225052aa88ceb9befbbd4a0 +$(PKG)_VERSION := 1.4 +$(PKG)_CHECKSUM := b15c9ccbd3829154647b3f9d6594b1ffe4491b6f $(PKG)_SUBDIR := libntlm-$($(PKG)_VERSION) $(PKG)_FILE := libntlm-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://www.nongnu.org/libntlm/releases/$($(PKG)_FILE) diff --git a/src/libnut-1-ftello.patch b/src/libnut-1-ftello.patch new file mode 100644 index 0000000..e6e8afd --- /dev/null +++ b/src/libnut-1-ftello.patch @@ -0,0 +1,12 @@ +diff -Naur libnut-r681.orig/libnut/priv.h libnut-r681/libnut/priv.h +--- libnut-r681.orig/libnut/priv.h 2013-11-09 09:31:47.000000000 -0800 ++++ libnut-r681/libnut/priv.h 2013-11-23 16:56:13.085645547 -0800 +@@ -45,7 +45,7 @@ + #define ABS(a) ((a) > 0 ? (a) : -(a)) + + #if (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR)) +-#define ftello(a) ((off_t)(_ftelli64(a))) ++#define ftello(a) ((off_t)(ftello64(a))) + #endif + + typedef struct { diff --git a/src/libnut.mk b/src/libnut.mk new file mode 100644 index 0000000..19fe585 --- /dev/null +++ b/src/libnut.mk @@ -0,0 +1,23 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libnut +$(PKG)_IGNORE := +$(PKG)_VERSIONDATE := 20131109 +$(PKG)_VERSIONREV := r681 +$(PKG)_VERSION := $($(PKG)_VERSIONDATE)-$($(PKG)_VERSIONREV) +$(PKG)_CHECKSUM := 1be2a8a9dcaed632f23141f2f1230f9a47f05a68 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSIONREV) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSIONREV).tar.xz +$(PKG)_URL := https://launchpad.net/$(PKG)/trunk/$($(PKG)_VERSIONREV)/+download/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + echo 'TODO: Updates for package libnut need to be written.' >&2; + echo $(libnut_VERSION) +endef + +define $(PKG)_BUILD + $(MAKE) -C '$(1)' -j '$(JOBS)' CC='$(TARGET)-gcc' AR='$(TARGET)-ar' RANLIB='$(TARGET)-ranlib' PREFIX='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j 1 install CC='$(TARGET)-gcc' AR='$(TARGET)-ar' RANLIB='$(TARGET)-ranlib' PREFIX='$(PREFIX)/$(TARGET)' +endef diff --git a/src/libpng.mk b/src/libpng.mk index 2dcdf10..8d77d58 100644 --- a/src/libpng.mk +++ b/src/libpng.mk @@ -3,16 +3,15 @@ PKG := libpng $(PKG)_IGNORE := -$(PKG)_VERSION := 1.6.1 -$(PKG)_CHECKSUM := 1abe4e377b3e7863bb0d642330bdd83f4c704cc2 +$(PKG)_VERSION := 1.6.7 +$(PKG)_CHECKSUM := d2917fe56d416354a0dffdc852401b364624a7de $(PKG)_SUBDIR := libpng-$($(PKG)_VERSION) $(PKG)_FILE := libpng-$($(PKG)_VERSION).tar.xz $(PKG)_URL := ftp://ftp.simplesystems.org/pub/$(PKG)/png/src/libpng16/$($(PKG)_FILE) $(PKG)_DEPS := gcc zlib define $(PKG)_UPDATE - $(WGET) -q -O- 'http://libpng.git.sourceforge.net/git/gitweb.cgi?p=libpng/libpng;a=tags' | \ - grep '<a class="list name"' | \ + $(WGET) -q -O- 'http://sourceforge.net/p/libpng/code/ref/master/tags/' | \ $(SED) -n 's,.*<a[^>]*>v\([0-9][^<]*\)<.*,\1,p' | \ grep -v alpha | \ grep -v beta | \ @@ -28,6 +27,7 @@ define $(PKG)_BUILD --disable-shared \ --prefix='$(PREFIX)/$(TARGET)' $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + ln -sf '$(PREFIX)/$(TARGET)/bin/libpng-config' '$(PREFIX)/bin/$(TARGET)-libpng-config' '$(TARGET)-gcc' \ -W -Wall -Werror -std=c99 -pedantic \ diff --git a/src/librsvg-1-fixes.patch b/src/librsvg-1-fixes.patch index dbaf5de..8e25e66 100644 --- a/src/librsvg-1-fixes.patch +++ b/src/librsvg-1-fixes.patch @@ -6,7 +6,7 @@ Contains an ad hoc patch for cross building. From 1ff5a73bee660f1d61f9cdd7c8d7aff29e959c4c Mon Sep 17 00:00:00 2001 From: MXE Date: Mon, 27 Sep 2010 12:00:52 +0200 -Subject: [PATCH] fix .pc requirements +Subject: [PATCH 1/2] fix .pc requirements diff --git a/librsvg.pc.in b/librsvg.pc.in @@ -24,3 +24,35 @@ index 372f199..b6ee7a9 100644 Cflags: -I${includedir}/librsvg-@RSVG_API_VERSION@ -- 1.7.1 + + +[PATCH 2/2] Work around use of canonicalize_file_name() + + +diff -ur librsvg-2.40.0.orig/rsvg-base.c librsvg-2.40.0/rsvg-base.c +--- librsvg-2.40.0.orig/rsvg-base.c 2013-05-11 11:19:07.000000000 +0200 ++++ librsvg-2.40.0/rsvg-base.c 2013-11-09 15:24:47.865999754 +0100 +@@ -2191,7 +2191,11 @@ + g_object_unref (base); + + /* FIXME portability */ ++#ifndef __MINGW32__ + cdir = canonicalize_file_name (dir); ++#else ++ cdir = dir; ++#endif + g_free (dir); + if (cdir == NULL) + goto deny; +@@ -2201,7 +2205,11 @@ + goto deny; + + /* FIXME portability */ ++#ifndef __MINGW32__ + cpath = canonicalize_file_name (path); ++#else ++ cpath = path; ++#endif + g_free (path); + + if (cpath == NULL) diff --git a/src/librsvg.mk b/src/librsvg.mk index a540e3a..4473ad5 100644 --- a/src/librsvg.mk +++ b/src/librsvg.mk @@ -3,8 +3,8 @@ PKG := librsvg $(PKG)_IGNORE := -$(PKG)_VERSION := 2.37.0 -$(PKG)_CHECKSUM := 92ac16f1210e2324011039284407e17d3fda6e88 +$(PKG)_VERSION := 2.40.1 +$(PKG)_CHECKSUM := abbfed10433b26e88f18fe62a9b84d48fc00b9e1 $(PKG)_SUBDIR := librsvg-$($(PKG)_VERSION) $(PKG)_FILE := librsvg-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/GNOME/sources/librsvg/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/libtool.mk b/src/libtool.mk index 558a6dd..fcc55eb 100644 --- a/src/libtool.mk +++ b/src/libtool.mk @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 22b71a8b5ce3ad86e1094e7285981cae10e6ff88 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://ftp.gnu.org/gnu/$(PKG)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc +$(PKG)_DEPS := autoconf automake define $(PKG)_UPDATE $(WGET) -q -O- 'http://ftp.gnu.org/gnu/libtool/?C=M;O=D' | \ @@ -16,12 +16,10 @@ define $(PKG)_UPDATE head -1 endef -define $(PKG)_BUILD - cd '$(1)/libltdl' && ./configure \ - --host='$(TARGET)' \ - --prefix='$(PREFIX)/$(TARGET)' \ - --disable-shared \ - --enable-ltdl-install - $(MAKE) -C '$(1)/libltdl' -j '$(JOBS)' - $(MAKE) -C '$(1)/libltdl' -j 1 install +define $(PKG)_BUILD_$(BUILD) + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install endef diff --git a/src/libusb1.mk b/src/libusb1.mk new file mode 100644 index 0000000..151a8cc --- /dev/null +++ b/src/libusb1.mk @@ -0,0 +1,27 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := libusb1 +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.0.17 +$(PKG)_CHECKSUM := a491054e7f4f3f52b12bd567335180586a54ae16 +$(PKG)_SUBDIR := libusbx-$($(PKG)_VERSION) +$(PKG)_FILE := libusbx-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/libusbx/releases/$($(PKG)_VERSION)/source/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://sourceforge.net/projects/libusbx/files/releases/' | \ + $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --build="`config.guess`" \ + --disable-shared \ + --enable-static \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install +endef diff --git a/src/libvpx-1-fixes.patch b/src/libvpx-1-fixes.patch index b2ede8c..b8baeb0 100644 --- a/src/libvpx-1-fixes.patch +++ b/src/libvpx-1-fixes.patch @@ -3,39 +3,21 @@ See index.html for further information. Contains ad hoc patches for cross building. -From 01c0e284b4d458fade9f8b2288863f3dd4dbc81a Mon Sep 17 00:00:00 2001 -From: MXE -Date: Fri, 25 May 2012 23:36:41 +0200 -Subject: [PATCH 1/4] add Libs.private to vpx.pc - - -diff --git a/libs.mk b/libs.mk -index e2ba737..209f77e 100644 ---- a/libs.mk -+++ b/libs.mk -@@ -242,6 +242,7 @@ vpx.pc: config.mk libs.mk - $(qexec)echo 'Requires:' >> $@ - $(qexec)echo 'Conflicts:' >> $@ - $(qexec)echo 'Libs: -L$${libdir} -lvpx' >> $@ -+ $(qexec)echo 'Libs.private: -lpthread' >> $@ - $(qexec)echo 'Cflags: -I$${includedir}' >> $@ - INSTALL-LIBS-yes += $(LIBSUBDIR)/pkgconfig/vpx.pc - INSTALL_MAPS += $(LIBSUBDIR)/pkgconfig/%.pc %.pc --- -1.7.11.5 - - -From 73c1c32c41b75a432fbe092fb621474a760d0f51 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Fri, 25 May 2012 23:40:00 +0200 -Subject: [PATCH 2/4] linking as test is not good for cross compiling +From 1408d07fb86254ae1aded0e8cf38e7e0c2550550 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 5 Sep 2013 14:25:31 -0700 +Subject: [PATCH 1/2] Linking as test is not good for cross compiling +Signed-off-by: Timothy Gu <timothygu99@gmail.com> +--- + configure | 3 --- + 1 file changed, 3 deletions(-) diff --git a/configure b/configure -index 62e1ffb..0c4faf9 100755 +index be36e56..987b2e9 100755 --- a/configure +++ b/configure -@@ -481,9 +481,6 @@ process_detect() { +@@ -490,9 +490,6 @@ process_detect() { } fi check_header stdio.h || die "Unable to invoke compiler: ${CC} ${CFLAGS}" @@ -46,14 +28,25 @@ index 62e1ffb..0c4faf9 100755 check_header stdint.h check_header pthread.h -- -1.7.11.5 - - -From 88bedac576559c599f3084b4eaa61a2ef85cfd06 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Fri, 25 May 2012 23:40:55 +0200 -Subject: [PATCH 3/4] fix bin/bash - +1.8.1.2 + + +From bada4be247273378809a30bf9a0ca7d9c9d2b936 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 5 Sep 2013 14:28:28 -0700 +Subject: [PATCH 2/2] Fix /bin/bash + +Signed-off-by: Timothy Gu <timothygu99@gmail.com> +--- + build/make/armlink_adapter.sh | 2 +- + build/make/configure.sh | 2 +- + build/make/gen_asm_deps.sh | 2 +- + build/make/gen_msvs_def.sh | 2 +- + build/make/gen_msvs_proj.sh | 2 +- + build/make/gen_msvs_sln.sh | 2 +- + build/make/version.sh | 2 +- + configure | 2 +- + 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/build/make/armlink_adapter.sh b/build/make/armlink_adapter.sh index b53669c..71cf7e9 100755 @@ -66,7 +59,7 @@ index b53669c..71cf7e9 100755 ## Copyright (c) 2010 The WebM project authors. All Rights Reserved. ## diff --git a/build/make/configure.sh b/build/make/configure.sh -index 3c772e5..032b5e8 100755 +index c99a01c..9023dee 100755 --- a/build/make/configure.sh +++ b/build/make/configure.sh @@ -1,4 +1,4 @@ @@ -76,7 +69,7 @@ index 3c772e5..032b5e8 100755 ## configure.sh ## diff --git a/build/make/gen_asm_deps.sh b/build/make/gen_asm_deps.sh -index 717f870..81b7095 100755 +index 0b4e3aa..158ec34 100755 --- a/build/make/gen_asm_deps.sh +++ b/build/make/gen_asm_deps.sh @@ -1,4 +1,4 @@ @@ -126,7 +119,7 @@ index 3efb956..b3a9c23 100755 ## Copyright (c) 2010 The WebM project authors. All Rights Reserved. ## diff --git a/configure b/configure -index 0c4faf9..5d1db69 100755 +index 987b2e9..d581cf2 100755 --- a/configure +++ b/configure @@ -1,4 +1,4 @@ @@ -136,30 +129,4 @@ index 0c4faf9..5d1db69 100755 ## configure ## -- -1.7.11.5 - - -From 3d905203699e813027233bd0f19b05d44b98470d Mon Sep 17 00:00:00 2001 -From: MXE -Date: Mon, 17 Sep 2012 20:23:14 +1000 -Subject: [PATCH 4/4] Fix for building on OSX - -Taken from: -https://gerrit.chromium.org/gerrit/#/c/26027/ - -diff --git a/build/make/gen_asm_deps.sh b/build/make/gen_asm_deps.sh -index 81b7095..158ec34 100755 ---- a/build/make/gen_asm_deps.sh -+++ b/build/make/gen_asm_deps.sh -@@ -42,7 +42,7 @@ done - - [ -n "$srcfile" ] || show_help - sfx=${sfx:-asm} --includes=$(LC_ALL=C egrep -i "include +\"?+[a-z0-9_/]+\.${sfx}" $srcfile | -+includes=$(LC_ALL=C egrep -i "include +\"?[a-z0-9_/]+\.${sfx}" $srcfile | - perl -p -e "s;.*?([a-z0-9_/]+.${sfx}).*;\1;") - #" restore editor state - for inc in ${includes}; do --- -1.7.11.5 - +1.8.1.2 diff --git a/src/libvpx.mk b/src/libvpx.mk index b521e9a..e769c29 100644 --- a/src/libvpx.mk +++ b/src/libvpx.mk @@ -3,8 +3,8 @@ PKG := libvpx $(PKG)_IGNORE := -$(PKG)_VERSION := 1.1.0 -$(PKG)_CHECKSUM := 356af5f770c50cd021c60863203d8f30164f6021 +$(PKG)_VERSION := 1.2.0 +$(PKG)_CHECKSUM := 214d9a215af1a3278d9fcba4cac89566e321e4cf $(PKG)_SUBDIR := $(PKG)-v$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-v$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://webm.googlecode.com/files/$($(PKG)_FILE) diff --git a/src/libxml++.mk b/src/libxml++.mk index 546e16b..4d4128b 100644 --- a/src/libxml++.mk +++ b/src/libxml++.mk @@ -3,8 +3,8 @@ PKG := libxml++ $(PKG)_IGNORE := -$(PKG)_VERSION := 2.36.0 -$(PKG)_CHECKSUM := 446714be0becb1d1bca914a9a545af96a24de26e +$(PKG)_VERSION := 2.37.1 +$(PKG)_CHECKSUM := 12717f0ec25aa656334db7e0baf8bb1d58820e47 $(PKG)_SUBDIR := libxml++-$($(PKG)_VERSION) $(PKG)_FILE := libxml++-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/GNOME/sources/libxml++/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/m4.mk b/src/m4.mk new file mode 100644 index 0000000..e914df2 --- /dev/null +++ b/src/m4.mk @@ -0,0 +1,28 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := m4 +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.4.17 +$(PKG)_CHECKSUM := 74ad71fa100ec8c13bc715082757eb9ab1e4bbb0 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz +$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/m4/$($(PKG)_FILE) +$(PKG)_DEPS := + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://ftp.gnu.org/gnu/m4/?C=M;O=D' | \ + $(SED) -n 's,.*<a href="m4-\([0-9][^"]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD_$(BUILD) + # gets has been removed from recent glibc + $(SED) -i -e '/gets is a/d' '$(1)/lib/stdio.in.h' + mkdir '$(1).build' + cd '$(1).build' && '$(1)/configure' \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1).build' -j '$(JOBS)' + $(MAKE) -C '$(1).build' -j 1 install +endef diff --git a/src/matio.mk b/src/matio.mk index 1dccb0d..d2d8514 100644 --- a/src/matio.mk +++ b/src/matio.mk @@ -3,10 +3,10 @@ PKG := matio $(PKG)_IGNORE := -$(PKG)_VERSION := 1.5.1 -$(PKG)_CHECKSUM := 12b8ed59688b2f41903ddc3e7975f21f10fe42bb +$(PKG)_VERSION := 1.5.2 +$(PKG)_CHECKSUM := d5a83a51eb2550d75811d2dde967ef3e167d4f52 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_DEPS := gcc zlib hdf5 diff --git a/src/mdbtools.mk b/src/mdbtools.mk index cbf80aa..786cbc3 100644 --- a/src/mdbtools.mk +++ b/src/mdbtools.mk @@ -3,9 +3,9 @@ PKG := mdbtools $(PKG)_IGNORE := -$(PKG)_VERSION := 0.7 -$(PKG)_CHECKSUM := 62fe0703fd8691e4536e1012317406bdb72594cf -$(PKG)_SUBDIR := brianb-mdbtools-004cc9f +$(PKG)_VERSION := 0.7.1 +$(PKG)_CHECKSUM := 672b0afcb1ae3809eee21fa5017d45fcccef82d9 +$(PKG)_SUBDIR := brianb-mdbtools-f8ce1cc $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://github.com/brianb/$(PKG)/tarball/$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_DEPS := gcc glib @@ -18,12 +18,12 @@ define $(PKG)_UPDATE endef define $(PKG)_BUILD - '$(SED)' -i 's/libtooloze/libtoolize/g;' '$(1)/autogen.sh' - cd '$(1)' && NOCONFIGURE=1 ./autogen.sh + cd '$(1)' && autoreconf -i -f cd '$(1)' && ./configure \ --host='$(TARGET)' \ --build="`config.guess`" \ --disable-shared \ + --disable-man \ --prefix='$(PREFIX)/$(TARGET)' \ PKG_CONFIG='$(PREFIX)/bin/$(TARGET)-pkg-config' $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= html_DATA= || \ diff --git a/src/mingw-utils.mk b/src/mingw-utils.mk index f7ec696..108832a 100644 --- a/src/mingw-utils.mk +++ b/src/mingw-utils.mk @@ -8,7 +8,9 @@ $(PKG)_CHECKSUM := 716f51d7622b36448fc1e92d2c69d8f41b1cc2df $(PKG)_SUBDIR := $(PKG)-$(word 1,$(subst -, ,$($(PKG)_VERSION))) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION)-mingw32-src.tar.lzma $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/mingw/MinGW/Extension/$(PKG)/$(PKG)-$($(PKG)_VERSION)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc +$(PKG)_DEPS := + +$(PKG)_DEPS_i686-pc-mingw32 := gcc define $(PKG)_UPDATE $(WGET) -q -O- 'http://sourceforge.net/projects/mingw/files/MinGW/Extension/mingw-utils/' | \ @@ -21,7 +23,8 @@ define $(PKG)_BUILD_i686-pc-mingw32 cp -Rp '$(1)' '$(1).native' cd '$(1).native' && ./configure \ --disable-shared \ - --prefix='$(PREFIX)' + --prefix='$(PREFIX)' \ + CFLAGS='-Wno-error=return-type' $(MAKE) -C '$(1).native/reimp' -j '$(JOBS)' $(INSTALL) -m755 '$(1).native/reimp/reimp' '$(PREFIX)/bin/$(TARGET)-reimp' diff --git a/src/mingw-w64.mk b/src/mingw-w64.mk index 895e2b9..af7fde1 100644 --- a/src/mingw-w64.mk +++ b/src/mingw-w64.mk @@ -3,17 +3,18 @@ PKG := mingw-w64 $(PKG)_IGNORE := -$(PKG)_VERSION := c28722c -$(PKG)_CHECKSUM := bc48803ff15a777adad8890519bd3ebec90acab9 -$(PKG)_SUBDIR := mirror-$(PKG)-$($(PKG)_VERSION)/trunk -$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz -$(PKG)_URL := https://github.com/mirror/$(PKG)/tarball/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_VERSION := 3.0.0 +$(PKG)_CHECKSUM := e2684886442a338d48d02c56ef70eb07039878c3 +$(PKG)_SUBDIR := $(PKG)-v$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-v$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$(PKG)-release/$($(PKG)_FILE) $(PKG)_DEPS := define $(PKG)_UPDATE - $(WGET) -q -O- 'https://github.com/mirror/$(PKG)/commits/master' | \ - $(SED) -n 's#.*<span class="sha">\([^<]\{7\}\)[^<]\{3\}<.*#\1#p' | \ - head -1 + $(WGET) -q -O- 'http://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/' | \ + $(SED) -n 's,.*mingw-w64-v\([0-9.]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD_mingw-w64 diff --git a/src/mpc.mk b/src/mpc.mk new file mode 100644 index 0000000..c8e738c --- /dev/null +++ b/src/mpc.mk @@ -0,0 +1,39 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := mpc +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.0.1 +$(PKG)_CHECKSUM := 8c7e19ad0dd9b3b5cc652273403423d6cf0c5edf +$(PKG)_SUBDIR := mpc-$($(PKG)_VERSION) +$(PKG)_FILE := mpc-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.multiprecision.org/mpc/download/$($(PKG)_FILE) +$(PKG)_URL_2 := http://ftp.debian.org/debian/pool/main/m/mpclib/mpclib_$($(PKG)_VERSION).orig.tar.gz +$(PKG)_DEPS := gcc gmp mpfr + +define $(PKG)_UPDATE + $(WGET) -q -O- 'https://gforge.inria.fr/scm/viewvc.php/tags/?root=mpc&sortby=date' | \ + $(SED) -n 's,.*<a name="\([0-9][^"]*\)".*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --enable-static \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-gmp='$(PREFIX)/$(TARGET)/' \ + --with-mpfr='$(PREFIX)/$(TARGET)/' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install + + # build runtime tests to verify toolchain components + -$(MAKE) -C '$(1)' -j '$(JOBS)' check -k + rm -rf '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests' + cp -R '$(1)/tests' '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests' + (printf 'date /t > all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n'; \ + printf 'time /t >> all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n'; \ + printf 'for /R %%%%f in (*.exe) do %%%%f || echo %%%%f fail >> all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n';) \ + > '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests/all-tests-$(PKG)-$($(PKG)_VERSION).bat' +endef diff --git a/src/mpfr.mk b/src/mpfr.mk index d39cea7..89c945d 100644 --- a/src/mpfr.mk +++ b/src/mpfr.mk @@ -29,4 +29,13 @@ define $(PKG)_BUILD --with-gmp-lib='$(PREFIX)/$(TARGET)/lib/' $(MAKE) -C '$(1)' -j '$(JOBS)' $(MAKE) -C '$(1)' -j '$(JOBS)' install + + # build runtime tests to verify toolchain components + -$(MAKE) -C '$(1)' -j '$(JOBS)' check -k + rm -rf '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests' + cp -R '$(1)/tests' '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests' + (printf 'date /t > all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n'; \ + printf 'time /t >> all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n'; \ + printf 'for /R %%%%f in (*.exe) do %%%%f || echo %%%%f fail >> all-tests-$(PKG)-$($(PKG)_VERSION).txt\r\n';) \ + > '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests/all-tests-$(PKG)-$($(PKG)_VERSION).bat' endef diff --git a/src/mpg123.mk b/src/mpg123.mk new file mode 100644 index 0000000..0bb1afe --- /dev/null +++ b/src/mpg123.mk @@ -0,0 +1,29 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := mpg123 +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.16.0 +$(PKG)_CHECKSUM := 73105629f8d4b9426ec9fe93455a8271a96c4ae4 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/mpg123/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc sdl + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://sourceforge.net/projects/mpg123/files/mpg123/' | \ + $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-default-audio=win32 \ + --with-audio=win32,sdl,dummy \ + --enable-modules=no + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/netpbm.mk b/src/netpbm.mk index 417c870..59f86f8 100644 --- a/src/netpbm.mk +++ b/src/netpbm.mk @@ -3,8 +3,8 @@ PKG := netpbm $(PKG)_IGNORE := -$(PKG)_VERSION := 10.35.89 -$(PKG)_CHECKSUM := f9d07c0b82f5feed66a5e995b077492093aa24b5 +$(PKG)_VERSION := 10.35.90 +$(PKG)_CHECKSUM := 5d5c1f9619f2c27698aabbbe90dff955ef26b223 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tgz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/netpbm/super_stable/$($(PKG)_VERSION)/$($(PKG)_FILE) diff --git a/src/ocaml-cairo.mk b/src/ocaml-cairo.mk index 6b06466..82cb800 100644 --- a/src/ocaml-cairo.mk +++ b/src/ocaml-cairo.mk @@ -34,4 +34,3 @@ define $(PKG)_BUILD endef $(PKG)_BUILD_x86_64-w64-mingw32 = -$(PKG)_BUILD_i686-w64-mingw32 = diff --git a/src/ocaml-lablgl-1-fixes.patch b/src/ocaml-lablgl-1-fixes.patch index a377d62..857a4a8 100644 --- a/src/ocaml-lablgl-1-fixes.patch +++ b/src/ocaml-lablgl-1-fixes.patch @@ -3,13 +3,11 @@ See index.html for further information. Contains ad hoc patches for cross building. -[master 4380599] new version - 3 files changed, 11130 insertions(+), 3 deletions(-) - create mode 100644 src/glext.h -From 43805990b921d3aa32ec3772ecb35de55c1f852d Mon Sep 17 00:00:00 2001 +From 29ddb2d1493f45ac281bbaa6cae80b3767201c9b Mon Sep 17 00:00:00 2001 From: MXE Date: Thu, 10 May 2012 20:07:55 +0200 -Subject: [PATCH] small modification of Makefile for cross-compilation ; includes external glext.h +Subject: [PATCH 1/2] small modification of Makefile for cross-compilation ; + includes external glext.h diff --git a/src/Makefile b/src/Makefile @@ -11176,5 +11174,28 @@ index e10cbce..e337d9b 100644 #include <caml/misc.h> -- -1.7.5.4 +1.8.1.2 + + +From 3693a79d1c425d88b20be62f8ca2064bd82bf2c7 Mon Sep 17 00:00:00 2001 +From: MXE +Date: Sun, 4 Aug 2013 21:35:28 +0200 +Subject: [PATCH 2/2] ml_gl.c : refer to new glext.h + + +diff --git a/src/ml_gl.c b/src/ml_gl.c +index c9b04ad..3ccedaa 100644 +--- a/src/ml_gl.c ++++ b/src/ml_gl.c +@@ -10,7 +10,7 @@ + #include <GL/gl.h> + #endif + #ifdef HAS_GLEXT_H +-#include <GL/glext.h> ++#include "glext.h" + #undef GL_VERSION_1_3 + #endif + #include <caml/misc.h> +-- +1.8.1.2 diff --git a/src/ocaml-lablgl.mk b/src/ocaml-lablgl.mk index 34354f4..0859f0a 100644 --- a/src/ocaml-lablgl.mk +++ b/src/ocaml-lablgl.mk @@ -3,11 +3,12 @@ PKG := ocaml-lablgl $(PKG)_IGNORE := -$(PKG)_VERSION := 20120306 -$(PKG)_CHECKSUM := 996f0aba788f5fa1531587fb06d667b94237cc92 -$(PKG)_SUBDIR := lablGL +$(PKG)_VERSION := 1.05 +$(PKG)_CHECKSUM := 6451294c1591e17db38874e654f319f8ecf401c9 +$(PKG)_SUBDIR := lablgl-$($(PKG)_VERSION) $(PKG)_FILE := lablgl-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/dist/$($(PKG)_FILE) +$(PKG)_URL_2 := https://forge.ocamlcore.org/frs/download.php/1254/$($(PKG)_FILE) $(PKG)_DEPS := gcc ocaml-findlib gtkglarea define $(PKG)_UPDATE @@ -55,4 +56,3 @@ define $(PKG)_BUILD endef $(PKG)_BUILD_x86_64-w64-mingw32 = -$(PKG)_BUILD_i686-w64-mingw32 = diff --git a/src/ocaml-lablgtk2.mk b/src/ocaml-lablgtk2.mk index 5e973ec..0086f20 100644 --- a/src/ocaml-lablgtk2.mk +++ b/src/ocaml-lablgtk2.mk @@ -34,4 +34,3 @@ define $(PKG)_BUILD endef $(PKG)_BUILD_x86_64-w64-mingw32 = -$(PKG)_BUILD_i686-w64-mingw32 = diff --git a/src/ocaml-native-1-fixes.patch b/src/ocaml-native-1-fixes.patch index f188c4c..8c32893 100644 --- a/src/ocaml-native-1-fixes.patch +++ b/src/ocaml-native-1-fixes.patch @@ -3,10 +3,11 @@ See index.html for further information. Contains ad hoc patches for cross building. -From 93d5a514d545567b194af9b9fba0954bb82565e3 Mon Sep 17 00:00:00 2001 +From 3a3ddccba8fa90a42551fb4d529c921c0aac4f63 Mon Sep 17 00:00:00 2001 From: MXE Date: Wed, 3 Oct 2012 09:25:11 +0200 -Subject: [PATCH 1/2] findlib.ml +Subject: [PATCH] ocamlbuild : support for prefixed + ocaml{c,opt,mklib,mktop,find} tools diff --git a/ocamlbuild/findlib.ml b/ocamlbuild/findlib.ml @@ -22,19 +23,8 @@ index b5ef878..77454ed 100644 type package = { name: string; --- -1.7.9.5 - - -From b2ce063eee6dca5b3cd67bdb59d2a11ed2043995 Mon Sep 17 00:00:00 2001 -From: MXE -Date: Wed, 3 Oct 2012 09:31:13 +0200 -Subject: [PATCH 2/2] options : support for prefixed ocaml-tools with - ocamlfind - - diff --git a/ocamlbuild/options.ml b/ocamlbuild/options.ml -index 1be4b63..48f6648 100644 +index 1be4b63..e7313de 100644 --- a/ocamlbuild/options.ml +++ b/ocamlbuild/options.ml @@ -39,16 +39,17 @@ let use_menhir = ref false @@ -68,7 +58,7 @@ index 1be4b63..48f6648 100644 - "ocamlyacc"; "menhir"; "ocamllex"; "ocamlmklib"; "ocamlmktop"; "ocamlfind"] + mk_virtual_solvers "@target@-" + ["ocamlc"; "ocamlopt"; "ocamldep"; "ocamlmklib"; "ocamlmktop"; "ocamlfind"]; -+ mk_virtual_solvers "" ["ocamldoc"; "ocamlyacc"; "menhir"; "ocamllex"; "ocamlfind"] ++ mk_virtual_solvers "" ["ocamldoc"; "ocamlyacc"; "menhir"; "ocamllex"] let ocamlc = ref (V"OCAMLC") let ocamlopt = ref (V"OCAMLOPT") let ocamldep = ref (V"OCAMLDEP") @@ -107,5 +97,5 @@ index 1be4b63..48f6648 100644 let reorder x y = x := !x @ (List.concat (List.rev !y)) in -- -1.7.9.5 +1.8.1.2 diff --git a/src/opencore-amr.mk b/src/opencore-amr.mk index 04df10a..5347383 100644 --- a/src/opencore-amr.mk +++ b/src/opencore-amr.mk @@ -3,11 +3,11 @@ PKG := opencore-amr $(PKG)_IGNORE := -$(PKG)_VERSION := 0.1.2 -$(PKG)_CHECKSUM := 289478d49701213255e9d63a93aae9ad472125cc +$(PKG)_VERSION := 0.1.3 +$(PKG)_CHECKSUM := 737f00e97a237f4ae701ea55913bb38dc5513501 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz -$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_FILE) $(PKG)_DEPS := gcc define $(PKG)_UPDATE diff --git a/src/openexr.mk b/src/openexr.mk index 46a7ca6..e9147e5 100644 --- a/src/openexr.mk +++ b/src/openexr.mk @@ -3,8 +3,8 @@ PKG := openexr $(PKG)_IGNORE := -$(PKG)_VERSION := 2.0.0 -$(PKG)_CHECKSUM := 774ae69ac01bbe4443b6fa0a9b12e276d0af44f5 +$(PKG)_VERSION := 2.0.1 +$(PKG)_CHECKSUM := 22589e11d090a01b5c3117e7e0b7bbb8301184b6 $(PKG)_SUBDIR := openexr-$($(PKG)_VERSION) $(PKG)_FILE := openexr-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://download.savannah.nongnu.org/releases/openexr/$($(PKG)_FILE) diff --git a/src/openscenegraph-1-disable-broken-plugins.patch b/src/openscenegraph-1-disable-broken-plugins.patch deleted file mode 100644 index 4810e12..0000000 --- a/src/openscenegraph-1-disable-broken-plugins.patch +++ /dev/null @@ -1,19 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -This patch has been taken from: - -http://lists.nongnu.org/archive/html/mingw-cross-env-list/2012-11/msg00009.html - -diff -uNr a/CMakeLists.txt b/CMakeLists.txt ---- a/CMakeLists.txt 2011-07-31 09:50:34.000000000 +0200 -+++ b/CMakeLists.txt 2012-11-26 09:41:12.199384455 +0100 -@@ -530,7 +530,7 @@ - # can use Quicktime. - IF(NOT ANDROID) - IF(NOT APPLE) -- FIND_PACKAGE(GIFLIB) -+ #FIND_PACKAGE(GIFLIB) - FIND_PACKAGE(JPEG) - FIND_PACKAGE(PNG) - FIND_PACKAGE(TIFF) diff --git a/src/openscenegraph.mk b/src/openscenegraph.mk index 60c1884..04c5082 100644 --- a/src/openscenegraph.mk +++ b/src/openscenegraph.mk @@ -3,8 +3,8 @@ PKG := openscenegraph $(PKG)_IGNORE := -$(PKG)_VERSION := 3.1.9 -$(PKG)_CHECKSUM := 400794c0a4a568110f28ad89513df66f2f8121b3 +$(PKG)_VERSION := 3.2.0 +$(PKG)_CHECKSUM := c20891862b5876983d180fc4a3d3cfb2b4a3375c $(PKG)_SUBDIR := OpenSceneGraph-$($(PKG)_VERSION) $(PKG)_FILE := OpenSceneGraph-$($(PKG)_VERSION).zip $(PKG)_URL := http://www.openscenegraph.org/downloads/developer_releases/$($(PKG)_FILE) @@ -12,7 +12,8 @@ $(PKG)_DEPS := gcc boost curl dcmtk ffmpeg freetype gdal giflib gta jasper j define $(PKG)_UPDATE $(WGET) -q -O- 'http://www.openscenegraph.org/downloads/developer_releases/?C=M;O=D' | \ - $(SED) -n 's,.*OpenSceneGraph-\([0-9][^<]*\)\.zip.*,\1,p' | \ + $(SED) -n 's,.*OpenSceneGraph-\([0-9]*\.[0-9]*[02468]\.[^<]*\)\.zip.*,\1,p' | \ + grep -v rc | \ $(SORT) -V | \ tail -1 endef diff --git a/src/opus.mk b/src/opus.mk index bcf88d4..2e57505 100644 --- a/src/opus.mk +++ b/src/opus.mk @@ -3,8 +3,8 @@ PKG := opus $(PKG)_IGNORE := -$(PKG)_VERSION := 1.0.2 -$(PKG)_CHECKSUM := 37dd3d69b10612cd513ccf26675ef6d61eda24b4 +$(PKG)_VERSION := 1.0.3 +$(PKG)_CHECKSUM := 5781bdd009943deb55a742ac99db20a0d4e89c1e $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://downloads.xiph.org/releases/$(PKG)/$($(PKG)_FILE) @@ -14,6 +14,8 @@ define $(PKG)_UPDATE $(WGET) -q -O- 'http://downloads.xiph.org/releases/opus/?C=M;O=D' | \ $(SED) -n 's,.*opus-\([0-9][^>]*\)\.tar.*,\1,p' | \ grep -v 'alpha' | \ + grep -v 'beta' | \ + $(SORT) -Vr | \ head -1 endef diff --git a/src/opusfile-1-fseeko64.patch b/src/opusfile-1-fseeko64.patch deleted file mode 100644 index 1df58b7..0000000 --- a/src/opusfile-1-fseeko64.patch +++ /dev/null @@ -1,66 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -This patch has been taken from: -http://git.xiph.org/?p=opusfile.git;a=patch;h=d75915786f465892f5eadcd93444f51a32b9ad1c - -From d75915786f465892f5eadcd93444f51a32b9ad1c Mon Sep 17 00:00:00 2001 -From: Timothy B. Terriberry <tterribe@xiph.org> -Date: Tue, 8 Jan 2013 05:04:41 -0800 -Subject: [PATCH] Use fseeko64/ftello64 for mingw32. - -It turns out i686-pc-mingw32 does define these functions, and they - are always available (unlike _fseeki64/_ftelli64). -This means we can build and link without requiring - i686-w64-mingw32. -The resulting binary still doesn't run in wine for me, but that may - be a personal problem. ---- - src/stream.c | 22 ++++++++++++++++++++++ - 1 files changed, 22 insertions(+), 0 deletions(-) - -diff --git a/src/stream.c b/src/stream.c -index caa82f1..1c7266b 100644 ---- a/src/stream.c -+++ b/src/stream.c -@@ -56,7 +56,18 @@ static int op_fread(void *_stream,unsigned char *_ptr,int _buf_size){ - static int op_fseek(void *_stream,opus_int64 _offset,int _whence){ - #if defined(_MSC_VER) - return _fseeki64((FILE *)_stream,_offset,_whence); -+#elif defined(__MINGW32__) -+ /*i686-pc-mingw32 does not have fseeko() and requires -+ __MSVCRT_VERSION__>=0x800 for _fseeki64(), which screws up linking with -+ other libraries (that don't use MSVCRT80 from MSVC 2005 by default). -+ i686-w64-mingw32 does have fseeko() and respects _FILE_OFFSET_BITS, but I -+ don't know how to detect that at compile time. -+ We don't need to use fopen64(), as this just dispatches to fopen() in -+ mingw32.*/ -+ return fseeko64((FILE *)_stream,(off64_t)_offset,_whence); - #else -+ /*This function actually conforms to the SUSv2 and POSIX.1-2001, so we prefer -+ it except in the two special-cases above.*/ - return fseeko((FILE *)_stream,(off_t)_offset,_whence); - #endif - } -@@ -64,7 +75,18 @@ static int op_fseek(void *_stream,opus_int64 _offset,int _whence){ - static opus_int64 op_ftell(void *_stream){ - #if defined(_MSC_VER) - return _ftelli64((FILE *)_stream); -+#elif defined(__MINGW32__) -+ /*i686-pc-mingw32 does not have ftello() and requires -+ __MSVCRT_VERSION__>=0x800 for _ftelli64(), which screws up linking with -+ other libraries (that don't use MSVCRT80 from MSVC 2005 by default). -+ i686-w64-mingw32 does have ftello() and respects _FILE_OFFSET_BITS, but I -+ don't know how to detect that at compile time. -+ We don't need to use fopen64(), as this just dispatches to fopen() in -+ mingw32.*/ -+ return ftello64((FILE *)_stream); - #else -+ /*This function actually conforms to the SUSv2 and POSIX.1-2001, so we prefer -+ it except in the two special-cases above.*/ - return ftello((FILE *)_stream); - #endif - } --- -1.7.2.5 - diff --git a/src/opusfile-2-lrint-lib.patch b/src/opusfile-2-lrint-lib.patch deleted file mode 100644 index ec848d2..0000000 --- a/src/opusfile-2-lrint-lib.patch +++ /dev/null @@ -1,64 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -This patch has been taken from: -http://lists.xiph.org/pipermail/opus/2013-March/001972.html - -From 6ab2eb850c467e9eaca1c67d37b3e49521a04460 Mon Sep 17 00:00:00 2001 -From: Ulrich Klauer <ulrich@chirlu.de> -Date: Sun, 10 Mar 2013 04:02:49 +0100 -Subject: [PATCH] Handle AC_SEARCH_LIBS special result value - -AC_SEARCH_LIBS will give a result of "none required" if the relevant -function is available without any special libraries. (This is the case -for lrintf on MinGW.) Make sure this special value isn't put verbatim -into the pkg-config files, as it would cause the linker to search for -files named "none" and "required", and fail. ---- - configure.ac | 6 +++++- - opusfile-uninstalled.pc.in | 2 +- - opusfile.pc.in | 2 +- - 3 files changed, 7 insertions(+), 3 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 8b1a3b3..d82d53f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -107,7 +107,11 @@ AS_IF([test "x$enable_fixed_point" = "xyes"], - ]) - ] - ) --AC_SUBST(ac_cv_search_lrintf) -+lrintf_lib=" $ac_cv_search_lrintf" -+AS_IF([test "x$ac_cv_search_lrintf" = "xnone required"], -+ [lrintf_lib=""] -+) -+AC_SUBST(lrintf_lib) - - CC_ATTRIBUTE_VISIBILITY([default], [ - CC_FLAG_VISIBILITY([CFLAGS="${CFLAGS} -fvisibility=hidden"]) -diff --git a/opusfile-uninstalled.pc.in b/opusfile-uninstalled.pc.in -index b63a23c..7f555d6 100644 ---- a/opusfile-uninstalled.pc.in -+++ b/opusfile-uninstalled.pc.in -@@ -10,5 +10,5 @@ Description: Opus playback library (not installed) - Version: @VERSION@ - Requires: ogg >= 1.3 opus >= 1.0.1 @openssl@ - Conflicts: --Libs: ${libdir}/libopusfile.la @ac_cv_search_lrintf@ -+Libs: ${libdir}/libopusfile.la@lrintf_lib@ - Cflags: -I${includedir} -diff --git a/opusfile.pc.in b/opusfile.pc.in -index 0a77f0c..c96d6a8 100644 ---- a/opusfile.pc.in -+++ b/opusfile.pc.in -@@ -11,5 +11,5 @@ Version: @VERSION@ - Requires: ogg >= 1.3 opus >= 1.0.1 @openssl@ - Conflicts: - Libs: -L${libdir} -lopusfile --Libs.private: @ac_cv_search_lrintf@ -+Libs.private:@lrintf_lib@ - Cflags: -I${includedir}/opus --- -1.7.10.4 - diff --git a/src/opusfile.mk b/src/opusfile.mk index d1375af..b14f469 100644 --- a/src/opusfile.mk +++ b/src/opusfile.mk @@ -3,8 +3,8 @@ PKG := opusfile $(PKG)_IGNORE := -$(PKG)_VERSION := 0.2 -$(PKG)_CHECKSUM := db020e25178b501929a11b0e0f469890f4f4e6fa +$(PKG)_VERSION := 0.4 +$(PKG)_CHECKSUM := d514e57ffc051e4359b9bc13d6fc8805a26cdd3b $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://downloads.xiph.org/releases/opus/$($(PKG)_FILE) @@ -14,6 +14,8 @@ define $(PKG)_UPDATE $(WGET) -q -O- 'http://downloads.xiph.org/releases/opus/?C=M;O=D' | \ $(SED) -n 's,.*opusfile-\([0-9][^>]*\)\.tar.*,\1,p' | \ grep -v 'alpha' | \ + grep -v 'beta' | \ + $(SORT) -Vr | \ head -1 endef diff --git a/src/pango-1-fixes.patch b/src/pango-1-fixes.patch index ca5f093..39397f2 100644 --- a/src/pango-1-fixes.patch +++ b/src/pango-1-fixes.patch @@ -166,7 +166,7 @@ index ac62a89..96837d6 100644 - fi -fi - --GTK_DOC_CHECK([1.0]) +-GTK_DOC_CHECK([1.15], [--flavour no-tmpl]) +enable_gtk_doc=no AC_ARG_ENABLE(man, diff --git a/src/pango.mk b/src/pango.mk index d040e93..d120ee1 100644 --- a/src/pango.mk +++ b/src/pango.mk @@ -3,8 +3,8 @@ PKG := pango $(PKG)_IGNORE := -$(PKG)_VERSION := 1.35.0 -$(PKG)_CHECKSUM := 13f10192b6dcbb0f0f5f95eecedd8fa392d964b1 +$(PKG)_VERSION := 1.36.1 +$(PKG)_CHECKSUM := 8800fc023f0be07190b2a6708af4f064568a4710 $(PKG)_SUBDIR := pango-$($(PKG)_VERSION) $(PKG)_FILE := pango-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/pango/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) diff --git a/src/pcre.mk b/src/pcre.mk index d736780..5477802 100644 --- a/src/pcre.mk +++ b/src/pcre.mk @@ -34,4 +34,5 @@ define $(PKG)_BUILD --disable-pcretest-libreadline rm -f '$(PREFIX)/$(TARGET)'/share/man/man3/pcre16*.3 $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + ln -sf '$(PREFIX)/$(TARGET)/bin/pcre-config' '$(PREFIX)/bin/$(TARGET)-pcre-config' endef diff --git a/src/pixman.mk b/src/pixman.mk index a0d2395..89fe077 100644 --- a/src/pixman.mk +++ b/src/pixman.mk @@ -3,8 +3,8 @@ PKG := pixman $(PKG)_IGNORE := -$(PKG)_VERSION := 0.29.4 -$(PKG)_CHECKSUM := de11c690f2aa0ffb4d98db9d8735888a72a510d2 +$(PKG)_VERSION := 0.31.2 +$(PKG)_CHECKSUM := 0246796a1220a52e8e98110dd1460b64e7f2476c $(PKG)_SUBDIR := pixman-$($(PKG)_VERSION) $(PKG)_FILE := pixman-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://cairographics.org/snapshots/$($(PKG)_FILE) diff --git a/src/pkgconf.mk b/src/pkgconf.mk new file mode 100644 index 0000000..00cc2ab --- /dev/null +++ b/src/pkgconf.mk @@ -0,0 +1,31 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := pkgconf +$(PKG)_IGNORE := +$(PKG)_VERSION := da179fd +$(PKG)_CHECKSUM := 1e7b5ffe35ca4580a9b801307c3bc919fd77a4fd +$(PKG)_SUBDIR := $(PKG)-$(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://github.com/$(PKG)/$(PKG)/tarball/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := automake + +define $(PKG)_UPDATE_ + $(WGET) -q -O- 'https://github.com/pkgconf/pkgconf/commits/master' | \ + $(SED) -n 's#.*<span class="sha">\([^<]\{7\}\)[^<]\{3\}<.*#\1#p' | \ + head -1 +endef + +define $(PKG)_UPDATE + echo 'Warning: Updates are temporarily disabled for package pkgconf.' >&2; + echo $(pkgconf_VERSION) +endef + +define $(PKG)_BUILD_$(BUILD) + cd '$(1)' && ./autogen.sh + cd '$(1)' && ./configure \ + --prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install + ln -sf '$(PREFIX)/$(TARGET)/bin/pkgconf' '$(PREFIX)/$(TARGET)/bin/pkg-config' +endef diff --git a/src/plibc-test.c b/src/plibc-test.c new file mode 100644 index 0000000..c8f7365 --- /dev/null +++ b/src/plibc-test.c @@ -0,0 +1,19 @@ +/* + * This file is part of MXE. + * See index.html for further information. + * + */ + +#include "plibc.h" + +int main(int argc, char *argv[]) +{ + (void)argc; + (void)argv; + + plibc_init("MXE", "MXE"); + PRINTF("%s Test", "PlibC"); + plibc_shutdown(); + + return 0; +} diff --git a/src/plibc.mk b/src/plibc.mk index e4f5e0a..7b2ed10 100644 --- a/src/plibc.mk +++ b/src/plibc.mk @@ -2,23 +2,22 @@ # See index.html for further information. PKG := plibc -$(PKG)_IGNORE := -$(PKG)_VERSION := 0.1.7 -$(PKG)_CHECKSUM := b545c602dc5b381fcea9d096910dede95168fbeb -$(PKG)_SUBDIR := PlibC-$($(PKG)_VERSION) -$(PKG)_FILE := plibc-$($(PKG)_VERSION)-src.tar.gz -$(PKG)_URL := http://sourceforge.net/projects/plibc/files/plibc/$($(PKG)_VERSION)/$($(PKG)_FILE)/download +$(PKG)_IGNORE := % +$(PKG)_VERSION := cd7ed09 +$(PKG)_CHECKSUM := 303afa33721e2d0e92044e18f36bb3b57f48da35 +$(PKG)_SUBDIR := mirror-plibc-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := https://github.com/mirror/plibc/tarball/$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_DEPS := gcc define $(PKG)_UPDATE - $(WGET) -q -O- "http://sourceforge.net/projects/plibc/files/plibc/" | \ - grep 'plibc/files/plibc' | \ - $(SED) -n 's,.*plibc/\([0-9][^>]*\)/.*,\1,p' | \ + $(WGET) -q -O- 'https://github.com/mirror/plibc/commits/master' | \ + $(SED) -n 's#.*<span class="sha">\([^<]\{7\}\)[^<]\{3\}<.*#\1#p' | \ head -1 endef define $(PKG)_BUILD - chmod 0755 '$(1)/configure' + cd '$(1)' && autoreconf -fi cd '$(1)' && ./configure \ --host='$(TARGET)' \ --build="`config.guess`" \ @@ -27,6 +26,21 @@ define $(PKG)_BUILD --enable-static \ --disable-shared $(MAKE) -C '$(1)' -j '$(JOBS)' install + + # create pkg-config file + $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib/pkgconfig' + (echo 'Name: $(PKG)'; \ + echo 'Version: $($(PKG)_VERSION)'; \ + echo 'Description: PlibC'; \ + echo 'Cflags: -I''$(PREFIX)/$(TARGET)/include/plibc'' -DWINDOWS'; \ + echo 'Libs: -lplibc'; \ + echo 'Libs.private: -lws2_32 -lole32 -luuid';) \ + > '$(PREFIX)/$(TARGET)/lib/pkgconfig/plibc.pc' + + '$(TARGET)-gcc' \ + -W -Wall -Werror -std=c99 -pedantic \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-plibc.exe' \ + `'$(TARGET)-pkg-config' --cflags --libs plibc` endef $(PKG)_BUILD_i686-w64-mingw32 = diff --git a/src/poco.mk b/src/poco.mk index 565f9b9..6f3077b 100644 --- a/src/poco.mk +++ b/src/poco.mk @@ -3,11 +3,11 @@ PKG := poco $(PKG)_IGNORE := -$(PKG)_VERSION := 1.4.6p1 -$(PKG)_CHECKSUM := c89833d208cc6a3b54a239a776dcb611e7cd4b02 +$(PKG)_VERSION := 1.4.6p2 +$(PKG)_CHECKSUM := 90042349faf1790b5167bad0e84e1713bfd46046 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $($(PKG)_SUBDIR).tar.gz -$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/sources/$(PKG)-$(word 1,$(subst p, ,$($(PKG)_VERSION)))/$($(PKG)_FILE) +$(PKG)_URL := http://pocoproject.org/releases/$(PKG)-$(word 1,$(subst p, ,$($(PKG)_VERSION)))/$($(PKG)_FILE) $(PKG)_DEPS := gcc define $(PKG)_UPDATE diff --git a/src/poppler-1-win32.patch b/src/poppler-1-win32.patch index b3a326f..1db2f0e 100644 --- a/src/poppler-1-win32.patch +++ b/src/poppler-1-win32.patch @@ -14,7 +14,7 @@ diff --git a/poppler/GlobalParamsWin.cc b/poppler/GlobalParamsWin.cc index 527f08e..0739946 100644 --- a/poppler/GlobalParamsWin.cc +++ b/poppler/GlobalParamsWin.cc -@@ -424,7 +424,7 @@ void GlobalParams::setupBaseFonts(char * dir) +@@ -423,7 +423,7 @@ void GlobalParams::setupBaseFonts(char * dir) if (fontFiles->lookup(fontName)) continue; diff --git a/src/poppler.mk b/src/poppler.mk index c1d8cad..e5d7ce7 100644 --- a/src/poppler.mk +++ b/src/poppler.mk @@ -3,16 +3,16 @@ PKG := poppler $(PKG)_IGNORE := -$(PKG)_VERSION := 0.22.5 -$(PKG)_CHECKSUM := 9491bb33788d7f0ee67da572dc4798004f98323a +$(PKG)_VERSION := 0.24.4 +$(PKG)_CHECKSUM := 7938c92c61b63331f2af463db0d10048bf0d4712 $(PKG)_SUBDIR := poppler-$($(PKG)_VERSION) -$(PKG)_FILE := poppler-$($(PKG)_VERSION).tar.gz +$(PKG)_FILE := poppler-$($(PKG)_VERSION).tar.xz $(PKG)_URL := http://poppler.freedesktop.org/$($(PKG)_FILE) $(PKG)_DEPS := gcc glib cairo libpng lcms jpeg tiff freetype zlib curl qt define $(PKG)_UPDATE $(WGET) -q -O- 'http://poppler.freedesktop.org/' | \ - $(SED) -n 's,.*"poppler-\([0-9.]\+\)\.tar\.gz".*,\1,p' | \ + $(SED) -n 's,.*"poppler-\([0-9.]\+\)\.tar\.xz".*,\1,p' | \ head -1 endef @@ -21,7 +21,9 @@ define $(PKG)_BUILD # pick up libtiff (otherwise linking a minimal test program fails not # because libtiff is not found, but because some references are # undefined) - cd '$(1)' && ./configure \ + cd '$(1)' \ + && PATH='$(PREFIX)/$(TARGET)/qt/bin:$(PATH)' \ + ./configure \ --host='$(TARGET)' \ --build="`config.guess`" \ --prefix='$(PREFIX)/$(TARGET)' \ @@ -31,6 +33,7 @@ define $(PKG)_BUILD --enable-xpdf-headers \ --enable-poppler-qt4 \ --enable-zlib \ + --enable-cms=lcms2 \ --enable-libcurl \ --enable-libtiff \ --enable-libjpeg \ @@ -49,8 +52,10 @@ define $(PKG)_BUILD --disable-gtk-doc-pdf \ --with-font-configuration=win32 \ PKG_CONFIG_PATH_$(subst -,_,$(TARGET))='$(PREFIX)/$(TARGET)/qt/lib/pkgconfig' \ + CXXFLAGS=-D_WIN32_WINNT=0x0500 \ LIBTIFF_LIBS="`'$(TARGET)-pkg-config' libtiff-4 --libs`" - $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + PATH='$(PREFIX)/$(TARGET)/qt/bin:$(PATH)' \ + $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= # Test program diff --git a/src/pthreads-w32.mk b/src/pthreads-w32.mk index f98c957..30d5632 100644 --- a/src/pthreads-w32.mk +++ b/src/pthreads-w32.mk @@ -8,7 +8,9 @@ $(PKG)_CHECKSUM := 24d40e89c2e66a765733e8c98d6f94500343da86 $(PKG)_SUBDIR := pthreads-w32-$($(PKG)_VERSION)-release $(PKG)_FILE := pthreads-w32-$($(PKG)_VERSION)-release.tar.gz $(PKG)_URL := ftp://sourceware.org/pub/pthreads-win32/$($(PKG)_FILE) -$(PKG)_DEPS := gcc +$(PKG)_DEPS := + +$(PKG)_DEPS_i686-pc-mingw32 := gcc define $(PKG)_UPDATE $(WGET) -q -O- 'ftp://sourceware.org/pub/pthreads-win32/dll-latest/include/pthread.h' | \ diff --git a/src/pthreads.mk b/src/pthreads.mk index ea28232..d1c2757 100644 --- a/src/pthreads.mk +++ b/src/pthreads.mk @@ -15,7 +15,13 @@ define $(PKG)_UPDATE endef PTHREADS_TEST = \ + $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib/pkgconfig' && \ + (echo 'Name: pthreads'; \ + echo 'Version: $($(PKG)_VERSION)'; \ + echo 'Description: Posix Threads ($(PKG))'; \ + echo 'Libs: -lpthread -lws2_32';) \ + > '$(PREFIX)/$(TARGET)/lib/pkgconfig/pthreads.pc' && \ '$(TARGET)-gcc' \ -W -Wall -Werror -ansi -pedantic \ - '$(TOP_DIR)/src/pthreads-test.c' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \ - -lpthread -lws2_32 + '$(TOP_DIR)/src/pthreads-test.c' -o '$(PREFIX)/$(TARGET)/bin/test-pthreads.exe' \ + `'$(TARGET)-pkg-config' --libs pthreads` diff --git a/src/qt-1-cherrypicks.patch b/src/qt-1-cherrypicks.patch index 967a035..229a61f 100644 --- a/src/qt-1-cherrypicks.patch +++ b/src/qt-1-cherrypicks.patch @@ -4,11 +4,10 @@ See index.html for further information. Commits backported (cherry-picked) from upstream branch or merge requests. http://qt.gitorious.org/qt Also contains MXE specific fixes. - -From 07dd00eda09c4d8bdad037fb0b47c5bc3c9c5b9c Mon Sep 17 00:00:00 2001 +From 6dfcbf0d99d76dbade4e3b427c9826e171382ca4 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Fri, 13 Jan 2012 00:17:48 +0100 -Subject: [PATCH 01/15] remove trailing whitespace +Subject: [PATCH 01/17] remove trailing whitespace backported from qt5/qtbase Change-Id: If53a0bd1794e69b4856f993c6e2959369bd007d6 @@ -32,10 +31,10 @@ index 9090773..859ec8d 100644 1.8.1.4 -From 2bb8b31ebc88fb0a59a8988e7ae3908211e41f87 Mon Sep 17 00:00:00 2001 +From f35425afd4ab61c9d5b806223d58292aa519997b Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Thu, 30 Jun 2011 10:22:33 +0200 -Subject: [PATCH 02/15] do not detect or configure iconv for Windows +Subject: [PATCH 02/17] do not detect or configure iconv for Windows Qt doesn't use iconv on Windows, but configuring it will appear to work and the build will complete. The result is that character @@ -66,10 +65,10 @@ index 460b446..e337dc0 100755 1.8.1.4 -From a18496d765d41b43a44dc6596edb4d71847f9b90 Mon Sep 17 00:00:00 2001 +From 4dcf10f5beed5fbe74201f06a750bf18643dd716 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Wed, 18 Jan 2012 11:43:10 +0100 -Subject: [PATCH 03/15] fix whitespace +Subject: [PATCH 03/17] fix whitespace backported from qt5/qtbase Change-Id: I0cfccae085c000d4368386a34f288c1e6f01a88f @@ -140,10 +139,10 @@ index 859ec8d..70cd890 100644 1.8.1.4 -From b412f830f448ee7ba5f364238d71a4b4072bbdbb Mon Sep 17 00:00:00 2001 +From b3bf93f2b38902cabdd203ad0362e3a90977e118 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Mon, 4 Jul 2011 00:42:24 +0200 -Subject: [PATCH 04/15] build and load text codecs regardless of iconv and +Subject: [PATCH 04/17] build and load text codecs regardless of iconv and platform Otherwise applications linking to static Qt may have to import @@ -282,10 +281,10 @@ index 7c513a0..517ac87 100644 1.8.1.4 -From e3ee716ee2295eb6cb685a9d9c218179601a6795 Mon Sep 17 00:00:00 2001 +From 73d43da5b39105d52511036c3bef3a391d0f19ae Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Fri, 13 Jan 2012 00:24:13 +0100 -Subject: [PATCH 05/15] move plugin text codecs to QtCore +Subject: [PATCH 05/17] move plugin text codecs to QtCore Having plugin text codecs adds considerable complexity to configuring Qt. The plugin interface is designed for optional @@ -79233,10 +79232,10 @@ index 94ce675..c4af49b 100644 1.8.1.4 -From d92f8791dec8984c42613f623a5e48f1aeab1ebb Mon Sep 17 00:00:00 2001 +From aa4d579e9393c0f9b1be42c3b37c9feb04ad42d6 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Wed, 18 Jan 2012 21:01:26 +0100 -Subject: [PATCH 06/15] update private header references +Subject: [PATCH 06/17] update private header references backported from qt5/qtbase Change-Id: I092d879653b6900532a0c4534c1eb2be84e9d0f6 @@ -79396,10 +79395,10 @@ index 054fbe5..c1e4689 100644 1.8.1.4 -From 0f5e4515de61fe6c00a8a5169e65477f3e396025 Mon Sep 17 00:00:00 2001 +From 1461f769066a4e73a421f88c57f6ebd5de279f9d Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Sun, 3 Jul 2011 21:53:27 +0200 -Subject: [PATCH 07/15] cosmetic adjustments for files moved to core/codecs +Subject: [PATCH 07/17] cosmetic adjustments for files moved to core/codecs -update old reference to 'plugin' -rename multiple inclusion guards @@ -79888,10 +79887,10 @@ index c1e4689..d5cbd74 100644 1.8.1.4 -From e8e977e321ab075cae6b4109868d6642b7e54548 Mon Sep 17 00:00:00 2001 +From d2258c0533b501f36842f99fc7e32d44e5321fd8 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Thu, 12 Jan 2012 10:43:29 +0100 -Subject: [PATCH 08/15] remove obsolete codec plugin loading code +Subject: [PATCH 08/17] remove obsolete codec plugin loading code backported from qt5/qtbase Change-Id: I1f3dbb5c10009413f701947b1b89ed3dbc94bf3d @@ -80425,10 +80424,10 @@ index 1642947..36c09f1 100644 1.8.1.4 -From ec1d708e71b87739fde04fcd480ea7317ff390a0 Mon Sep 17 00:00:00 2001 +From 18bb9c4ba6b8d08af061a5465da5db16260a309d Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Mon, 23 Jan 2012 23:12:46 +0100 -Subject: [PATCH 09/15] remove vestiges of text codec plugins +Subject: [PATCH 09/17] remove vestiges of text codec plugins follow-up to 3a3356a85079d734dfa57205a00e1996afc033df @@ -80459,10 +80458,10 @@ index dea05e0..12cd8ea 100644 1.8.1.4 -From f35eab15174376cf907517b7fa12468d84decd3c Mon Sep 17 00:00:00 2001 +From 4fc126e7430559acb80a5c8891d5f237be0409b3 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Thu, 3 Nov 2011 15:10:26 +0100 -Subject: [PATCH 10/15] use pkg-config for libmng (MXE specific) +Subject: [PATCH 10/17] use pkg-config for libmng (MXE specific) Change-Id: Ifce956d5cad06d5273088656b8500b87980063f4 @@ -80485,10 +80484,10 @@ index ffb98de..6aab68f 100644 1.8.1.4 -From e8fb265680c5170fd3796d86fd2fea55c7dbf95e Mon Sep 17 00:00:00 2001 +From 2e6ae6495c5ec5a52b4de2473a6a6ad7b1e0fbb2 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Thu, 3 Nov 2011 14:11:02 +0100 -Subject: [PATCH 11/15] use pkg-config for libtiff-4 (MXE specific) +Subject: [PATCH 11/17] use pkg-config for libtiff-4 (MXE specific) Change-Id: I5e89e66fc1606d425553e781c9e62db703136957 @@ -80511,10 +80510,10 @@ index e1cc3ee..71cbab1 100644 1.8.1.4 -From df24a20f268f023c1aa921366b59cf650cd71d92 Mon Sep 17 00:00:00 2001 +From 7040eedeada1f2e73e76b6ced8badd403138ed62 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Sat, 5 Jun 2010 23:41:04 +0200 -Subject: [PATCH 12/15] restore support for static linking of QtWebKit (MXE +Subject: [PATCH 12/17] restore support for static linking of QtWebKit (MXE specific) Support was removed by 4221d629e2cf37ee8c5ba7cb595b05ab8c82f113. @@ -80614,10 +80613,10 @@ index 9be0f4a..6744f58 100644 1.8.1.4 -From 67a99e7ba8cddb9257ea2d4b642191a40f70f931 Mon Sep 17 00:00:00 2001 +From 63506d7ad0ce09e8d1a28db6b76324c4a7576ed4 Mon Sep 17 00:00:00 2001 From: Tony Theodore <tonyt@logyst.com> Date: Thu, 1 Sep 2011 13:47:10 +0200 -Subject: [PATCH 13/15] fix building on GNU/kFreeBSD (MXE specific) +Subject: [PATCH 13/17] fix building on GNU/kFreeBSD (MXE specific) This patch has been taken from: @@ -80645,10 +80644,10 @@ index e914ede..d4d06c8 100644 1.8.1.4 -From 07cdc269228ef8a728392ce7eb973dda16507c08 Mon Sep 17 00:00:00 2001 +From 7dda90d3a9e0bb86bea079a225e245f031d2de36 Mon Sep 17 00:00:00 2001 From: Tony Theodore <tonyt@logyst.com> Date: Thu, 1 Sep 2011 13:49:47 +0200 -Subject: [PATCH 14/15] fix missing platform when building on GNU/kFreeBSD (MXE +Subject: [PATCH 14/17] fix missing platform when building on GNU/kFreeBSD (MXE specific) This patch is inspired by: @@ -80676,10 +80675,10 @@ index e54782e..707f55a 100755 1.8.1.4 -From 9be5f8ccf1d4664f9b799696c5c343be65bde5d4 Mon Sep 17 00:00:00 2001 +From 9c9244e24c767378429c70b6b85198fd8e91718f Mon Sep 17 00:00:00 2001 From: Tony Theodore <tonyt@logyst.com> Date: Thu, 1 Sep 2011 13:51:50 +0200 -Subject: [PATCH 15/15] fix building on dragonfly (MXE specific) +Subject: [PATCH 15/17] fix building on dragonfly (MXE specific) This patch is inspired by: http://cvsweb.NetBSD.org/bsdweb.cgi/pkgsrc/x11/qt4-libs/Makefile.common?rev=1.27&content-type=text/x-cvsweb-markup @@ -80702,3 +80701,56 @@ index 707f55a..8c48f51 100755 -- 1.8.1.4 + +From 780cdd78482a95a44ae204588577e150e8c34ef3 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Sat, 17 Aug 2013 20:34:36 +0200 +Subject: [PATCH 16/17] libmng 2 config.test compatibility + +Change-Id: I6de90a0f51087c7927bd978f605f4960d3f8ee87 + +diff --git a/config.tests/unix/libmng/libmng.cpp b/config.tests/unix/libmng/libmng.cpp +index 0fbe554..2559132 100644 +--- a/config.tests/unix/libmng/libmng.cpp ++++ b/config.tests/unix/libmng/libmng.cpp +@@ -46,9 +46,11 @@ int main(int, char **) + mng_handle hMNG; + mng_cleanup(&hMNG); + ++#ifdef MNG_VERSION_MAJOR + #if MNG_VERSION_MAJOR < 1 || (MNG_VERSION_MAJOR == 1 && MNG_VERSION_MINOR == 0 && MNG_VERSION_RELEASE < 9) + #error System libmng version is less than 1.0.9; using built-in version instead. + #endif ++#endif + + return 0; + } +-- +1.8.1.4 + + +From 1b3fcce36a1301406bf35507352de7205e49158a Mon Sep 17 00:00:00 2001 +From: Tony Theodore <tonyt@logyst.com> +Date: Sat, 19 Oct 2013 19:37:30 +0200 +Subject: [PATCH 17/17] mingw-w64 compatibility + +taken from https://raw.github.com/ant32/pkgbuild/master/mingw-w64-qt4/qt-include-intrin-h-on-mingw-w64.patch + +Change-Id: I0f49c7f9d280dfacc33870643d39909cf0917d79 + +diff --git a/src/corelib/tools/qsimd.cpp b/src/corelib/tools/qsimd.cpp +index 540b615..dc95ac9 100644 +--- a/src/corelib/tools/qsimd.cpp ++++ b/src/corelib/tools/qsimd.cpp +@@ -47,7 +47,7 @@ + #include <windows.h> + #endif + +-#if defined(Q_OS_WIN64) && !defined(Q_CC_GNU) ++#if defined(Q_OS_WIN64) + #include <intrin.h> + #endif + +-- +1.8.1.4 + @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 745f9ebf091696c0d5403ce691dc28c039d77b9e $(PKG)_SUBDIR := $(PKG)-everywhere-opensource-src-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-everywhere-opensource-src-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://download.qt-project.org/official_releases/qt/4.8/$($(PKG)_VERSION)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc libodbc++ postgresql freetds openssl zlib libpng jpeg libmng tiff sqlite dbus +$(PKG)_DEPS := gcc postgresql freetds openssl zlib libpng jpeg libmng tiff sqlite dbus define $(PKG)_UPDATE $(WGET) -q -O- 'http://qt.gitorious.org/qt/qt/commits' | \ @@ -84,4 +84,16 @@ define $(PKG)_BUILD cd '$(1)/test-qt' && '$(PREFIX)/$(TARGET)/qt/bin/qmake' '$(PWD)/$(2).pro' $(MAKE) -C '$(1)/test-qt' -j '$(JOBS)' $(INSTALL) -m755 '$(1)/test-qt/release/test-qt.exe' '$(PREFIX)/$(TARGET)/bin/' + + # copy pkg-config files to standard directory + cp '$(PREFIX)/$(TARGET)'/qt/lib/pkgconfig/* '$(PREFIX)/$(TARGET)'/lib/pkgconfig/ + + # build test the manual way + mkdir '$(1)/test-$(PKG)-pkgconfig' + '$(PREFIX)/$(TARGET)/qt/bin/uic' -o '$(1)/test-$(PKG)-pkgconfig/ui_qt-test.h' '$(TOP_DIR)/src/qt-test.ui' + '$(TARGET)-g++' \ + -W -Wall -Werror -std=c++0x -pedantic \ + '$(TOP_DIR)/src/qt-test.cpp' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG)-pkgconfig.exe' \ + -I'$(1)/test-$(PKG)-pkgconfig' \ + `'$(TARGET)-pkg-config' QtGui --cflags --libs` endef diff --git a/src/qtactiveqt-1.patch b/src/qtactiveqt-1.patch index e6f7108..dc7c512 100644 --- a/src/qtactiveqt-1.patch +++ b/src/qtactiveqt-1.patch @@ -1,7 +1,7 @@ This file is part of MXE. See index.html for further information. -From 8bf1da19f45922259b93d689240e73c147fe2426 Mon Sep 17 00:00:00 2001 +From 4e320610c64732d1ef616d823eba9ce5d714fc4c Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Sat, 18 May 2013 15:28:33 +0200 Subject: [PATCH] Revert "idc is a host tool" @@ -19,5 +19,5 @@ index b9d8dee..05a592a 100644 SOURCES = main.cpp -- -1.8.1.4 +1.8.4 diff --git a/src/qtactiveqt.mk b/src/qtactiveqt.mk index 38904f1..44330ce 100644 --- a/src/qtactiveqt.mk +++ b/src/qtactiveqt.mk @@ -3,11 +3,11 @@ PKG := qtactiveqt $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 2ad59c7b4924c870f35fdc4abe352aa6db6278ae -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 56d1017d0afc02dfafbdc8ade3def4f845f7e481 +$(PKG)_SUBDIR = $(subst qtbase,qtactiveqt,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtactiveqt,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtactiveqt,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qtbase-1-cherrypicks.patch b/src/qtbase-1-cherrypicks.patch deleted file mode 100644 index 5b7c548..0000000 --- a/src/qtbase-1-cherrypicks.patch +++ /dev/null @@ -1,88 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -From 0fea27fabd57150874b80deacdf9f12c4a1d5172 Mon Sep 17 00:00:00 2001 -From: Mark Brand <mabrand@mabrand.nl> -Date: Tue, 26 Feb 2013 13:23:33 +0100 -Subject: [PATCH 1/3] use pkg-config for freetype - -Change-Id: Id2f78ed9dbdcacd570eb25982cbd700d0437542a - -diff --git a/src/platformsupport/fontdatabases/basic/basic.pri b/src/platformsupport/fontdatabases/basic/basic.pri -index 88be809..8fc19d2 100644 ---- a/src/platformsupport/fontdatabases/basic/basic.pri -+++ b/src/platformsupport/fontdatabases/basic/basic.pri -@@ -82,5 +82,7 @@ contains(QT_CONFIG, freetype) { - } else:contains(QT_CONFIG, system-freetype) { - # pull in the proper freetype2 include directory - include($$QT_SOURCE_TREE/config.tests/unix/freetype/freetype.pri) -+ CONFIG += link_pkgconfig -+ PKGCONFIG += freetype2 - } - --- -1.8.1.4 - - -From 7d17dc925a6d038be6689f2bd01dfe6a5af2f91d Mon Sep 17 00:00:00 2001 -From: Mark Brand <mabrand@mabrand.nl> -Date: Sat, 22 Dec 2012 17:45:34 +0100 -Subject: [PATCH 2/3] WIP: qmake writeFile(): work around concurrent - QDir::mkpath() failure - -This actually happened when building qtimageformats with make -j4. -Failure in mkspecs/features/qt_plugin.prf: - write_file($$MODULE_PRI, MODULE_PRI_CONT)|error("Aborting.") with make -j4. - -Change-Id: Ibc685f613d721e178e6aff408905d77b0ce1740a - -diff --git a/qmake/library/qmakebuiltins.cpp b/qmake/library/qmakebuiltins.cpp -index be0d8ea..6306235 100644 ---- a/qmake/library/qmakebuiltins.cpp -+++ b/qmake/library/qmakebuiltins.cpp -@@ -310,9 +310,17 @@ QMakeEvaluator::writeFile(const QString &ctx, const QString &fn, QIODevice::Open - { - QFileInfo qfi(fn); - if (!QDir::current().mkpath(qfi.path())) { -- evalError(fL1S("Cannot create %1directory %2.") -- .arg(ctx, QDir::toNativeSeparators(qfi.path()))); -- return ReturnFalse; -+ // could have failed due to concurrent mkpath attempt -+#ifdef Q_OS_WIN -+ Sleep(1000); -+#else -+ sleep(1); -+#endif -+ if (!qfi.dir().exists()) { -+ evalError(fL1S("Cannot create %1directory %2.") -+ .arg(ctx, QDir::toNativeSeparators(qfi.path()))); -+ return ReturnFalse; -+ } - } - QString errStr; - if (!doWriteFile(qfi.filePath(), mode, contents, &errStr)) { --- -1.8.1.4 - - -From f758fbacac30a7c4b5e44fb6d5cbe16383d5d269 Mon Sep 17 00:00:00 2001 -From: Mark Brand <mabrand@mabrand.nl> -Date: Sat, 18 May 2013 23:07:46 +0200 -Subject: [PATCH 3/3] use pkgconfig for icu detection (MXE specific) - -Change-Id: I874171361fec812cb5a5a56e4d8d90a630be3bf3 - -diff --git a/config.tests/unix/icu/icu.pro b/config.tests/unix/icu/icu.pro -index 8e58334..1d66c16 100644 ---- a/config.tests/unix/icu/icu.pro -+++ b/config.tests/unix/icu/icu.pro -@@ -1,4 +1,4 @@ - SOURCES = icu.cpp - CONFIG -= qt dylib app_bundle --unix:LIBS += -licuuc -licui18n --win32:LIBS += -licuin -+CONFIG += link_pkgconfig -+PKGCONFIG += icu-i18n --- -1.8.1.4 - diff --git a/src/qtbase-1.patch b/src/qtbase-1.patch new file mode 100644 index 0000000..6c2d62d --- /dev/null +++ b/src/qtbase-1.patch @@ -0,0 +1,1070 @@ +This file is part of MXE. +See index.html for further information. + +From e903b5cddaaa606300292ad2cf26c2b6ee111cdd Mon Sep 17 00:00:00 2001 +From: Simon Hausmann <simon.hausmann@digia.com> +Date: Tue, 26 Nov 2013 10:45:53 +0100 +Subject: [PATCH 01/17] Fix for co-existence of QtDeclarative and QtQml + +As a follow-up to commit 2f87fde9bb4bad6787101c0d135419b350b201a5, we also need +to change "hack" in the QGraphicsItem and QWidget destructor for early item +destruction to support the _qml1 variant of the QObject destroyed callback. + +Task-number: QTBUG-35006 + +Change-Id: I65e37b1e9ddd8d14267aaba024408611b8cd3d77 +Reviewed-by: Lars Knoll <lars.knoll@digia.com> + +diff --git a/src/widgets/graphicsview/qgraphicsitem.cpp b/src/widgets/graphicsview/qgraphicsitem.cpp +index 7cab132..fffc805 100644 +--- a/src/widgets/graphicsview/qgraphicsitem.cpp ++++ b/src/widgets/graphicsview/qgraphicsitem.cpp +@@ -1414,7 +1414,10 @@ QGraphicsItem::~QGraphicsItem() + QObjectPrivate *p = QObjectPrivate::get(o); + p->wasDeleted = true; + if (p->declarativeData) { +- QAbstractDeclarativeData::destroyed(p->declarativeData, o); ++ if (QAbstractDeclarativeData::destroyed) ++ QAbstractDeclarativeData::destroyed(p->declarativeData, o); ++ if (QAbstractDeclarativeData::destroyed_qml1) ++ QAbstractDeclarativeData::destroyed_qml1(p->declarativeData, o); + p->declarativeData = 0; + } + } +diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp +index 1da0be9..421ce57 100644 +--- a/src/widgets/kernel/qwidget.cpp ++++ b/src/widgets/kernel/qwidget.cpp +@@ -1464,7 +1464,10 @@ QWidget::~QWidget() + } + + if (d->declarativeData) { +- QAbstractDeclarativeData::destroyed(d->declarativeData, this); ++ if (QAbstractDeclarativeData::destroyed) ++ QAbstractDeclarativeData::destroyed(d->declarativeData, this); ++ if (QAbstractDeclarativeData::destroyed_qml1) ++ QAbstractDeclarativeData::destroyed_qml1(d->declarativeData, this); + d->declarativeData = 0; // don't activate again in ~QObject + } + +-- +1.8.4 + + +From 939a001c3ac33ebf801d2594ac9073da28d09a46 Mon Sep 17 00:00:00 2001 +From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> +Date: Tue, 26 Nov 2013 10:13:04 +0100 +Subject: [PATCH 02/17] Android: Remove invalid error message + +All usage of context menus prints out an error message because +onContextMenuClosed() is called more than once. We just return +silently instead if the method is called after the menu has +already been closed. + +Change-Id: Ifa27ed42d188fdf670f09c4b1450b9fec0d5941f +Reviewed-by: BogDan Vatra <bogdan@kde.org> + +diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java +index 3dcffeb..3bcd6ea 100644 +--- a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java ++++ b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java +@@ -858,10 +858,8 @@ public class QtActivityDelegate + + public void onContextMenuClosed(Menu menu) + { +- if (!m_contextMenuVisible) { +- Log.e(QtNative.QtTAG, "invalid onContextMenuClosed call"); ++ if (!m_contextMenuVisible) + return; +- } + m_contextMenuVisible = false; + QtNative.onContextMenuClosed(menu); + } +-- +1.8.4 + + +From 08f3177fdfc9aefbd4232dcd1529b537b2ca9402 Mon Sep 17 00:00:00 2001 +From: Gabriel de Dietrich <gabriel.dedietrich@digia.com> +Date: Mon, 25 Nov 2013 13:41:49 +0100 +Subject: [PATCH 03/17] CoreWLan: Fix potential unhandled exception assert + +-[QNSListener notificationHandler:] was declared as not taking any parameter, +but used as taking a single NSNotification. This would lead to an 'unrecognized +selector' exception raised by Cocoa. + +Task-number: QTBUG-26844 +Change-Id: I56d03a7738c2a1b9dcf3cdecc696b01e65d7b233 +Reviewed-by: Liang Qi <liang.qi@digia.com> + +diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.mm b/src/plugins/bearer/corewlan/qcorewlanengine.mm +index b0ed407..dc29203 100644 +--- a/src/plugins/bearer/corewlan/qcorewlanengine.mm ++++ b/src/plugins/bearer/corewlan/qcorewlanengine.mm +@@ -71,7 +71,7 @@ extern "C" { // Otherwise it won't find CWKeychain* symbols at link time + QCoreWlanEngine *engine; + NSLock *locker; + } +-- (void)notificationHandler;//:(NSNotification *)notification; ++- (void)notificationHandler:(NSNotification *)notification; + - (void)remove; + - (void)setEngine:(QCoreWlanEngine *)coreEngine; + - (QCoreWlanEngine *)engine; +@@ -120,8 +120,9 @@ extern "C" { // Otherwise it won't find CWKeychain* symbols at link time + [locker unlock]; + } + +-- (void)notificationHandler//:(NSNotification *)notification ++- (void)notificationHandler:(NSNotification *)notification + { ++ Q_UNUSED(notification); + engine->requestUpdate(); + } + @end +diff --git a/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm b/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm +index 1b95ae2..7044e96 100644 +--- a/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm ++++ b/src/plugins/bearer/corewlan/qcorewlanengine_10_6.mm +@@ -48,7 +48,7 @@ + QCoreWlanEngine *engine; + NSLock *locker; + } +-- (void)notificationHandler;//:(NSNotification *)notification; ++- (void)notificationHandler:(NSNotification *)notification; + - (void)remove; + - (void)setEngine:(QCoreWlanEngine *)coreEngine; + - (QCoreWlanEngine *)engine; +@@ -97,8 +97,9 @@ + [locker unlock]; + } + +-- (void)notificationHandler//:(NSNotification *)notification ++- (void)notificationHandler:(NSNotification *)notification + { ++ Q_UNUSED(notification); + engine->requestUpdate(); + } + @end +-- +1.8.4 + + +From f03fd0d82a50361c0b89165b3f8d98d66b0a4e16 Mon Sep 17 00:00:00 2001 +From: Stephen Kelly <stephen.kelly@kdab.com> +Date: Tue, 26 Nov 2013 15:06:20 +0100 +Subject: [PATCH 04/17] Remove leading '/' from target paths. + +This is inappropriate on Windows, and breaks non-prefix builds there. + +This is only needed when we calculate a relative path from a sysroot, +so only add it in that case. + +Task-number: QTBUG-34880 +Change-Id: I0e3b3d977a7b56649e4ba0077ac574aabf1dc915 +Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> +Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> + +diff --git a/mkspecs/features/cmake_functions.prf b/mkspecs/features/cmake_functions.prf +index a9b0c86..1e6b05c 100644 +--- a/mkspecs/features/cmake_functions.prf ++++ b/mkspecs/features/cmake_functions.prf +@@ -27,9 +27,9 @@ defineReplace(cmakeModuleList) { + + defineReplace(cmakeTargetPath) { + SYSR = $$[QT_SYSROOT] +- !isEmpty(SYSR): path = $$relative_path($$1, $$[QT_SYSROOT]) ++ !isEmpty(SYSR): path = /$$relative_path($$1, $$[QT_SYSROOT]) + else: path = $$1 +- return($$clean_path(/$$path)) ++ return($$clean_path($$path)) + } + + defineReplace(cmakeTargetPaths) { +-- +1.8.4 + + +From 94c17dce04c7726afbdd6ac67c569eedc629a81a Mon Sep 17 00:00:00 2001 +From: Frank Osterfeld <frank.osterfeld.qnx@kdab.com> +Date: Fri, 22 Nov 2013 10:43:49 +0100 +Subject: [PATCH 05/17] QNX: Fix retrieving the window group name + +The code assumes that there is a root window, and crashed +otherwise. + +Task-number: QTBUG-35121 +Change-Id: Idbf0e0bfc03cd427f0aab81db88b34fe94228c81 +Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> + +diff --git a/src/plugins/platforms/qnx/qqnxnativeinterface.cpp b/src/plugins/platforms/qnx/qqnxnativeinterface.cpp +index 8958a5c..24af5c2 100644 +--- a/src/plugins/platforms/qnx/qqnxnativeinterface.cpp ++++ b/src/plugins/platforms/qnx/qqnxnativeinterface.cpp +@@ -52,11 +52,13 @@ QT_BEGIN_NAMESPACE + void *QQnxNativeInterface::nativeResourceForWindow(const QByteArray &resource, QWindow *window) + { + if (resource == "windowGroup" && window && window->screen()) { +- const QQnxScreen * const screen = static_cast<QQnxScreen *>(window->screen()->handle()); ++ QQnxScreen * const screen = static_cast<QQnxScreen *>(window->screen()->handle()); + if (screen) { ++ screen_window_t screenWindow = reinterpret_cast<screen_window_t>(window->winId()); ++ QQnxWindow *qnxWindow = screen->findWindow(screenWindow); + // We can't just call data() instead of constData() here, since that would detach + // and the lifetime of the char * would not be long enough. Therefore the const_cast. +- return const_cast<char *>(screen->rootWindow()->groupName().constData()); ++ return qnxWindow ? const_cast<char *>(qnxWindow->groupName().constData()) : 0; + } + } + +-- +1.8.4 + + +From 4fbe50e77a8d24d42581cdeabd1e93cb993b0d8d Mon Sep 17 00:00:00 2001 +From: Yoann Lopes <yoann.lopes@digia.com> +Date: Fri, 22 Nov 2013 18:45:49 +0100 +Subject: [PATCH 06/17] Revert "Store the font's scalability in QFontEngine." + +This reverts commit 65b12fbdb13d34c61bcadd5cc8fd6ee28a8dfafd. + +QFontEngine is not always loaded from QFontDatabase, resulting in +the flag not being set. + +Change-Id: I39bc5bd4a8dea153d191cfc55f4324195f75f64c +Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> +Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> +Reviewed-by: Lars Knoll <lars.knoll@digia.com> + +diff --git a/src/gui/text/qfontdatabase_qpa.cpp b/src/gui/text/qfontdatabase_qpa.cpp +index fddbb11..6c0be95 100644 +--- a/src/gui/text/qfontdatabase_qpa.cpp ++++ b/src/gui/text/qfontdatabase_qpa.cpp +@@ -184,7 +184,6 @@ QFontEngine *loadSingleEngine(int script, + if (!engine) { + engine = pfdb->fontEngine(def, QChar::Script(script), size->handle); + if (engine) { +- engine->smoothScalable = style->smoothScalable; + QFontCache::Key key(def,script); + QFontCache::instance()->instance()->insertEngine(key,engine); + } +diff --git a/src/gui/text/qfontengine.cpp b/src/gui/text/qfontengine.cpp +index 7d1afbb..303c85c 100644 +--- a/src/gui/text/qfontengine.cpp ++++ b/src/gui/text/qfontengine.cpp +@@ -208,8 +208,7 @@ Q_AUTOTEST_EXPORT QList<QFontEngine *> QFontEngine_stopCollectingEngines() + QFontEngine::QFontEngine() + : ref(0), + font_(0), font_destroy_func(0), +- face_(0), face_destroy_func(0), +- smoothScalable(false) ++ face_(0), face_destroy_func(0) + { + cache_cost = 0; + fsType = 0; +diff --git a/src/gui/text/qfontengine_p.h b/src/gui/text/qfontengine_p.h +index 07be498..c181d61 100644 +--- a/src/gui/text/qfontengine_p.h ++++ b/src/gui/text/qfontengine_p.h +@@ -302,8 +302,6 @@ public: + + inline QVariant userData() const { return m_userData; } + +- bool smoothScalable; +- + protected: + QFixed lastRightBearing(const QGlyphLayout &glyphs, bool round = false); + +-- +1.8.4 + + +From 82a2d28d841c7f59fa76fae6a67e1712a5fb4740 Mon Sep 17 00:00:00 2001 +From: Stephen Kelly <stephen.kelly@kdab.com> +Date: Wed, 27 Nov 2013 12:22:54 +0100 +Subject: [PATCH 07/17] CMake: Parse the output of new CMake versions. + +As of CMake 3.0, the output of `cmake --version` now has a second line +showing that it is maintained by Kitware. Change the version parsing to +look only at the first line of output. + +Change-Id: I347de4c376e0bde25a43a38d59587d9b63f6b43a +Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> + +diff --git a/mkspecs/features/ctest_testcase_common.prf b/mkspecs/features/ctest_testcase_common.prf +index 118eed1..a9461eb 100644 +--- a/mkspecs/features/ctest_testcase_common.prf ++++ b/mkspecs/features/ctest_testcase_common.prf +@@ -1,10 +1,11 @@ + + win32 { +- CMAKE_VERSION = $$system(cmake --version 2>NUL) ++ CMAKE_VERSION = $$system(cmake --version 2>NUL, lines) + } else { +- CMAKE_VERSION = $$system(cmake --version 2>/dev/null) ++ CMAKE_VERSION = $$system(cmake --version 2>/dev/null, lines) + } + ++CMAKE_VERSION = $$member(CMAKE_VERSION, 0, 0) + + check.commands = + QMAKE_EXTRA_TARGETS *= check +-- +1.8.4 + + +From 7c029e83a3e5058f7b82efd0235e766952357ffd Mon Sep 17 00:00:00 2001 +From: Simon Hausmann <simon.hausmann@digia.com> +Date: Thu, 28 Nov 2013 11:00:15 +0100 +Subject: [PATCH 08/17] Fix invalid memory read when shutting down QML + applications + +As the last line in the QObject destructor, we call setParentHelper(0) to +remove ourselves from the parent. In the process of that we also initiate the +QML parentChanged callback. The first thing that parentChanged callback used to +do (but now does it too late, after 26350b5ceafa0ade1328037f6234a7d288eb8f48 in +qtdeclarative) is to check if the object was deleted and then return. We could +re-introduce the check there, but I think it's cleaner to not bother calling +the callback on a dead object in the first place. + +Change-Id: Ia4d43b65a9b3744a451b4c312a2d6f9c0e3b67dc +Reviewed-by: Lars Knoll <lars.knoll@digia.com> + +diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp +index e062a38..f8664ba 100644 +--- a/src/corelib/kernel/qobject.cpp ++++ b/src/corelib/kernel/qobject.cpp +@@ -1876,7 +1876,7 @@ void QObjectPrivate::setParent_helper(QObject *o) + } + } + } +- if (!isDeletingChildren && declarativeData && QAbstractDeclarativeData::parentChanged) ++ if (!wasDeleted && !isDeletingChildren && declarativeData && QAbstractDeclarativeData::parentChanged) + QAbstractDeclarativeData::parentChanged(declarativeData, q, o); + } + +diff --git a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +index ece88d4..f1e0451 100644 +--- a/tests/auto/corelib/kernel/qobject/tst_qobject.cpp ++++ b/tests/auto/corelib/kernel/qobject/tst_qobject.cpp +@@ -152,6 +152,7 @@ private slots: + void connectBase(); + void qmlConnect(); + void exceptions(); ++ void noDeclarativeParentChangedOnDestruction(); + }; + + struct QObjectCreatedOnShutdown +@@ -6233,6 +6234,43 @@ void tst_QObject::exceptions() + #endif + } + ++#ifdef QT_BUILD_INTERNAL ++static bool parentChangeCalled = false; ++ ++static void testParentChanged(QAbstractDeclarativeData *, QObject *, QObject *) ++{ ++ parentChangeCalled = true; ++} ++#endif ++ ++void tst_QObject::noDeclarativeParentChangedOnDestruction() ++{ ++#ifdef QT_BUILD_INTERNAL ++ typedef void (*ParentChangedCallback)(QAbstractDeclarativeData *, QObject *, QObject *); ++ QScopedValueRollback<ParentChangedCallback> rollback(QAbstractDeclarativeData::parentChanged); ++ QAbstractDeclarativeData::parentChanged = testParentChanged; ++ ++ QObject *parent = new QObject; ++ QObject *child = new QObject; ++ ++ QAbstractDeclarativeData dummy; ++ QObjectPrivate::get(child)->declarativeData = &dummy; ++ ++ parentChangeCalled = false; ++ child->setParent(parent); ++ ++ QVERIFY(parentChangeCalled); ++ parentChangeCalled = false; ++ ++ delete child; ++ QVERIFY(!parentChangeCalled); ++ ++ delete parent; ++#else ++ QSKIP("Needs QT_BUILD_INTERNAL"); ++#endif ++} ++ + // Test for QtPrivate::HasQ_OBJECT_Macro + Q_STATIC_ASSERT(QtPrivate::HasQ_OBJECT_Macro<tst_QObject>::Value); + Q_STATIC_ASSERT(!QtPrivate::HasQ_OBJECT_Macro<SiblingDeleter>::Value); +-- +1.8.4 + + +From bedc5a3ae268594100b5e0eb8f35c0ce2b95ee96 Mon Sep 17 00:00:00 2001 +From: Marc Mutz <marc.mutz@kdab.com> +Date: Tue, 26 Nov 2013 12:27:45 +0100 +Subject: [PATCH 09/17] Update ChangeLog for 5.2.0 [QtWidgets II] + +Second batch of changes. + +Change-Id: I5b3add1df19bcad195f8b9286337de9fe926337c +Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> + +diff --git a/dist/changes-5.2.0 b/dist/changes-5.2.0 +index f513d64..30cd288 100644 +--- a/dist/changes-5.2.0 ++++ b/dist/changes-5.2.0 +@@ -48,6 +48,10 @@ information about a particular change. + * QUrl now normalizes the path given in setPath, removing ./ and ../ and + duplicate slashes. + ++ - QWheelEvent has gained a "phase" attribute and may now be sent with ++ zero delta() in order to indicate beginning and end of transient ++ scrolling. ++ + **************************************************************************** + * Library * + **************************************************************************** +@@ -353,12 +357,24 @@ Changes in Qt 5.2.0 + QtWidgets + --------- + ++ - Added class QKeySequenceEdit. ++ - Added QMaxCocoaViewContainer and QMacNativeWidget classes. ++ - [QTBUG-1016] Added API to control tool tip timing via: ++ * new QToolTip::showTip() overload ++ * QWidget::toolTipDuration() property. ++ * QStyle::SH_ToolTip_WakeUpDelay and SH_ToolTip_FallAsleepDelay ++ style hints. + - [QTBUG-30255] Fixed a bug where spans across empty cells in a grid + layout got broken. ++ - [QTBUG-31569] WA_QuitOnClose now works even if there are other ++ windows that don't have it set. + - [QTBUG-32788] Properly handles Qt::WidgetWithChildrenShortcut + shortcuts in MDI subwindows now. + - [QTBUG-33078] QWidget::setWindowOpacity() now works when called + before QWidget::show(). ++ - [QTBUG-33104] Fixed a bug where layout items with a Preferred size ++ policy would be treated as fixed size, if mixed with Expanding ++ items having maximumSize set. + - [QTBUG-33247] Changed accessible trees and tables to always expose + hidden headers, instead of only exposing the visible headers. + - [QTBUG-34007] Fixed a crash in tablet support. +@@ -384,18 +400,26 @@ QtWidgets + overriding viewportSizeHint() needs to be recompiled against 5.2 for + this feature to work correctly. + ++ - QButtonGroup: ++ * [QTBUG-14857] Added buttonToggled() signals. ++ + - QColorDialog: + * Added a web color QLineEdit. + * [QTBUG-14332] Added a screen color picker button. + * [QTBUG-31998] Does no longer create widgets when using the + platform dialog. ++ * [QTBUG-32054] Fixed a bug with keyboard navigation. + + - QComboBox: ++ * [QTBUG-31146] Fixed selection of items with identical text in ++ popup completion. + * Added currentData() convenience function which allows to retrieve + the user data set for the current item. + + - QCompleter: + * [QTBUG-3414] Added filterMode property. ++ * The activated() signal now passes invalid indexes instead of ++ random bogus ones when falling back to the completion prefix. + + - QDesktopWidget: + * [QTBUG-32567] Fixed emission of workAreaResized() signal. +@@ -434,10 +458,16 @@ QtWidgets + * [QTBUG-33039] Does no longer create widgets when using the + platform dialog. + ++ - QFontComboBox: ++ * [QTBUG-1573] Made QFontComboBox locale-sensitive. ++ + - QFontDialog: + * Now has finer-grained control over the types of fonts listed, + similar to what QFontComboBox already had. + ++ - QGestureManager ++ * Now supports Mac OS X native gestures. ++ + - QGraphicsView etc + * Fixed a crash in QGraphicsProxyWidget. + * [QTBUG-8061] Allow handling of mouseDoubleClickEvent in +@@ -446,16 +476,30 @@ QtWidgets + Qt::{Contains,Intersets}ItemBoundingRect with items that contain + the point in the bounding rectangle, but not their (custom) + shape. ++ * [QTBUG-29945] Fixed drop-shadow and blur effects when using a ++ QGLWidget viewport. ++ ++ - QGroupBox: ++ * [QTBUG-33610] The check indicator of a checkable group box is no ++ longer clipped when using a small title font. + + - QHeaderView: ++ * Reduced memory usage by 33%. + * [QTBUG-4346] A maximumSize for sections has been introduced. The + maximum section size is by default the largest possible section + size which in Qt 5.2 has been limited to 1048575 pixels. ++ * [QTBUG-32203] Fixed a painting bug involving hidden and reordered ++ sections. + + - QInputDialog: + * Added getMultiLineText static method. + ++ - QLayout: ++ * Added replaceWidget() function. ++ + - QLineEdit: ++ * [QTBUG-32061] The cursor is now positioned correctly in an empty ++ line edit with placeholder text. + * Keep placeholderText visible when focused, until text is added. + * Context-menu actions now have icons. + * Made it possible to add side widgets. +@@ -467,28 +511,59 @@ QtWidgets + no longer loses the icon. Also fixed a bug where under certain + conditions code overriding QAbstractItemView::viewOptions() would + not be called. ++ * [QTBUG-21433] Fixed content size calculation when either ++ horizontal or vertical scroll bar policy is always off. ++ ++ - QMacStyle: ++ * [QTBUG-31668] Fixed a case where multiple auto-default button ++ animations were running in parallel on OS X ++ ++ - QMainWindow: ++ * Added takeCentalWidget() function. ++ ++ - QMenu: ++ * Added QMenu::toNSMenu() conversion function (Mac only) ++ * Added QMenu::setAsDockMenu() and qt_mac_set_doc_menu(QMenu *menu) ++ functions (Mac only). ++ * [QTBUG-31664] Moving the mouse over a menu separator now closes ++ any open sub menus. + + - QMenuBar: + * [QTBUG-32807] Menus now close again on second click. ++ * Added QMenuBar::toNSMenu() conversion function (Mac only) + + - QMessageBox: + * May use native message boxes on some platforms now. ++ * setDetailedText() now works after show(). ++ * [QTBUG-2450] Added setCheckBox() function. + * [QTBUG-6731] It is now possible to select some or all text from a + QMessageBox and copy it to the clipboard. + ++ - QScrollBar: ++ * Transient scrollbars are now properly shown when starting ++ two-finger scrolling on OS X. ++ + - QSizePolicy: + * Added a retainSizeWhenHidden attribute. + + - QSpinBox: + * Values can now be displayed in different bases + (cf. displayIntegerBase property) +- * [QTBUG-31602] Size calculation will now be fixed when stylesheets +- are used. ++ * [QTBUG-31602][QTBUG-34305] Fixed size calculation when ++ stylesheets are used. ++ ++ - QSplashScreen: ++ * Added message(), a getter for the currently displayed message. + + - QSplitter: + * Now gets the default value of opaqueResize property from (new) + QStyle::SH_Splitter_OpaqueResize styleHint. + ++ - QStyle: ++ * Added SH_ToolTip_WakeUpDelay and SH_ToolTip_FallAsleepDelay. ++ * Fixed SH_ItemView_ActivateItemOnSingleClick not being retrieved ++ correctly from the platform theme. ++ + - QSystemTrayIcon: + * [QTBUG-31762] Fixed position of system tray icon on Linux/X11 + (except Unity). +@@ -505,14 +580,26 @@ QtWidgets + * Added placeholderText akin to QLineEdit. + * Context-menu actions now have icons. + ++ - QToolTip: ++ * Added new showText() overload taking a duration. ++ + - QTreeView: +- * QTreeView now has setTreePosition to allow the treestructure to +- show data from other columns than logicalindex zero. ++ * Added setTreePosition() function. ++ ++ - QWidget: ++ * Added window{Title,Icon,IconText}Changed() signals. ++ * Added toolTipDuration property. + + - QWindowContainer: + * [QTBUG-32177] Sets active window correctly now. ++ * [QTBUG-34138] Will not create native child widgets any more. ++ ++ - QWindowsVistaStyle: ++ * [QTBUG-26503] Does no longer draw inapplicable scroll bar ++ grippers on Windows 8. + + - QWizard: ++ * [QTBUG-26722] The default background pixmap works again on OS X. + * [QTBUG-29924] Gave all buttons an objectName(). + + **************************************************************************** +@@ -537,6 +624,7 @@ Android + OS X + ---- + ++ - Added QMaxCocoaViewContainer and QMacNativeWidget classes. + - Qt for OS X is now identified by the macro Q_OS_OSX. This complements the + existing Q_OS_DARWIN macro (which identifies the open source kernel and + could identify non-Apple products) and Q_OS_MAC, which is defined for +@@ -547,6 +635,17 @@ OS X + supported until official announcement by the Qt Project. + - Added a number of functions to QtCore to convert to and from + CFString/NSString and QString, CFURL/NSURL and QUrl. ++ - QGestureManager now supports Mac OS X native gestures. ++ - Added QMenu::setAsDockMenu(), QMenu(Bar)::toNSMenu(), ++ qt_mac_set_doc_menu() functions. ++ - [QTBUG-26722] The QWizard default background pixmap works again. ++ ++BlackBerry ++---------- ++ ++ - Cover windows (aka active frames) are now supported. Cover windows must ++ have the Qt::CoverWindow flag set. They are shown when the application ++ is minimized. + + Windows + ------- +-- +1.8.4 + + +From c5b19f252188a01dd7b12090f4776420e3714000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= <tor.arne.vestbo@digia.com> +Date: Thu, 28 Nov 2013 15:33:06 +0100 +Subject: [PATCH 10/17] iOS: Forward [UIApplicationDelegate handleOpenURL:] to + QDesktopServices + +The user may use QDesktopServices::setUrlHandler() in combination with +the appropriate Info.plist keys (CFBundleURLTypes, CFBundleURLSchemes) +to react to URL requests from other applications. + +This is among other things useful for handling OAuth authentication from +applications such as Dropbox. See: + + https://www.dropbox.com/developers/core/start/ios + +We protect against recursive URL opening, but an application may still +redirect a request to open a URL by opening another URL, eg a website. + +Task-number: QTBUG-35201 +Change-Id: I9f1d246206c5594b1b65bb11fa98c6bcdefc443e +Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> + +diff --git a/src/plugins/platforms/ios/qiosapplicationdelegate.mm b/src/plugins/platforms/ios/qiosapplicationdelegate.mm +index cf702c8..9cf1047 100644 +--- a/src/plugins/platforms/ios/qiosapplicationdelegate.mm ++++ b/src/plugins/platforms/ios/qiosapplicationdelegate.mm +@@ -41,9 +41,14 @@ + + #include "qiosapplicationdelegate.h" + ++#include "qiosintegration.h" ++#include "qiosservices.h" + #include "qiosviewcontroller.h" + #include "qioswindow.h" + ++#include <QtGui/private/qguiapplication_p.h> ++#include <qpa/qplatformintegration.h> ++ + #include <QtCore/QtCore> + + @implementation QIOSApplicationDelegate +@@ -82,6 +87,21 @@ + return YES; + } + ++- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation ++{ ++ Q_UNUSED(application); ++ Q_UNUSED(sourceApplication); ++ Q_UNUSED(annotation); ++ ++ if (!QGuiApplication::instance()) ++ return NO; ++ ++ QIOSIntegration *iosIntegration = static_cast<QIOSIntegration *>(QGuiApplicationPrivate::platformIntegration()); ++ QIOSServices *iosServices = static_cast<QIOSServices *>(iosIntegration->services()); ++ ++ return iosServices->handleUrl(QUrl::fromNSURL(url)); ++} ++ + - (void)dealloc + { + [window release]; +diff --git a/src/plugins/platforms/ios/qiosservices.h b/src/plugins/platforms/ios/qiosservices.h +index 692b3a0b..aa39fbb 100644 +--- a/src/plugins/platforms/ios/qiosservices.h ++++ b/src/plugins/platforms/ios/qiosservices.h +@@ -41,6 +41,8 @@ + + #ifndef QIOSSERVICES_H + #define QIOSSERVICES_H ++ ++#include <qurl.h> + #include <qpa/qplatformservices.h> + + QT_BEGIN_NAMESPACE +@@ -50,6 +52,11 @@ class QIOSServices : public QPlatformServices + public: + bool openUrl(const QUrl &url); + bool openDocument(const QUrl &url); ++ ++ bool handleUrl(const QUrl &url); ++ ++private: ++ QUrl m_handlingUrl; + }; + + QT_END_NAMESPACE +diff --git a/src/plugins/platforms/ios/qiosservices.mm b/src/plugins/platforms/ios/qiosservices.mm +index 32203ae..0ac6c59 100644 +--- a/src/plugins/platforms/ios/qiosservices.mm ++++ b/src/plugins/platforms/ios/qiosservices.mm +@@ -42,6 +42,7 @@ + #include "qiosservices.h" + + #include <QtCore/qurl.h> ++#include <QtGui/qdesktopservices.h> + + #import <UIKit/UIApplication.h> + +@@ -49,6 +50,9 @@ QT_BEGIN_NAMESPACE + + bool QIOSServices::openUrl(const QUrl &url) + { ++ if (url == m_handlingUrl) ++ return false; ++ + if (url.scheme().isEmpty()) + return openDocument(url); + +@@ -66,4 +70,19 @@ bool QIOSServices::openDocument(const QUrl &url) + return QPlatformServices::openDocument(url); + } + ++/* Callback from iOS that the application should handle a URL */ ++bool QIOSServices::handleUrl(const QUrl &url) ++{ ++ QUrl previouslyHandling = m_handlingUrl; ++ m_handlingUrl = url; ++ ++ // FIXME: Add platform services callback from QDesktopServices::setUrlHandler ++ // so that we can warn the user if calling setUrlHandler without also setting ++ // up the matching keys in the Info.plist file (CFBundleURLTypes and friends). ++ bool couldHandle = QDesktopServices::openUrl(url); ++ ++ m_handlingUrl = previouslyHandling; ++ return couldHandle; ++} ++ + QT_END_NAMESPACE +-- +1.8.4 + + +From 9b782dca45331c0e0246b8439d5cf007a440afc8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= <tor.arne.vestbo@digia.com> +Date: Wed, 27 Nov 2013 18:20:10 +0100 +Subject: [PATCH 11/17] iOS: Update screen properties when we trigger statusbar + changes on iOS7 + +Ideally we'd have a callback from iOS when this happens, so we can also +react to changes done outside of Qt, but willChangeStatusBarFrame and +friends do not seem to give us what we want. + +Change-Id: I686ce7950395a83c4257372363c773a95c3935ed +Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> + +diff --git a/src/plugins/platforms/ios/qiosscreen.mm b/src/plugins/platforms/ios/qiosscreen.mm +index 57522cb..9641095 100644 +--- a/src/plugins/platforms/ios/qiosscreen.mm ++++ b/src/plugins/platforms/ios/qiosscreen.mm +@@ -189,6 +189,9 @@ void QIOSScreen::updateProperties() + + void QIOSScreen::updateStatusBarVisibility() + { ++ if (!isQtApplication()) ++ return; ++ + QWindow *focusWindow = QGuiApplication::focusWindow(); + + // If we don't have a focus window we leave the status +@@ -199,20 +202,26 @@ void QIOSScreen::updateStatusBarVisibility() + return; + + UIView *view = reinterpret_cast<UIView *>(focusWindow->handle()->winId()); ++ QIOSViewController *viewController = static_cast<QIOSViewController *>(view.viewController); ++ ++ bool currentStatusBarVisibility = [UIApplication sharedApplication].statusBarHidden; ++ if (viewController.prefersStatusBarHidden == currentStatusBarVisibility) ++ return; ++ + #if QT_IOS_PLATFORM_SDK_EQUAL_OR_ABOVE(__IPHONE_7_0) + if (QSysInfo::MacintoshVersion >= QSysInfo::MV_IOS_7_0) { +- [view.viewController setNeedsStatusBarAppearanceUpdate]; ++ [viewController setNeedsStatusBarAppearanceUpdate]; ++ dispatch_async(dispatch_get_main_queue(), ^{ ++ updateProperties(); ++ }); + } else + #endif + { +- bool wasHidden = [UIApplication sharedApplication].statusBarHidden; +- QIOSViewController *viewController = static_cast<QIOSViewController *>(view.viewController); + [[UIApplication sharedApplication] + setStatusBarHidden:[viewController prefersStatusBarHidden] + withAnimation:UIStatusBarAnimationNone]; + +- if ([UIApplication sharedApplication].statusBarHidden != wasHidden) +- updateProperties(); ++ updateProperties(); + } + } + +-- +1.8.4 + + +From 7016ea797a4ceefc8df8a6e13971045a215c5e4c Mon Sep 17 00:00:00 2001 +From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> +Date: Wed, 27 Nov 2013 09:12:08 +0100 +Subject: [PATCH 13/17] Add a few notes to changes-5.2.0 + +Mostly changes for Android. One change in Qt Gui. + +Change-Id: Ifce627b6688702b3a3ae1634bd344eb8331f6caf +Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> +Reviewed-by: BogDan Vatra <bogdan@kde.org> + +diff --git a/dist/changes-5.2.0 b/dist/changes-5.2.0 +index 30cd288..a51cc91 100644 +--- a/dist/changes-5.2.0 ++++ b/dist/changes-5.2.0 +@@ -294,6 +294,9 @@ QtGui + - [QTBUG-27349] Reintroduced command line argument for positioning + windows (-geometry on X11, -qwindowgeometry on other platforms) + ++ - [QTBUG-28832] Fixed regression from Qt 4 when using ++ QTextOption::ShowLineAndParagraphSeparators. ++ + QtNetwork + --------- + +@@ -620,6 +623,40 @@ Android + show the status bar (QWindow::showMaximized()). Use + QWindow::showFullScreen() to hide it. + - Implemented support for accessibility on Android. ++ - Implemented support for native action bar backend for menu bars in ++ Qt Quick Controls and Qt Widgets. ++ - Implemented support for native popup menus and comboboxes in Qt Quick ++ Controls. ++ - Implemented support for native message boxes in Qt Widgets. ++ - Several improvements to handling dialogs and multiple top-level ++ windows in Qt Widgets. ++ - Implemented automatic inclusion of necessary permissions in manifest ++ when linking against Qt Multimedia. ++ - Fixed crash on startup when running on Android 4.4. ++ - Add requirement for Android SDK version 13 or higher for building ++ Qt application. Note that this is for building only. The application ++ can still be targeted for devices with SDK versions 9 and up. ++ - Default to target SDK version 14 to disable overflow button in ++ system navigation. ++ - New module: Qt Android Extras. Contains convenience APIs for using ++ JNI, and will in the future include support for Android-specific ++ features which do not fit in a cross-platform API. ++ - Implemented support for thread-affinity in qrand() functions. ++ - Fixed several problems with predictive text in soft keyboard. ++ - Made several improvements to stability. ++ - Implemented support for camera and low-latency audio in Qt Multimedia. ++ - Fixed driver-specific bugs in text rendering in Qt Quick 2. ++ - Added preference in default manifest for installing applications to ++ external storage if possible. ++ - Fixed delivery of key press event for the Back key. ++ - Fixed race condition when showing a window in full screen which would ++ cause it to not be maximized. ++ - Fixed input method hints. ++ - Made font point sizes compatible with the interpretation of point ++ sizes on iOS to ease sharing code between the two platforms. ++ - Added support for QAmbientTemperatureSensor, QPressureSensor ++ and QProximitySensor to Qt Sensors. ++ - Removed dependency on Qt Widgets in default build of Qt Quick Controls. + + OS X + ---- +-- +1.8.4 + + +From 6c3adb5f966e349f0488c194462e48cc8ddf248e Mon Sep 17 00:00:00 2001 +From: Nico Vertriest <nico.vertriest@digia.com> +Date: Wed, 27 Nov 2013 14:47:26 +0100 +Subject: [PATCH 14/17] Doc: corrected invalid ref. to output iterators +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Task-number: QTBUG-34749 +Change-Id: I7abd504b6081e84a8e67c7957e13d402999e9d38 +Reviewed-by: Martin Smith <martin.smith@digia.com> +Reviewed-by: Topi Reiniö <topi.reinio@digia.com> + +diff --git a/src/corelib/tools/qalgorithms.qdoc b/src/corelib/tools/qalgorithms.qdoc +index cd38947..412b9cf 100644 +--- a/src/corelib/tools/qalgorithms.qdoc ++++ b/src/corelib/tools/qalgorithms.qdoc +@@ -49,9 +49,9 @@ + iterators they accept. For example, qFill() accepts two + \l {forward iterators}. The iterator types required are specified + for each algorithm. If an iterator of the wrong type is passed (for +- example, if QList::ConstIterator is passed as an \l {output +- iterator}), you will always get a compiler error, although not +- necessarily a very informative one. ++ example, if QList::ConstIterator is passed as an ++ \l {Output Iterators}{output iterator}), you will always get a ++ compiler error, although not necessarily a very informative one. + + Some algorithms have special requirements on the value type + stored in the containers. For example, +@@ -99,7 +99,7 @@ + + \section2 Output Iterators + +- An \e{output iterator} is an iterator that can be used for ++ An output iterator is an iterator that can be used for + writing data sequentially to a container or to some output + stream. It must provide the following operators: unary \c{*} for + writing a value (i.e., \c{*it = val}) and prefix \c{++} for +-- +1.8.4 + + +From 7d5448d9e2ae4d2d10c0cff867cf34b315336feb Mon Sep 17 00:00:00 2001 +From: J-P Nurmi <jpnurmi@digia.com> +Date: Wed, 27 Nov 2013 13:24:59 +0100 +Subject: [PATCH 15/17] Docs: add important QWheelEvent::phase() related notes + +Change-Id: I4901b96b44b7c1179e678689af5962cb4570d50d +Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> +Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> +Reviewed-by: Lars Knoll <lars.knoll@digia.com> + +diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp +index 2866608..88f132b 100644 +--- a/src/gui/kernel/qevent.cpp ++++ b/src/gui/kernel/qevent.cpp +@@ -709,6 +709,12 @@ QWheelEvent::QWheelEvent(const QPointF &pos, const QPointF& globalPos, + Example: + + \snippet code/src_gui_kernel_qevent.cpp 0 ++ ++ \note On platforms that support scrolling \l{phase()}{phases}, the delta may be null when: ++ \list ++ \li scrolling is about to begin, but the distance did not yet change (Qt::ScrollBegin), ++ \li or scrolling has ended and the distance did not change anymore (Qt::ScrollEnd). ++ \endlist + */ + + /*! +@@ -731,6 +737,12 @@ QWheelEvent::QWheelEvent(const QPointF &pos, const QPointF& globalPos, + Example: + + \snippet code/src_gui_kernel_qevent.cpp 0 ++ ++ \note On platforms that support scrolling \l{phase()}{phases}, the delta may be null when: ++ \list ++ \li scrolling is about to begin, but the distance did not yet change (Qt::ScrollBegin), ++ \li or scrolling has ended and the distance did not change anymore (Qt::ScrollEnd). ++ \endlist + */ + + /*! +@@ -830,6 +842,9 @@ QWheelEvent::QWheelEvent(const QPointF &pos, const QPointF& globalPos, + \since 5.2 + + Returns the scrolling phase of this wheel event. ++ ++ \note The Qt::ScrollBegin and Qt::ScrollEnd phases are currently ++ supported only on Mac OS X. + */ + + +-- +1.8.4 + + +From 7483cd9fe3ce4b1bd99fa789ee076b23a5520545 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Tue, 26 Feb 2013 13:23:33 +0100 +Subject: [PATCH 16/17] use pkg-config for freetype + +Change-Id: Id2f78ed9dbdcacd570eb25982cbd700d0437542a + +diff --git a/src/platformsupport/fontdatabases/basic/basic.pri b/src/platformsupport/fontdatabases/basic/basic.pri +index 88be809..8fc19d2 100644 +--- a/src/platformsupport/fontdatabases/basic/basic.pri ++++ b/src/platformsupport/fontdatabases/basic/basic.pri +@@ -82,5 +82,7 @@ contains(QT_CONFIG, freetype) { + } else:contains(QT_CONFIG, system-freetype) { + # pull in the proper freetype2 include directory + include($$QT_SOURCE_TREE/config.tests/unix/freetype/freetype.pri) ++ CONFIG += link_pkgconfig ++ PKGCONFIG += freetype2 + } + +-- +1.8.4 + + +From 12e80060cd06ac79016357cfbfcf56b3786d8c4a Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Sat, 18 May 2013 23:07:46 +0200 +Subject: [PATCH 17/17] use pkgconfig for icu detection (MXE specific) + +Change-Id: I874171361fec812cb5a5a56e4d8d90a630be3bf3 + +diff --git a/config.tests/unix/icu/icu.pro b/config.tests/unix/icu/icu.pro +index 2c1b431..e29798b 100644 +--- a/config.tests/unix/icu/icu.pro ++++ b/config.tests/unix/icu/icu.pro +@@ -1,16 +1,5 @@ + SOURCES = icu.cpp + CONFIG += console + CONFIG -= qt dylib +-win32 { +- CONFIG(static, static|shared) { +- CONFIG(debug, debug|release) { +- LIBS += -lsicuind -lsicuucd -lsicudtd +- } else { +- LIBS += -lsicuin -lsicuuc -lsicudt +- } +- } else { +- LIBS += -licuin -licuuc +- } +-} else { +- LIBS += -licui18n -licuuc +-} ++CONFIG += link_pkgconfig ++PKGCONFIG += icu-i18n +-- +1.8.4 + diff --git a/src/qtbase.mk b/src/qtbase.mk index 78198f3..6ec9f78 100644 --- a/src/qtbase.mk +++ b/src/qtbase.mk @@ -3,12 +3,12 @@ PKG := qtbase $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 1fe45064daade31db01fe95f076b500a3d43fd24 +$(PKG)_VERSION := 5.2.0-rc1 +$(PKG)_CHECKSUM := 2577676eb37cec78d6d0864c094c7c8bb90a581e $(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) -$(PKG)_DEPS := gcc libodbc++ postgresql freetds openssl zlib libpng jpeg sqlite pcre fontconfig freetype dbus icu4c +$(PKG)_URL := http://download.qt-project.org/development_releases/qt/5.2/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_DEPS := gcc postgresql freetds openssl zlib libpng jpeg sqlite pcre fontconfig freetype dbus icu4c define $(PKG)_UPDATE $(WGET) -q -O- http://download.qt-project.org/official_releases/qt/5.1/ | \ @@ -51,7 +51,9 @@ define $(PKG)_BUILD -dbus-linked \ -v - $(MAKE) -C '$(1)' -j '$(JOBS)' + # invoke qmake with removed debug options as a workaround for + # https://bugreports.qt-project.org/browse/QTBUG-30898 + $(MAKE) -C '$(1)' -j '$(JOBS)' QMAKE="$(1)/bin/qmake CONFIG-='debug debug_and_release'" rm -rf '$(PREFIX)/$(TARGET)/qt5' $(MAKE) -C '$(1)' -j 1 install @@ -59,4 +61,16 @@ define $(PKG)_BUILD cd '$(1)/test-qt' && '$(PREFIX)/$(TARGET)/qt5/bin/qmake' '$(PWD)/src/qt-test.pro' $(MAKE) -C '$(1)/test-qt' -j '$(JOBS)' $(INSTALL) -m755 '$(1)/test-qt/release/test-qt5.exe' '$(PREFIX)/$(TARGET)/bin/' + + # copy pkg-config files to standard directory + cp '$(PREFIX)/$(TARGET)'/qt5/lib/pkgconfig/* '$(PREFIX)/$(TARGET)'/lib/pkgconfig/ + + # build test the manual way + mkdir '$(1)/test-$(PKG)-pkgconfig' + '$(PREFIX)/$(TARGET)/qt5/bin/uic' -o '$(1)/test-$(PKG)-pkgconfig/ui_qt-test.h' '$(TOP_DIR)/src/qt-test.ui' + '$(TARGET)-g++' \ + -W -Wall -Werror -std=c++0x -pedantic \ + '$(TOP_DIR)/src/qt-test.cpp' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG)-pkgconfig.exe' \ + -I'$(1)/test-$(PKG)-pkgconfig' \ + `'$(TARGET)-pkg-config' Qt5Widgets --cflags --libs` endef diff --git a/src/qtconnectivity.mk b/src/qtconnectivity.mk new file mode 100644 index 0000000..a496fc3 --- /dev/null +++ b/src/qtconnectivity.mk @@ -0,0 +1,21 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := qtconnectivity +$(PKG)_IGNORE := +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 7c6258fd0c087357788c67744a69d84dd571a982 +$(PKG)_SUBDIR = $(subst qtbase,qtconnectivity,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtconnectivity,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtconnectivity,$(qtbase_URL)) +$(PKG)_DEPS := gcc qtbase qtdeclarative + +define $(PKG)_UPDATE + echo $(qtbase_VERSION) +endef + +define $(PKG)_BUILD + cd '$(1)' && '$(PREFIX)/$(TARGET)/qt5/bin/qmake' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/qtdeclarative.mk b/src/qtdeclarative.mk index a32e8b0..88cce5b 100644 --- a/src/qtdeclarative.mk +++ b/src/qtdeclarative.mk @@ -3,12 +3,12 @@ PKG := qtdeclarative $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 6b81191fb2e38146159681af5d51206855fc4fbb -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) -$(PKG)_DEPS := gcc qtbase qtjsbackend qtsvg qtxmlpatterns +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 465187e014512761d13a314afc463817823456fd +$(PKG)_SUBDIR = $(subst qtbase,qtdeclarative,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtdeclarative,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtdeclarative,$(qtbase_URL)) +$(PKG)_DEPS := gcc qtbase qtsvg qtxmlpatterns define $(PKG)_UPDATE echo $(qtbase_VERSION) diff --git a/src/qtgraphicaleffects.mk b/src/qtgraphicaleffects.mk index d7dc684..e19b09e 100644 --- a/src/qtgraphicaleffects.mk +++ b/src/qtgraphicaleffects.mk @@ -3,11 +3,11 @@ PKG := qtgraphicaleffects $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 21c878319cbb97129877ce8581e62ce495477123 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := b1443dd0c4d6bd681413d1366cd3a0ba840bcbe4 +$(PKG)_SUBDIR = $(subst qtbase,qtgraphicaleffects,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtgraphicaleffects,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtgraphicaleffects,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase qtdeclarative define $(PKG)_UPDATE diff --git a/src/qtimageformats-1-cherrypicks.patch b/src/qtimageformats-1.patch index 4b7e150..c1477eb 100644 --- a/src/qtimageformats-1-cherrypicks.patch +++ b/src/qtimageformats-1.patch @@ -1,10 +1,10 @@ This file is part of MXE. See index.html for further information. -From f6906f5cb744554a985f6ecbb55a49dd2883d531 Mon Sep 17 00:00:00 2001 +From fd1717af4dd33e3ea270ec97d7f7e5e3a61021da Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Thu, 3 Nov 2011 14:11:02 +0100 -Subject: [PATCH 1/2] add pkg-config support for libtiff-4 +Subject: [PATCH 1/3] add pkg-config support for libtiff-4 Change-Id: I387517e04fed7729e5acf28bacdfc289fb2d17bd @@ -37,13 +37,13 @@ index 353e3f3..fa22141 100644 } else { include($$PWD/../../../3rdparty/libtiff.pri) -- -1.8.1.4 +1.8.4 -From 3c300d849fbe41368aedbf8d9c8052a170dfd108 Mon Sep 17 00:00:00 2001 +From a1846586160249a2debcbf113b679c9ea452b909 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Wed, 19 Dec 2012 23:29:52 +0100 -Subject: [PATCH 2/2] add pkg-config support for libmng (mxe-specific) +Subject: [PATCH 2/3] add pkg-config support for libmng (mxe-specific) Change-Id: I1216f35a01a974321efa2463b687c121baa22667 @@ -76,5 +76,32 @@ index cdf17c5..00cd0b3 100644 } else { include($$PWD/../../../3rdparty/libmng.pri) -- -1.8.1.4 +1.8.4 + + +From 5c209558b3c4d82e59c8d5ef3cc263a8fd3bff01 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Sat, 17 Aug 2013 18:08:22 +0200 +Subject: [PATCH 3/3] libmng 2 config.test compatibility + +Change-Id: I62903256590faf1f1d3d07265b96a6597f912fc2 + +diff --git a/config.tests/libmng/libmng.cpp b/config.tests/libmng/libmng.cpp +index 9def33e..266dd71 100644 +--- a/config.tests/libmng/libmng.cpp ++++ b/config.tests/libmng/libmng.cpp +@@ -46,9 +46,11 @@ int main(int, char **) + mng_handle hMNG; + mng_cleanup(&hMNG); + ++#ifdef MNG_VERSION_MAJOR + #if MNG_VERSION_MAJOR < 1 || (MNG_VERSION_MAJOR == 1 && MNG_VERSION_MINOR == 0 && MNG_VERSION_RELEASE < 9) + #error System libmng version is less than 1.0.9; using built-in version instead. + #endif ++#endif + + return 0; + } +-- +1.8.4 diff --git a/src/qtimageformats.mk b/src/qtimageformats.mk index e85b547..92afd45 100644 --- a/src/qtimageformats.mk +++ b/src/qtimageformats.mk @@ -3,11 +3,11 @@ PKG := qtimageformats $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 2ea432cfd0f94d809db31ae6c83cb65cbf8db9b8 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := f773b5592d464c8c6682576418f00a7f25631af9 +$(PKG)_SUBDIR = $(subst qtbase,qtimageformats,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtimageformats,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtimageformats,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase libmng tiff define $(PKG)_UPDATE diff --git a/src/qtjsbackend.mk b/src/qtjsbackend.mk deleted file mode 100644 index 4a418cd..0000000 --- a/src/qtjsbackend.mk +++ /dev/null @@ -1,21 +0,0 @@ -# This file is part of MXE. -# See index.html for further information. - -PKG := qtjsbackend -$(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := df1cd292b2fce26308c3e85b99def8264891607c -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) -$(PKG)_DEPS := gcc qtbase - -define $(PKG)_UPDATE - echo $(qtbase_VERSION) -endef - -define $(PKG)_BUILD - cd '$(1)' && '$(PREFIX)/$(TARGET)/qt5/bin/qmake' - $(MAKE) -C '$(1)' -j '$(JOBS)' - $(MAKE) -C '$(1)' -j 1 install -endef diff --git a/src/qtlocation.mk b/src/qtlocation.mk new file mode 100644 index 0000000..4815a19 --- /dev/null +++ b/src/qtlocation.mk @@ -0,0 +1,21 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := qtlocation +$(PKG)_IGNORE := +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := d1951d132820e21c0eacfbf29d1149aa78f4e27a +$(PKG)_SUBDIR = $(subst qtbase,qtlocation,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtlocation,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtlocation,$(qtbase_URL)) +$(PKG)_DEPS := gcc qtbase qtdeclarative qtmultimedia + +define $(PKG)_UPDATE + echo $(qtbase_VERSION) +endef + +define $(PKG)_BUILD + cd '$(1)' && '$(PREFIX)/$(TARGET)/qt5/bin/qmake' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/qtmultimedia-1-cherrypicks.patch b/src/qtmultimedia-1.patch index 950678d..4b3fa95 100644 --- a/src/qtmultimedia-1-cherrypicks.patch +++ b/src/qtmultimedia-1.patch @@ -1,14 +1,14 @@ This file is part of MXE. See index.html for further information. -From af295c0f78cfc8e54601048d5da66f6e81f6661e Mon Sep 17 00:00:00 2001 +From 24d6489d5e485663afc15adc3e969d0da42fd571 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Thu, 13 Dec 2012 20:23:48 +0100 Subject: [PATCH] remove duplicate defs (mxe-specific) diff --git a/src/multimedia/audio/qaudiodeviceinfo_win32_p.cpp b/src/multimedia/audio/qaudiodeviceinfo_win32_p.cpp -index 3c66d05..10e8037 100644 +index e9503d4..b92aa98 100644 --- a/src/multimedia/audio/qaudiodeviceinfo_win32_p.cpp +++ b/src/multimedia/audio/qaudiodeviceinfo_win32_p.cpp @@ -67,19 +67,19 @@ typedef struct _DDPIXELFORMAT* LPDDPIXELFORMAT; @@ -41,5 +41,5 @@ index 3c66d05..10e8037 100644 #endif // __ICreateDevEnum_INTERFACE_DEFINED__ -- -1.7.10.4 +1.8.4 diff --git a/src/qtmultimedia.mk b/src/qtmultimedia.mk index 57970d2..9c611bb 100644 --- a/src/qtmultimedia.mk +++ b/src/qtmultimedia.mk @@ -3,11 +3,11 @@ PKG := qtmultimedia $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 104564fc843e3640e65aee48c1a0b3a62d127ca4 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 28b9c29b80f178784de7198ae76c011acacf3153 +$(PKG)_SUBDIR = $(subst qtbase,qtmultimedia,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtmultimedia,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtmultimedia,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qtquick1.mk b/src/qtquick1.mk index 6b295ad..4d92f0a 100644 --- a/src/qtquick1.mk +++ b/src/qtquick1.mk @@ -3,11 +3,11 @@ PKG := qtquick1 $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := bc98881532cba9d6618ab24e441b7c11e74d3273 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := a3e6784bf7b62deb770d4b8185ea4af972feb65b +$(PKG)_SUBDIR = $(subst qtbase,qtquick1,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtquick1,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtquick1,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase qtscript qtsvg qttools qtxmlpatterns define $(PKG)_UPDATE diff --git a/src/qtquickcontrols.mk b/src/qtquickcontrols.mk index 90ec497..8cf5442 100644 --- a/src/qtquickcontrols.mk +++ b/src/qtquickcontrols.mk @@ -3,11 +3,11 @@ PKG := qtquickcontrols $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := e7d178b8927dc0356023ae1fca3909dd509757f0 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 7688217ba95c0c7590ab2e01fb0e97340ea2db99 +$(PKG)_SUBDIR = $(subst qtbase,qtquickcontrols,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtquickcontrols,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtquickcontrols,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase qtdeclarative define $(PKG)_UPDATE diff --git a/src/qtscript.mk b/src/qtscript.mk index 2ea9758..4a01a19 100644 --- a/src/qtscript.mk +++ b/src/qtscript.mk @@ -3,11 +3,11 @@ PKG := qtscript $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 144fd867441145c92e6099edf89b72d961f8f11a -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := eb7874c4315872a6dd2b4805635f15c4d9ab391b +$(PKG)_SUBDIR = $(subst qtbase,qtscript,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtscript,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtscript,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qtsensors.mk b/src/qtsensors.mk index 9580dec..f266104 100644 --- a/src/qtsensors.mk +++ b/src/qtsensors.mk @@ -3,11 +3,11 @@ PKG := qtsensors $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 0399e4d8402b7931e482b951363d153d1426b209 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 0b1f51b4aebe39727e241aad5ceea8752cfee4a9 +$(PKG)_SUBDIR = $(subst qtbase,qtsensors,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtsensors,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtsensors,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qtserialport.mk b/src/qtserialport.mk index 42e3509..d389d6e 100644 --- a/src/qtserialport.mk +++ b/src/qtserialport.mk @@ -3,11 +3,11 @@ PKG := qtserialport $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 5e3e9fb88ba2cf7b84fad34c6f9424aa8dc5e97c -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := d510b0dde86f17ef69600325ec1738472737eefa +$(PKG)_SUBDIR = $(subst qtbase,qtserialport,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtserialport,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtserialport,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qtservice-1-fixes.patch b/src/qtservice-1-fixes.patch new file mode 100644 index 0000000..5713f57 --- /dev/null +++ b/src/qtservice-1-fixes.patch @@ -0,0 +1,115 @@ +This file is part of MXE. +See index.html for further information. + +From 431dd674645bbee5ea34d65aa4095f07890af088 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 29 Aug 2013 09:27:08 +0200 +Subject: [PATCH 1/4] qtservice: fixes for static build + + +diff --git a/qtservice/buildlib/buildlib.pro b/qtservice/buildlib/buildlib.pro +index 1e51cc1..c427a56 100644 +--- a/qtservice/buildlib/buildlib.pro ++++ b/qtservice/buildlib/buildlib.pro +@@ -5,7 +5,7 @@ win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all + include(../src/qtservice.pri) + TARGET = $$QTSERVICE_LIBNAME + DESTDIR = $$QTSERVICE_LIBDIR +-win32 { ++win32:shared { + DLLDESTDIR = $$[QT_INSTALL_BINS] + QMAKE_DISTCLEAN += $$[QT_INSTALL_BINS]\\$${QTSERVICE_LIBNAME}.dll + } +diff --git a/qtservice/src/qtservice.pri b/qtservice/src/qtservice.pri +index 0945298..0475e0f 100644 +--- a/qtservice/src/qtservice.pri ++++ b/qtservice/src/qtservice.pri +@@ -15,7 +15,7 @@ qtservice-uselib:!qtservice-buildlib { + unix:SOURCES += $$PWD/qtservice_unix.cpp $$PWD/qtunixsocket.cpp $$PWD/qtunixserversocket.cpp + } + +-win32 { +- qtservice-buildlib:shared:DEFINES += QT_QTSERVICE_EXPORT ++win32:shared { ++ qtservice-buildlib:DEFINES += QT_QTSERVICE_EXPORT + else:qtservice-uselib:DEFINES += QT_QTSERVICE_IMPORT + } +-- +1.8.1.4 + + +From 539cadf46856af75becb54b40f65f617ae6dbf1f Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 29 Aug 2013 09:31:40 +0200 +Subject: [PATCH 2/4] qtservice: build as static lib and generate .prl + + +diff --git a/qtservice/buildlib/buildlib.pro b/qtservice/buildlib/buildlib.pro +index c427a56..8335202 100644 +--- a/qtservice/buildlib/buildlib.pro ++++ b/qtservice/buildlib/buildlib.pro +@@ -1,7 +1,7 @@ + TEMPLATE=lib +-CONFIG += qt dll qtservice-buildlib ++CONFIG += qt staticlib qtservice-buildlib + mac:CONFIG += absolute_library_soname +-win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all ++win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all create_prl + include(../src/qtservice.pri) + TARGET = $$QTSERVICE_LIBNAME + DESTDIR = $$QTSERVICE_LIBDIR +-- +1.8.1.4 + + +From 01626c8c0f528e6642110b15dab658ad49b8075b Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 29 Aug 2013 09:44:49 +0200 +Subject: [PATCH 3/4] qtservice: no debug + + +diff --git a/qtservice/buildlib/buildlib.pro b/qtservice/buildlib/buildlib.pro +index 8335202..370156a 100644 +--- a/qtservice/buildlib/buildlib.pro ++++ b/qtservice/buildlib/buildlib.pro +@@ -1,7 +1,7 @@ + TEMPLATE=lib + CONFIG += qt staticlib qtservice-buildlib + mac:CONFIG += absolute_library_soname +-win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all create_prl ++win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += create_prl + include(../src/qtservice.pri) + TARGET = $$QTSERVICE_LIBNAME + DESTDIR = $$QTSERVICE_LIBDIR +-- +1.8.1.4 + + +From 005eb0eb8275b6e50c814343e7fdb3d2c99f13d5 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 29 Aug 2013 11:32:45 +0200 +Subject: [PATCH 4/4] qtservice: install to Qt directory + + +diff --git a/qtservice/buildlib/buildlib.pro b/qtservice/buildlib/buildlib.pro +index 370156a..4180e83 100644 +--- a/qtservice/buildlib/buildlib.pro ++++ b/qtservice/buildlib/buildlib.pro +@@ -4,10 +4,11 @@ mac:CONFIG += absolute_library_soname + win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += create_prl + include(../src/qtservice.pri) + TARGET = $$QTSERVICE_LIBNAME +-DESTDIR = $$QTSERVICE_LIBDIR + win32:shared { + DLLDESTDIR = $$[QT_INSTALL_BINS] + QMAKE_DISTCLEAN += $$[QT_INSTALL_BINS]\\$${QTSERVICE_LIBNAME}.dll + } +-target.path = $$DESTDIR +-INSTALLS += target ++target.path = $$[QT_INSTALL_LIBS] ++headers.path = $$[QT_INSTALL_HEADERS] ++headers.files += ../src/qtservice.h ++INSTALLS += target headers +-- +1.8.1.4 + diff --git a/src/qtservice.mk b/src/qtservice.mk new file mode 100644 index 0000000..6f9683c --- /dev/null +++ b/src/qtservice.mk @@ -0,0 +1,21 @@ +# This file is part of MXE. +# See index.html for further information. +PKG := qtservice +$(PKG)_IGNORE := +$(PKG)_VERSION := 4ac977553f2b04a54feb74ebcbc90ef255d38895 +$(PKG)_CHECKSUM := b3a185696066dc8f1792de83aa8d7187fb416580 +$(PKG)_SUBDIR := qt-solutions-qt-solutions +$(PKG)_FILE := $($(PKG)_VERSION).tar.gz +$(PKG)_URL := https://qt.gitorious.org/qt-solutions/qt-solutions/archive/$($(PKG)_FILE) +$(PKG)_DEPS := gcc qtbase + +define $(PKG)_UPDATE + echo 'Warning: Updates are temporarily disabled for package qtservice.' >&2; + echo $(qtservice_VERSION) +endef + +define $(PKG)_BUILD + cd '$(1)/qtservice/buildlib' && '$(PREFIX)/$(TARGET)/qt5/bin/qmake' + $(MAKE) -C '$(1)/qtservice/buildlib' -j '$(JOBS)' + $(MAKE) -C '$(1)/qtservice/buildlib' -j 1 install +endef diff --git a/src/qtsvg.mk b/src/qtsvg.mk index 7985db9..4e8eaef 100644 --- a/src/qtsvg.mk +++ b/src/qtsvg.mk @@ -3,11 +3,11 @@ PKG := qtsvg $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 572550aad16a666781cc78d0fecffadf4ba088f3 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := ca0ae973d62c99da1a222f9a3c641811c49677a3 +$(PKG)_SUBDIR = $(subst qtbase,qtsvg,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtsvg,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtsvg,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qttools.mk b/src/qttools.mk index 3a0088f..75ac3d3 100644 --- a/src/qttools.mk +++ b/src/qttools.mk @@ -3,11 +3,11 @@ PKG := qttools $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := 45130b598a36f187f6b083011e27c050896c7179 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 0e11e5d4fa8c63d1967e62c7a007959b2d07ae89 +$(PKG)_SUBDIR = $(subst qtbase,qttools,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qttools,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qttools,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase qtactiveqt qtdeclarative define $(PKG)_UPDATE diff --git a/src/qttranslations.mk b/src/qttranslations.mk index 63dfcc6..f98af0e 100644 --- a/src/qttranslations.mk +++ b/src/qttranslations.mk @@ -3,11 +3,11 @@ PKG := qttranslations $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := c94d0ae1f3b56966730cb701f9d606e241370b31 -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 4c46bb1bfd141ccb52e8db173198869cdb83a17d +$(PKG)_SUBDIR = $(subst qtbase,qttranslations,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qttranslations,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qttranslations,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase qttools define $(PKG)_UPDATE diff --git a/src/qtwinextras-1.patch b/src/qtwinextras-1.patch new file mode 100644 index 0000000..4bac8cb --- /dev/null +++ b/src/qtwinextras-1.patch @@ -0,0 +1,25 @@ +This file is part of MXE. +See index.html for further information. + +From 78cac864153eb0bddb4436bfa929f21712e197e1 Mon Sep 17 00:00:00 2001 +From: Mark Brand <mabrand@mabrand.nl> +Date: Thu, 24 Oct 2013 22:29:51 +0200 +Subject: [PATCH] Fix MinGW-w64 GCC 4.8.2 compilation + + +diff --git a/src/winextras/winshobjidl_p.h b/src/winextras/winshobjidl_p.h +index 91faed5..352c405 100644 +--- a/src/winextras/winshobjidl_p.h ++++ b/src/winextras/winshobjidl_p.h +@@ -222,7 +222,7 @@ public: + + #if (defined _MSC_VER && _MSC_VER < 1600) || defined(Q_CC_MINGW) + +-# if !defined(__MINGW64_VERSION_MAJOR) || !defined(__MINGW64_VERSION_MINOR) || __MINGW64_VERSION_MAJOR * 100 + __MINGW64_VERSION_MINOR < 301 ++# if !defined(__MINGW64_VERSION_MAJOR) || !defined(__MINGW64_VERSION_MINOR) || __MINGW64_VERSION_MAJOR * 100 + __MINGW64_VERSION_MINOR < 300 + + typedef struct SHARDAPPIDINFOLINK + { +-- +1.8.4 + diff --git a/src/qtwinextras.mk b/src/qtwinextras.mk new file mode 100644 index 0000000..edde93e --- /dev/null +++ b/src/qtwinextras.mk @@ -0,0 +1,23 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := qtwinextras +$(PKG)_IGNORE := +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 3e2acdbbfc273864d9aba43c8db31463a5932075 +$(PKG)_SUBDIR = $(subst qtbase,qtwinextras,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtwinextras,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtwinextras,$(qtbase_URL)) +$(PKG)_DEPS := gcc qtbase qtdeclarative qtmultimedia + +define $(PKG)_UPDATE + echo $(qtbase_VERSION) +endef + +define $(PKG)_BUILD + cd '$(1)' && '$(PREFIX)/$(TARGET)/qt5/bin/qmake' + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef + +$(PKG)_BUILD_i686-pc-mingw32 = diff --git a/src/qtxmlpatterns-1.patch b/src/qtxmlpatterns-1.patch index 2f4845c..4a57473 100644 --- a/src/qtxmlpatterns-1.patch +++ b/src/qtxmlpatterns-1.patch @@ -1,22 +1,24 @@ This file is part of MXE. See index.html for further information. -From 910b5fc6c65e2a4508077821a1d31e080d738766 Mon Sep 17 00:00:00 2001 +From ec1bf00708e5aa804d392678bae5b32921ae0c2a Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Sat, 18 May 2013 17:03:55 +0200 Subject: [PATCH] mingw build fix: _fileno diff --git a/tools/xmlpatterns/xmlpatterns.pro b/tools/xmlpatterns/xmlpatterns.pro -index d349a91..13a70ae 100644 +index 1fad197..2bbf5b5 100644 --- a/tools/xmlpatterns/xmlpatterns.pro +++ b/tools/xmlpatterns/xmlpatterns.pro -@@ -11,4 +11,5 @@ HEADERS = main.h \ +@@ -11,6 +11,7 @@ HEADERS = main.h \ qapplicationargument.cpp \ qapplicationargumentparser.cpp +win32-g++*:QMAKE_CXXFLAGS += -U__STRICT_ANSI__ load(qt_tool) + + # with c++11 / __STRICT_ANSI__ mingw.org stdio.h doesn't declare e.g. _fileno -- -1.8.1.4 +1.8.4 diff --git a/src/qtxmlpatterns.mk b/src/qtxmlpatterns.mk index daf7d41..efaa23d 100644 --- a/src/qtxmlpatterns.mk +++ b/src/qtxmlpatterns.mk @@ -3,11 +3,11 @@ PKG := qtxmlpatterns $(PKG)_IGNORE := -$(PKG)_VERSION := 5.1.0 -$(PKG)_CHECKSUM := b108adc53e337640f3e4430c5e60b7bb8af7d18a -$(PKG)_SUBDIR := $(PKG)-opensource-src-$($(PKG)_VERSION) -$(PKG)_FILE := $(PKG)-opensource-src-$($(PKG)_VERSION).tar.xz -$(PKG)_URL := http://download.qt-project.org/official_releases/qt/5.1/$($(PKG)_VERSION)/submodules/$($(PKG)_FILE) +$(PKG)_VERSION = $(qtbase_VERSION) +$(PKG)_CHECKSUM := 1e8dd3a300dc5e326baace0825292cd9519fea24 +$(PKG)_SUBDIR = $(subst qtbase,qtxmlpatterns,$(qtbase_SUBDIR)) +$(PKG)_FILE = $(subst qtbase,qtxmlpatterns,$(qtbase_FILE)) +$(PKG)_URL = $(subst qtbase,qtxmlpatterns,$(qtbase_URL)) $(PKG)_DEPS := gcc qtbase define $(PKG)_UPDATE diff --git a/src/qwt_qt4-1-fixes-crlf.patch b/src/qwt_qt4-1-fixes-crlf.patch new file mode 100644 index 0000000..80179ef --- /dev/null +++ b/src/qwt_qt4-1-fixes-crlf.patch @@ -0,0 +1,23 @@ +This file is part of MXE. +See index.html for further information. + +--- qwt-6.0.1/qwtconfig.pri 2011-08-01 16:34:05.000000000 +0200 ++++ qwt-6.0.1/qwtconfig.pri 2011-12-03 10:14:53.371757822 +0100 +@@ -23,7 +23,7 @@ + }
+
+ win32 {
+- QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION
++# QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION
+ }
+
+ QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc
+@@ -70,7 +70,7 @@ + # it will be a static library.
+ ######################################################################
+
+-QWT_CONFIG += QwtDll
++#QWT_CONFIG += QwtDll
+
+ ######################################################################
+ # QwtPlot enables all classes, that are needed to use the QwtPlot
diff --git a/src/qwt_qt4.mk b/src/qwt_qt4.mk new file mode 100644 index 0000000..4dd7266 --- /dev/null +++ b/src/qwt_qt4.mk @@ -0,0 +1,28 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := qwt_qt4 +$(PKG)_VERSION = $(qwt_VERSION) +$(PKG)_CHECKSUM = $(qwt_CHECKSUM) +$(PKG)_SUBDIR = $(qwt_SUBDIR) +$(PKG)_FILE = $(qwt_FILE) +$(PKG)_WEBSITE = $(qwt_WEBSITE) +$(PKG)_URL = $(qwt_URL) +$(PKG)_DEPS := gcc qt + +define $(PKG)_UPDATE + echo $(qwt_VERSION) +endef + +define $(PKG)_BUILD + # build + cd '$(1)/src' && $(PREFIX)/$(TARGET)/qt/bin/qmake + $(MAKE) -C '$(1)/src' -f 'Makefile.Release' -j '$(JOBS)' install + + #build sinusplot example to test linkage + cd '$(1)/examples/sinusplot' && $(PREFIX)/$(TARGET)/qt/bin/qmake + $(MAKE) -C '$(1)/examples/sinusplot' -f 'Makefile.Release' -j '$(JOBS)' + + # install + $(INSTALL) -m755 '$(1)/examples/bin/sinusplot.exe' '$(PREFIX)/$(TARGET)/bin/test-qwt-qt4.exe' +endef @@ -13,7 +13,9 @@ $(PKG)_DEPS := gcc libiconv define $(PKG)_UPDATE $(WGET) -q -O- 'http://hg.libsdl.org/SDL/tags' | \ $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ - head -1 + grep '^1\.' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD diff --git a/src/sdl2-1-dinput.patch b/src/sdl2-1-dinput.patch new file mode 100644 index 0000000..e01237a --- /dev/null +++ b/src/sdl2-1-dinput.patch @@ -0,0 +1,17 @@ +This file is part of MXE. +See index.html for further information. + +This patch has been taken from: +https://bugzilla.libsdl.org/show_bug.cgi?id=1739 + +--- a/configure.in Sat Sep 14 11:25:52 2013 -0700 ++++ b/configure.in Fri Sep 27 15:03:58 2013 +1000 +@@ -2127,7 +2127,7 @@ + # FIXME: latest Cygwin finds dinput headers, but we die on other win32 headers. + # FIXME: ...so force it off for now. + case "$host" in +- *-*-cygwin*) ++ *-*-cygwin* | *-pc-mingw32*) + have_dinput=false + ;; + esac diff --git a/src/sdl2.mk b/src/sdl2.mk new file mode 100644 index 0000000..918839f --- /dev/null +++ b/src/sdl2.mk @@ -0,0 +1,33 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := sdl2 +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.0.1 +$(PKG)_CHECKSUM := e40051311b648e4e60ed1683f62a948d93a0a49f +$(PKG)_SUBDIR := SDL2-$($(PKG)_VERSION) +$(PKG)_FILE := SDL2-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.libsdl.org/release/$($(PKG)_FILE) +$(PKG)_DEPS := gcc libiconv + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://hg.libsdl.org/SDL/tags' | \ + $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + $(SED) -i 's,-mwindows,-lwinmm -mwindows,' '$(1)/configure' + cd '$(1)' && aclocal -I acinclude && autoconf && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --enable-threads \ + --enable-directx + $(SED) -i 's,defined(__MINGW64_VERSION_MAJOR),defined(__MINGW64_VERSION_MAJOR) \&\& defined(_WIN64),' '$(1)/include/SDL_cpuinfo.h' + $(SED) -i 's,-XCClinker,,' '$(1)/sdl2.pc' + $(SED) -i 's,-XCClinker,,' '$(1)/sdl2-config' + $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + ln -sf '$(PREFIX)/$(TARGET)/bin/sdl2-config' '$(PREFIX)/bin/$(TARGET)-sdl2-config' +endef diff --git a/src/sdl2_image.mk b/src/sdl2_image.mk new file mode 100644 index 0000000..d3e259b --- /dev/null +++ b/src/sdl2_image.mk @@ -0,0 +1,33 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := sdl2_image +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.0.0 +$(PKG)_CHECKSUM := 20b1b0db9dd540d6d5e40c7da8a39c6a81248865 +$(PKG)_SUBDIR := SDL2_image-$($(PKG)_VERSION) +$(PKG)_FILE := SDL2_image-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.libsdl.org/projects/SDL_image/release/$($(PKG)_FILE) +$(PKG)_DEPS := gcc sdl2 jpeg libpng tiff + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://hg.libsdl.org/SDL_image/tags' | \ + $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + $(SED) -i 's,^\(Requires:.*\),\1 libtiff-4 libpng,' '$(1)/SDL2_image.pc.in' + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-sdl-prefix='$(PREFIX)/$(TARGET)' \ + --disable-sdltest \ + --disable-jpg-shared \ + --disable-webp-shared \ + --disable-png-shared \ + --disable-tif-shared \ + LIBS='-lz' + $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= +endef diff --git a/src/sdl2_mixer.mk b/src/sdl2_mixer.mk new file mode 100644 index 0000000..32aef6d --- /dev/null +++ b/src/sdl2_mixer.mk @@ -0,0 +1,50 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := sdl2_mixer +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.0.0 +$(PKG)_CHECKSUM := 9ed975587f09a1776ba9776dcc74a58e695aba6e +$(PKG)_SUBDIR := SDL2_mixer-$($(PKG)_VERSION) +$(PKG)_FILE := SDL2_mixer-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.libsdl.org/projects/SDL_mixer/release/$($(PKG)_FILE) +$(PKG)_DEPS := gcc sdl2 libmodplug ogg vorbis smpeg2 + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://hg.libsdl.org/SDL_mixer/tags' | \ + $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + $(SED) -i 's,^\(Requires:.*\),\1 vorbisfile,' '$(1)/SDL2_mixer.pc.in' + echo \ + 'Libs.private:' \ + "`$(TARGET)-pkg-config libmodplug --libs`" \ + >> '$(1)/SDL2_mixer.pc.in' + $(SED) -i 's,for path in /usr/local; do,for path in; do,' '$(1)/configure' + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-sdl-prefix='$(PREFIX)/$(TARGET)' \ + --disable-sdltest \ + --disable-music-mod \ + --enable-music-mod-modplug \ + --enable-music-ogg \ + --disable-music-flac \ + --enable-music-mp3 \ + --disable-music-ogg-shared \ + --disable-music-flac-shared \ + --disable-smpegtest + WINDRES='$(TARGET)-windres' \ + LIBS='-lvorbis -logg' + $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + +# '$(TARGET)-gcc' \ +# -W -Wall -Werror -ansi -pedantic \ +# '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-sdl2_mixer.exe' \ +# `'$(TARGET)-pkg-config' SDL2_mixer --cflags --libs` +endef + +$(PKG)_BUILD_i686-pc-mingw32 = diff --git a/src/sdl2_net-test.c b/src/sdl2_net-test.c new file mode 100644 index 0000000..c5204a5 --- /dev/null +++ b/src/sdl2_net-test.c @@ -0,0 +1,19 @@ +/* + * This file is part of MXE. + * See index.html for further information. + */ + +#include <SDL_net.h> + +int main(int argc, char *argv[]) +{ + (void)argc; + (void)argv; + + if (SDL_Init(SDL_INIT_EVERYTHING) < 0) return 1; + if (SDLNet_Init() < 0) return 1; + + SDLNet_Quit(); + SDL_Quit(); + return 0; +} diff --git a/src/sdl2_net.mk b/src/sdl2_net.mk new file mode 100644 index 0000000..759cb8f --- /dev/null +++ b/src/sdl2_net.mk @@ -0,0 +1,36 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := sdl2_net +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.0.0 +$(PKG)_CHECKSUM := c7cf473b3adada23171df9f92b3117052eac69fa +$(PKG)_SUBDIR := SDL2_net-$($(PKG)_VERSION) +$(PKG)_FILE := SDL2_net-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.libsdl.org/projects/SDL_net/release/$($(PKG)_FILE) +$(PKG)_DEPS := gcc sdl2 + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://www.libsdl.org/projects/SDL_net/release/?C=M;O=D' | \ + $(SED) -n 's,.*SDL_net-\([0-9][^>]*\)\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-sdl-prefix='$(PREFIX)/$(TARGET)' \ + --disable-sdltest \ + --disable-gui + $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + + '$(TARGET)-gcc' \ + -W -Wall -Werror -std=c99 -pedantic \ + '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-sdl2_net.exe' \ + `'$(TARGET)-pkg-config' SDL2_net --cflags --libs` \ + -lws2_32 -liphlpapi +endef + +$(PKG)_BUILD_i686-pc-mingw32 = diff --git a/src/sdl2_ttf.mk b/src/sdl2_ttf.mk new file mode 100644 index 0000000..f646ef8 --- /dev/null +++ b/src/sdl2_ttf.mk @@ -0,0 +1,31 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := sdl2_ttf +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.0.12 +$(PKG)_CHECKSUM := 542865c604fe92d2f26000428ef733381caa0e8e +$(PKG)_SUBDIR := SDL2_ttf-$($(PKG)_VERSION) +$(PKG)_FILE := SDL2_ttf-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.libsdl.org/projects/SDL_ttf/release/$($(PKG)_FILE) +$(PKG)_DEPS := gcc sdl2 freetype + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://hg.libsdl.org/SDL_ttf/tags' | \ + $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + echo 'Requires.private: freetype2' >> '$(1)/SDL2_ttf.pc.in' + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-sdl-prefix='$(PREFIX)/$(TARGET)' \ + --disable-sdltest \ + --with-freetype-prefix='$(PREFIX)/$(TARGET)' + $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= +endef + +$(PKG)_BUILD_i686-pc-mingw32 = diff --git a/src/sdl_gfx.mk b/src/sdl_gfx.mk index d167cee..3f54159 100644 --- a/src/sdl_gfx.mk +++ b/src/sdl_gfx.mk @@ -3,8 +3,8 @@ PKG := sdl_gfx $(PKG)_IGNORE := -$(PKG)_VERSION := 2.0.24 -$(PKG)_CHECKSUM := 34e8963188e4845557468a496066a8fa60d5f563 +$(PKG)_VERSION := 2.0.25 +$(PKG)_CHECKSUM := 20a89d0b71b7b790b830c70f17ed2c44100bc0f4 $(PKG)_SUBDIR := SDL_gfx-$($(PKG)_VERSION) $(PKG)_FILE := SDL_gfx-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://www.ferzkopp.net/Software/SDL_gfx-2.0/$($(PKG)_FILE) @@ -18,7 +18,6 @@ define $(PKG)_UPDATE endef define $(PKG)_BUILD - cd '$(1)' && autoreconf -fi -I'$(PREFIX)/$(TARGET)/share/aclocal' cd '$(1)' && ./configure \ --host='$(TARGET)' \ --disable-shared \ @@ -31,5 +30,3 @@ define $(PKG)_BUILD '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-sdl_gfx.exe' \ `'$(TARGET)-pkg-config' SDL_gfx --cflags --libs` endef - -$(PKG)_BUILD_x86_64-w64-mingw32 = diff --git a/src/sdl_image.mk b/src/sdl_image.mk index 8cc5d82..a5ebc2f 100644 --- a/src/sdl_image.mk +++ b/src/sdl_image.mk @@ -13,7 +13,9 @@ $(PKG)_DEPS := gcc sdl jpeg libpng tiff define $(PKG)_UPDATE $(WGET) -q -O- 'http://hg.libsdl.org/SDL_image/tags' | \ $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ - head -1 + grep '^1\.' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD diff --git a/src/sdl_mixer.mk b/src/sdl_mixer.mk index 6c2677f..d4f0ad4 100644 --- a/src/sdl_mixer.mk +++ b/src/sdl_mixer.mk @@ -13,7 +13,9 @@ $(PKG)_DEPS := gcc sdl libmodplug ogg vorbis smpeg define $(PKG)_UPDATE $(WGET) -q -O- 'http://hg.libsdl.org/SDL_mixer/tags' | \ $(SED) -n 's,.*release-\([0-9][^<]*\).*,\1,p' | \ - head -1 + grep '^1\.' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD diff --git a/src/sdl_rwhttp-test.c b/src/sdl_rwhttp-test.c new file mode 100644 index 0000000..4fd0d85 --- /dev/null +++ b/src/sdl_rwhttp-test.c @@ -0,0 +1,46 @@ +/* + * This file is part of MXE. + * See index.html for further information. + * + * This is a simple test program for SDL_rwhttp that tries to + * fetch something from the web. + * + * This file is in the Public Domain. + */ + +#include <stdio.h> +#include <SDL_rwhttp.h> + +int main(int argc, char *argv[]) +{ + int ret = EXIT_SUCCESS; + const char *url; + SDL_RWops* rwops; + + if (argc != 2) { + fprintf(stderr, "usage: %s <url>\n", argv[0]); + return EXIT_FAILURE; + } + + url = argv[1]; + + if (SDL_RWHttpInit() == -1) { + fprintf(stderr, "%s\n", SDL_GetError()); + return EXIT_FAILURE; + } + + rwops = SDL_RWFromHttpSync(url); + if (!rwops) { + fprintf(stderr, "%s\n", SDL_GetError()); + ret = EXIT_FAILURE; + } else { + printf("success\n"); + SDL_RWclose(rwops); + } + + if (SDL_RWHttpShutdown() == -1) { + fprintf(stderr, "%s\n", SDL_GetError()); + return EXIT_FAILURE; + } + return ret; +} diff --git a/src/sdl_rwhttp.mk b/src/sdl_rwhttp.mk new file mode 100644 index 0000000..65abffb --- /dev/null +++ b/src/sdl_rwhttp.mk @@ -0,0 +1,36 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := sdl_rwhttp +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.2.0 +$(PKG)_CHECKSUM := 9e01fc2bcbb26ca5dce42917be310e34ff48961d +$(PKG)_SUBDIR := SDL_rwhttp-$($(PKG)_VERSION) +$(PKG)_FILE := SDL_rwhttp-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := https://github.com/mgerhardy/SDL_rwhttp/releases/download/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE) +$(PKG)_DEPS := gcc curl + +$(PKG)_DEPS_i686-pc-mingw32 := sdl sdl_net +$(PKG)_DEPS_i686-w64-mingw32 := sdl2 sdl2_net +$(PKG)_DEPS_x86_64-w64-mingw32 := sdl2 sdl2_net + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://github.com/mgerhardy/SDL_rwhttp/tags' | \ + grep '<a href="/mgerhardy/SDL_rwhttp/archive/' | \ + $(SED) -n 's,.*href="/mgerhardy/SDL_rwhttp/archive/\([0-9][^"_]*\)\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --disable-shared \ + --prefix='$(PREFIX)/$(TARGET)' \ + WINDRES='$(TARGET)-windres' + $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + +# '$(TARGET)-gcc' \ +# -W -Wall -Werror -ansi -pedantic \ +# '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-sdl_rwhttp.exe' \ +# `'$(TARGET)-pkg-config' SDL_rwhttp --cflags --libs` +endef diff --git a/src/sdl_ttf.mk b/src/sdl_ttf.mk index f2f0ae9..7879b65 100644 --- a/src/sdl_ttf.mk +++ b/src/sdl_ttf.mk @@ -2,7 +2,7 @@ # See index.html for further information. PKG := sdl_ttf -$(PKG)_IGNORE := +$(PKG)_IGNORE := 2% $(PKG)_VERSION := 2.0.11 $(PKG)_CHECKSUM := 0ccf7c70e26b7801d83f4847766e09f09db15cc6 $(PKG)_SUBDIR := SDL_ttf-$($(PKG)_VERSION) diff --git a/src/sfml.mk b/src/sfml.mk index cc8f71c..f0acf36 100644 --- a/src/sfml.mk +++ b/src/sfml.mk @@ -3,8 +3,8 @@ PKG := sfml $(PKG)_IGNORE := -$(PKG)_VERSION := 2.0 -$(PKG)_CHECKSUM := ff8cf290f49e1a1d8517a4a344e9214139da462f +$(PKG)_VERSION := 2.1 +$(PKG)_CHECKSUM := c27bdffdc4bedb5f6a20db03ceca715d42aa5752 $(PKG)_SUBDIR := SFML-$($(PKG)_VERSION) $(PKG)_FILE := SFML-$($(PKG)_VERSION)-sources.zip $(PKG)_URL := http://sfml-dev.org/download/sfml/$($(PKG)_VERSION)/$($(PKG)_FILE) @@ -12,8 +12,7 @@ $(PKG)_DEPS := gcc freetype glew jpeg openal libsndfile define $(PKG)_UPDATE $(WGET) -q -O- 'http://www.sfml-dev.org/download.php' | \ - grep 'download/sfml/' | \ - $(SED) -n 's,.*\([0-9.]\+\).*,\1,p' | \ + $(SED) -n 's,.*download/sfml/\([^"]\+\).*,\1,p' | \ head -1 endef @@ -24,11 +23,19 @@ define $(PKG)_BUILD $(MAKE) -C '$(1)/build' -j '$(JOBS)' install VERBOSE=1 + # create pkg-config file + $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib/pkgconfig' + (echo 'Name: sfml'; \ + echo 'Version: 0'; \ + echo 'Description: sfml'; \ + echo 'Requires: freetype2 glew openal sndfile vorbisenc'; \ + echo 'Cflags: -DSFML_STATIC'; \ + echo 'Libs: -lsfml-audio-s -lsfml-network-s -lsfml-graphics-s -lsfml-window-s -lsfml-system-s'; \ + echo 'Libs.private: -ljpeg -lws2_32 -lgdi32';) \ + > '$(PREFIX)/$(TARGET)/lib/pkgconfig/sfml.pc' + '$(TARGET)-g++' \ - -W -Wall -Werror \ - -DSFML_STATIC -DAL_LIBTYPE_STATIC \ + -W -Wall -Werror -ansi -pedantic \ '$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-sfml.exe' \ - -lsfml-audio-s -lsfml-network-s -lsfml-graphics-s -lsfml-window-s -lsfml-system-s \ - `$(TARGET)-pkg-config --cflags --libs freetype2 glew openal sndfile vorbisenc` \ - -ljpeg -lws2_32 -lgdi32 + `$(TARGET)-pkg-config --cflags --libs sfml` endef diff --git a/src/smpeg2.mk b/src/smpeg2.mk new file mode 100644 index 0000000..f1bcc60 --- /dev/null +++ b/src/smpeg2.mk @@ -0,0 +1,41 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := smpeg2 +$(PKG)_IGNORE := +$(PKG)_VERSION := 2.0.0 +$(PKG)_CHECKSUM := d0455466f61a8e55f83f4d7fd82f1c305bce6832 +$(PKG)_SUBDIR := smpeg2-$($(PKG)_VERSION) +$(PKG)_FILE := smpeg2-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://www.libsdl.org/projects/smpeg/release/$(PKG)_FILE +$(PKG)_DEPS := gcc sdl2 + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://packages.debian.org/unstable/source/smpeg' | \ + $(SED) -n 's,.*smpeg2_\([0-9][^>]*\)\.orig\.tar.*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + $(SED) -i 's,\(-lsmpeg2\),\1 -lstdc++,' '$(1)/smpeg2-config.in' + cd '$(1)' && ./configure \ + AR='$(TARGET)-ar' \ + NM='$(TARGET)-nm' \ + --host='$(TARGET)' \ + --disable-shared \ + --disable-debug \ + --prefix='$(PREFIX)/$(TARGET)' \ + --with-sdl-prefix='$(PREFIX)/$(TARGET)' \ + --disable-sdltest \ + --disable-gtk-player \ + --disable-opengl-player \ + CFLAGS='-ffriend-injection' + $(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + +# '$(TARGET)-gcc' \ +# -W -Wall -Werror -std=c99 -pedantic \ +# '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-smpeg2.exe' \ +# `'$(PREFIX)/$(TARGET)/bin/smpeg2-config' --cflags --libs` +endef + +$(PKG)_BUILD_i686-pc-mingw32 = @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 71f05afc51e3d9b03376b2f98fd452d3a274d595 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) -$(PKG)_DEPS := gcc file flac lame libgomp libmad libpng libsndfile libtool opencore-amr twolame vorbis wavpack +$(PKG)_DEPS := gcc file flac lame libgomp libmad libpng libsndfile libltdl opencore-amr twolame vorbis wavpack define $(PKG)_UPDATE $(WGET) -q -O- 'http://sourceforge.net/projects/sox/files/sox/' | \ diff --git a/src/sqlite.mk b/src/sqlite.mk index 8e361f5..8015ad8 100644 --- a/src/sqlite.mk +++ b/src/sqlite.mk @@ -3,8 +3,8 @@ PKG := sqlite $(PKG)_IGNORE := -$(PKG)_VERSION := 3071700 -$(PKG)_CHECKSUM := e31958e56b1d7bef9433b1ff2e875c8c290d37f4 +$(PKG)_VERSION := 3080100 +$(PKG)_CHECKSUM := 42464b07df2d6f8aa28f73ce4cc6d48b47be810e $(PKG)_SUBDIR := $(PKG)-autoconf-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-autoconf-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://www.sqlite.org/2013/$($(PKG)_FILE) diff --git a/src/vmime-1.patch b/src/vmime-1.patch index 633be6c..7854547 100644 --- a/src/vmime-1.patch +++ b/src/vmime-1.patch @@ -1,7 +1,7 @@ This file is part of MXE. See index.html for further information. -From 01e591d33435cbd027be6a85bac521138e45c19f Mon Sep 17 00:00:00 2001 +From 96e55516b44e03bb5c2882ef436bdd89757ed287 Mon Sep 17 00:00:00 2001 From: Mark Brand <mabrand@mabrand.nl> Date: Tue, 14 May 2013 09:21:46 +0200 Subject: [PATCH] predefine VMIME_STATIC for convenience @@ -19,5 +19,5 @@ index fc1103e..11dd0ea 100644 +Cflags: -I${includedir}/ @VMIME_PKGCONFIG_CFLAGS@ -DVMIME_STATIC -- -1.8.1.4 +1.8.4 diff --git a/src/vmime.mk b/src/vmime.mk index a645dea..8e8d5c6 100644 --- a/src/vmime.mk +++ b/src/vmime.mk @@ -3,8 +3,8 @@ PKG := vmime $(PKG)_IGNORE := -$(PKG)_VERSION := 86f0a63 -$(PKG)_CHECKSUM := 3e36800f6772371b37a2e4f38072342e6335c96a +$(PKG)_VERSION := 043c3d2 +$(PKG)_CHECKSUM := e5df22a860c8f2173667dada53eb1c997c16b401 $(PKG)_SUBDIR := kisli-vmime-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := https://github.com/kisli/vmime/tarball/$($(PKG)_VERSION)/$($(PKG)_FILE) @@ -26,6 +26,12 @@ define $(PKG)_BUILD -DCMAKE_CXX_FLAGS='-DWINVER=0x0501 -DAI_ADDRCONFIG=0x0400 -DIPV6_V6ONLY=27' \ -DVMIME_BUILD_STATIC_LIBRARY=ON \ -DVMIME_BUILD_SHARED_LIBRARY=OFF \ + -DVMIME_BUILD_SAMPLES=OFF \ + -DVMIME_BUILD_DOCUMENTATION=OFF \ + -DCMAKE_MODULE_PATH='$(1)/cmake' \ + -DICU_LIBRARIES="`'$(TARGET)-pkg-config' --libs-only-l icu-i18n`" \ + -DVMIME_CHARSETCONV_LIB_IS_ICONV=ON \ + -DVMIME_CHARSETCONV_LIB_IS_ICU=OFF \ . $(MAKE) -C '$(1)' -j '$(JOBS)' diff --git a/src/vo-aacenc.mk b/src/vo-aacenc.mk new file mode 100644 index 0000000..236fb44 --- /dev/null +++ b/src/vo-aacenc.mk @@ -0,0 +1,27 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := vo-aacenc +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.1.3 +$(PKG)_CHECKSUM := 6f8eea8e13f369e3568d9cb33d78e0ac28b7eaee +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/opencore-amr/$(PKG)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://sourceforge.net/projects/opencore-amr/files/$(PKG)/' | \ + $(SED) -n 's,.*aacenc-\([0-9.]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --prefix='$(PREFIX)/$(TARGET)' \ + --disable-shared + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/vo-amrwbenc.mk b/src/vo-amrwbenc.mk new file mode 100644 index 0000000..9784ed6 --- /dev/null +++ b/src/vo-amrwbenc.mk @@ -0,0 +1,27 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := vo-amrwbenc +$(PKG)_IGNORE := +$(PKG)_VERSION := 0.1.3 +$(PKG)_CHECKSUM := 427a147a378d258614d5d470f1f222e249535be7 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/opencore-amr/$(PKG)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + $(WGET) -q -O- 'http://sourceforge.net/projects/opencore-amr/files/vo-amrwbenc/' | \ + $(SED) -n 's,.*amrwbenc-\([0-9.]*\)\.tar.*,\1,p' | \ + $(SORT) -V | \ + tail -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --host='$(TARGET)' \ + --prefix='$(PREFIX)/$(TARGET)' \ + --disable-shared + $(MAKE) -C '$(1)' -j '$(JOBS)' + $(MAKE) -C '$(1)' -j 1 install +endef diff --git a/src/vtk6-3-config-compiletools.patch b/src/vtk6-3-config-compiletools.patch new file mode 100644 index 0000000..28e7ab9 --- /dev/null +++ b/src/vtk6-3-config-compiletools.patch @@ -0,0 +1,35 @@ +--- VTK6.0.0/Utilities/EncodeString/module.cmake 2013-06-12 21:47:10.000000000 +0200 ++++ VTK6.0.0/Utilities/EncodeString/module.cmake 2013-08-29 10:06:51.327921851 +0200 +@@ -1,4 +1,7 @@ + vtk_module(vtkUtilitiesEncodeString ++ GROUPS ++ CompileTools + DEPENDS + vtksys ++ vtkCommonCore + EXCLUDE_FROM_WRAPPING) +--- VTK6.0.0/Utilities/HashSource/module.cmake 2013-06-12 21:47:10.000000000 +0200 ++++ VTK6.0.0/Utilities/HashSource/module.cmake 2013-08-29 09:58:48.055272752 +0200 +@@ -1,4 +1,6 @@ + vtk_module(vtkUtilitiesHashSource ++ GROUPS ++ CompileTools + DEPENDS + vtksys + EXCLUDE_FROM_WRAPPING +--- VTK6.0.0/Utilities/MaterialLibrary/module.cmake 2013-06-12 21:47:10.000000000 +0200 ++++ VTK6.0.0/Utilities/MaterialLibrary/module.cmake 2013-08-29 09:58:54.939480759 +0200 +@@ -1,4 +1,6 @@ + vtk_module(vtkUtilitiesMaterialLibrary ++ GROUPS ++ CompileTools + DEPENDS + vtksys + EXCLUDE_FROM_WRAPPING +--- VTK6.0.0/Utilities/ParseOGLExt/module.cmake 2013-06-12 21:47:10.000000000 +0200 ++++ VTK6.0.0/Utilities/ParseOGLExt/module.cmake 2013-08-29 09:58:54.939480759 +0200 +@@ -1,4 +1,6 @@ + vtk_module(vtkParseOGLExt ++ GROUPS ++ CompileTools + EXCLUDE_FROM_WRAPPING) diff --git a/src/vtk6.mk b/src/vtk6.mk index 4c1cf2f..a651d4c 100644 --- a/src/vtk6.mk +++ b/src/vtk6.mk @@ -24,8 +24,12 @@ define $(PKG)_BUILD # first we need a native build to create the compile tools mkdir '$(1).native_build' cd '$(1).native_build' && cmake \ + -DVTK_BUILD_ALL_MODULES=FALSE \ + -DVTK_Group_Rendering=FALSE \ + -DVTK_Group_StandAlone=FALSE \ + -DVTK_Group_CompileTools=TRUE \ -DBUILD_TESTING=FALSE \ - -DVTK_USE_RENDERING=FALSE \ + -DCMAKE_BUILD_TYPE="Release" \ '$(1)' $(MAKE) -C '$(1).native_build' -j '$(JOBS)' VERBOSE=1 vtkCompileTools diff --git a/src/wavpack-1-exec_prefix.patch b/src/wavpack-1-exec_prefix.patch new file mode 100644 index 0000000..0c8333e --- /dev/null +++ b/src/wavpack-1-exec_prefix.patch @@ -0,0 +1,14 @@ +This file is part of MXE. +See index.html for further information. + +Make sure exec_prefix is defined in wavpack.pc. + +diff -ur a/wavpack.pc.in b/wavpack.pc.in +--- a/wavpack.pc.in 2013-09-29 23:30:14.000000000 +0200 ++++ b/wavpack.pc.in 2013-11-17 18:31:35.351567596 +0100 +@@ -1,4 +1,5 @@ + prefix=@prefix@ ++exec_prefix=${prefix} + libdir=@libdir@ + includedir=${prefix}/include + diff --git a/src/wavpack.mk b/src/wavpack.mk index 1c85768..74a3212 100644 --- a/src/wavpack.mk +++ b/src/wavpack.mk @@ -3,8 +3,8 @@ PKG := wavpack $(PKG)_IGNORE := -$(PKG)_VERSION := 4.60.1 -$(PKG)_CHECKSUM := 003c65cb4e29c55011cf8e7b10d69120df5e7f30 +$(PKG)_VERSION := 4.70.0 +$(PKG)_CHECKSUM := 7bf2022c988c19067196ee1fdadc919baacf46d1 $(PKG)_SUBDIR := wavpack-$($(PKG)_VERSION) $(PKG)_FILE := wavpack-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://www.wavpack.com/$($(PKG)_FILE) diff --git a/src/wget-2-cdecl.patch b/src/wget-2-cdecl.patch new file mode 100644 index 0000000..00cca53 --- /dev/null +++ b/src/wget-2-cdecl.patch @@ -0,0 +1,37 @@ +This file is part of MXE. +See index.html for further information. + +This patch has been taken from: +X-Git-Url: http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blobdiff_plain;f=lib%2Fmsvc-inval.c;h=1873e23be4c9d46d95a8b7bea7ea5a07db430829;hp=ef2b8609446ec45000d5f08731400111e4f28d16;hb=86725346a1b116f3c2da26c124288f5f4495bf69;hpb=2845ecc459a4ad03de8397a2c942c2e91d2d3ed5 + +diff --git a/lib/msvc-inval.c b/lib/msvc-inval.c +index ef2b860..1873e23 100644 +--- a/lib/msvc-inval.c ++++ b/lib/msvc-inval.c +@@ -28,7 +28,7 @@ + + # if MSVC_INVALID_PARAMETER_HANDLING == DEFAULT_HANDLING + +-static void cdecl ++static void __cdecl + gl_msvc_invalid_parameter_handler (const wchar_t *expression, + const wchar_t *function, + const wchar_t *file, +@@ -45,7 +45,7 @@ gl_msvc_invalid_parameter_handler (const wchar_t *expression, + + # if defined _MSC_VER + +-static void cdecl ++static void __cdecl + gl_msvc_invalid_parameter_handler (const wchar_t *expression, + const wchar_t *function, + const wchar_t *file, +@@ -94,7 +94,7 @@ gl_msvc_inval_current (void) + } + } + +-static void cdecl ++static void __cdecl + gl_msvc_invalid_parameter_handler (const wchar_t *expression, + const wchar_t *function, + const wchar_t *file, diff --git a/src/winpthreads.mk b/src/winpthreads.mk index f1e8a4f..10e77cc 100644 --- a/src/winpthreads.mk +++ b/src/winpthreads.mk @@ -8,7 +8,10 @@ $(PKG)_CHECKSUM = $(mingw-w64_CHECKSUM) $(PKG)_SUBDIR = $(mingw-w64_SUBDIR) $(PKG)_FILE = $(mingw-w64_FILE) $(PKG)_URL = $(mingw-w64_URL) -$(PKG)_DEPS := gcc mingw-w64 +$(PKG)_DEPS := + +$(PKG)_DEPS_i686-w64-mingw32 := gcc +$(PKG)_DEPS_x86_64-w64-mingw32 := gcc define $(PKG)_UPDATE echo $(mingw-w64_VERSION) diff --git a/src/wt-1-fixes.patch b/src/wt-1-fixes.patch index ab0f00c..4fe4fdd 100644 --- a/src/wt-1-fixes.patch +++ b/src/wt-1-fixes.patch @@ -36,36 +36,6 @@ index 76697fc..9bc0fa1 100644 ELSE(WIN32) FIND_LIBRARY(GM_LIB NAMES -diff --git a/cmake/WtFindHaru.txt b/cmake/WtFindHaru.txt -index 4dba35f..642bd58 100644 ---- a/cmake/WtFindHaru.txt -+++ b/cmake/WtFindHaru.txt -@@ -44,6 +44,7 @@ IF(WIN32) - FIND_LIBRARY(Z_LIB - NAMES - zlib -+ libz - PATHS - ${HARU_PREFIX}/lib - ${USERLIB_PREFIX}/lib -@@ -58,6 +59,17 @@ IF(WIN32) - SET(HARU_SUPPORT_LIBS ${HARU_SUPPORT_LIBS} ${Z_LIB}) - ENDIF(Z_LIB) - ENDIF(HARU_LIB_RELEASE AND HARU_LIB_DEBUG) -+ -+ IF(HARU_LIB_RELEASE) -+ SET(HARU_LIB optimized ${HARU_LIB_RELEASE}) -+ IF(PNG_LIB_RELEASE) -+ SET(HARU_SUPPORT_LIBS ${HARU_SUPPORT_LIBS} optimized ${PNG_LIB_RELEASE}) -+ ENDIF(PNG_LIB_RELEASE) -+ IF(Z_LIB) -+ SET(HARU_SUPPORT_LIBS ${HARU_SUPPORT_LIBS} optimized ${Z_LIB}) -+ ENDIF(Z_LIB) -+ ENDIF(HARU_LIB_RELEASE) -+ - SET(HARU_SUPPORT_LIBS_FOUND TRUE) - ELSE(WIN32) - FIND_LIBRARY(HARU_LIB diff --git a/cmake/WtFindPangoFt2.txt b/cmake/WtFindPangoFt2.txt index cd1e640..b1bbe3d 100644 --- a/cmake/WtFindPangoFt2.txt @@ -3,12 +3,12 @@ PKG := wt $(PKG)_IGNORE := -$(PKG)_VERSION := 3.3.0 -$(PKG)_CHECKSUM := da3ad190e51d4e2bd2851141b27dd70b272cbb2c +$(PKG)_VERSION := 3.3.1 +$(PKG)_CHECKSUM := 0ae889c1411864d783962d4878b90efbce7f3382 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/witty/$($(PKG)_FILE) -$(PKG)_DEPS := gcc boost openssl libharu graphicsmagick pango postgresql sqlite +$(PKG)_DEPS := gcc boost openssl libharu graphicsmagick pango postgresql qt sqlite define $(PKG)_UPDATE $(WGET) -q -O- 'http://sourceforge.net/projects/witty/files/wt/' | \ @@ -32,6 +32,7 @@ define $(PKG)_BUILD -DGM_PREFIX='$(PREFIX)/$(TARGET)' \ -DGM_LIBS="`'$(TARGET)-pkg-config' --libs-only-l GraphicsMagick++`" \ -DPANGO_FT2_LIBS="`'$(TARGET)-pkg-config' --libs-only-l pangoft2`" \ + -DENABLE_QT4=ON \ -DWT_CMAKE_FINDER_INSTALL_DIR='/lib/wt' \ -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ '$(1)' diff --git a/src/wxwidgets-1-fixes.patch b/src/wxwidgets-1-fixes.patch deleted file mode 100644 index 33329b6..0000000 --- a/src/wxwidgets-1-fixes.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ./src/msw/textctrl.cpp 2013-01-02 21:47:03.000000000 +0100 -+++ ./src/msw/textctrl.cpp 2013-01-02 21:46:53.000000000 +0100 -@@ -992,7 +992,7 @@ - - EDITSTREAM eds; - wxZeroMemory(eds); -- eds.dwCookie = (DWORD)&data; -+ eds.dwCookie = (DWORD_PTR)&data; - eds.pfnCallback = wxRichEditStreamOut; - - ::SendMessage diff --git a/src/wxwidgets.mk b/src/wxwidgets.mk index 11fc6ba..68f4cd9 100644 --- a/src/wxwidgets.mk +++ b/src/wxwidgets.mk @@ -3,8 +3,8 @@ PKG := wxwidgets $(PKG)_IGNORE := -$(PKG)_VERSION := 2.9.4 -$(PKG)_CHECKSUM := 5a34ddf19d37c741f74652ee847df9568a8b81e1 +$(PKG)_VERSION := 3.0.0 +$(PKG)_CHECKSUM := 756a9c54d1f411e262f03bacb78ccef085a9880a $(PKG)_SUBDIR := wxWidgets-$($(PKG)_VERSION) $(PKG)_FILE := wxWidgets-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/wxwindows/$($(PKG)_VERSION)/$($(PKG)_FILE) @@ -16,20 +16,14 @@ define $(PKG)_UPDATE head -1 endef -define $(PKG)_BUILD - $(SED) -i 's,png_check_sig,png_sig_cmp,g' '$(1)/configure' - $(SED) -i 's,wx_cv_cflags_mthread=yes,wx_cv_cflags_mthread=no,' '$(1)/configure' - cd '$(1)' && ./configure \ +define $(PKG)_CONFIGURE_OPTS --host='$(TARGET)' \ --build="`config.guess`" \ --disable-shared \ --prefix='$(PREFIX)/$(TARGET)' \ - --enable-compat24 \ - --enable-compat26 \ --enable-gui \ - --enable-stl \ + --disable-stl \ --enable-threads \ - --enable-unicode \ --disable-universal \ --with-themes=all \ --with-msw \ @@ -57,68 +51,43 @@ define $(PKG)_BUILD --without-dmalloc \ --without-odbc \ LIBS=" `'$(TARGET)-pkg-config' --libs-only-l libtiff-4`" - $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= - -$(MAKE) -C '$(1)/locale' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= allmo - $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= __install_wxrc___depname= +endef + +define $(PKG)_BUILD_UNICODE + # build the wxWidgets variant with unicode support + mkdir '$(1).unicode' + cd '$(1).unicode' && '$(1)/configure' \ + $($(PKG)_CONFIGURE_OPTS) \ + --enable-unicode + $(MAKE) -C '$(1).unicode' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + -$(MAKE) -C '$(1).unicode/locale' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= allmo + $(MAKE) -C '$(1).unicode' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= __install_wxrc___depname= $(INSTALL) -m755 '$(PREFIX)/$(TARGET)/bin/wx-config' '$(PREFIX)/bin/$(TARGET)-wx-config' +endef +# ansi build has been long deprecated +# so don't build it by default +define $(PKG)_BUILD_ANSI # build the wxWidgets variant without unicode support - cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,wxwidgets) - $(foreach PKG_PATCH,$(sort $(wildcard $(TOP_DIR)/src/wxwidgets-*.patch)), - (cd '$(1)/$(wxwidgets_SUBDIR)' && $(PATCH) -p1 -u) < $(PKG_PATCH)) - $(SED) -i 's,png_check_sig,png_sig_cmp,g' '$(1)/$(wxwidgets_SUBDIR)/configure' - $(SED) -i 's,wx_cv_cflags_mthread=yes,wx_cv_cflags_mthread=no,' '$(1)/$(wxwidgets_SUBDIR)/configure' - cd '$(1)/$(wxwidgets_SUBDIR)' && ./configure \ - --host='$(TARGET)' \ - --build="`config.guess`" \ - --disable-shared \ - --prefix='$(PREFIX)/$(TARGET)' \ - --enable-compat24 \ - --enable-compat26 \ - --enable-gui \ - --enable-stl \ - --enable-threads \ - --disable-unicode \ - --disable-universal \ - --with-themes=all \ - --with-msw \ - --with-opengl \ - --with-libpng=sys \ - --with-libjpeg=sys \ - --with-libtiff=sys \ - --with-regex=yes \ - --with-zlib=sys \ - --with-expat=sys \ - --with-sdl \ - --without-gtk \ - --without-motif \ - --without-mac \ - --without-macosx-sdk \ - --without-cocoa \ - --without-wine \ - --without-pm \ - --without-microwin \ - --without-libxpm \ - --without-libmspack \ - --without-gnomeprint \ - --without-gnomevfs \ - --without-hildon \ - --without-dmalloc \ - --without-odbc \ - LIBS=" `'$(TARGET)-pkg-config' --libs-only-l libtiff-4`" - $(MAKE) -C '$(1)/$(wxwidgets_SUBDIR)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= + mkdir '$(1).ansi' + cd '$(1).ansi' && '$(1)/configure' \ + $($(PKG)_CONFIGURE_OPTS) \ + --disable-unicode + $(MAKE) -C '$(1).ansi' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= # backup of the unicode wx-config script # such that "make install" won't overwrite it mv '$(PREFIX)/$(TARGET)/bin/wx-config' '$(PREFIX)/$(TARGET)/bin/wx-config-backup' - $(MAKE) -C '$(1)/$(wxwidgets_SUBDIR)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= __install_wxrc___depname= + $(MAKE) -C '$(1).ansi' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= __install_wxrc___depname= mv '$(PREFIX)/$(TARGET)/bin/wx-config' '$(PREFIX)/$(TARGET)/bin/wx-config-nounicode' $(INSTALL) -m755 '$(PREFIX)/$(TARGET)/bin/wx-config-nounicode' '$(PREFIX)/bin/$(TARGET)-wx-config-nounicode' # restore the unicode wx-config script mv '$(PREFIX)/$(TARGET)/bin/wx-config-backup' '$(PREFIX)/$(TARGET)/bin/wx-config' +endef +define $(PKG)_TEST # build test program '$(TARGET)-g++' \ -W -Wall -Werror -Wno-error=unused-local-typedefs -pedantic -std=gnu++0x \ @@ -126,5 +95,7 @@ define $(PKG)_BUILD `'$(TARGET)-wx-config' --cflags --libs` endef -$(PKG)_BUILD_i686-w64-mingw32 = -$(PKG)_BUILD_x86_64-w64-mingw32 = +define $(PKG)_BUILD + $($(PKG)_BUILD_UNICODE) + $($(PKG)_TEST) +endef diff --git a/src/x264.mk b/src/x264.mk index a2ee09a..d4d36e5 100644 --- a/src/x264.mk +++ b/src/x264.mk @@ -3,8 +3,8 @@ PKG := x264 $(PKG)_IGNORE := -$(PKG)_VERSION := 20130527-2245 -$(PKG)_CHECKSUM := 768008db411c03afbd74ea808da5a1f57a77fed4 +$(PKG)_VERSION := 20130816-2245 +$(PKG)_CHECKSUM := 34f8d1fbeb3c9642459e34b4e7173d083ff7074a $(PKG)_SUBDIR := $(PKG)-snapshot-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-snapshot-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://download.videolan.org/pub/videolan/$(PKG)/snapshots/$($(PKG)_FILE) @@ -22,7 +22,9 @@ define $(PKG)_BUILD --prefix='$(PREFIX)/$(TARGET)' \ --disable-shared \ --enable-static \ - --enable-win32thread + --enable-win32thread \ + --disable-lavf \ # Avoid circular dependency with ffmpeg. Remove if undesired. + --disable-swscale # Avoid circular dependency with ffmpeg. Remove if undesired. $(MAKE) -C '$(1)' -j 1 uninstall $(MAKE) -C '$(1)' -j '$(JOBS)' $(MAKE) -C '$(1)' -j 1 install diff --git a/src/xvidcore.mk b/src/xvidcore.mk index 662f5f7..d28d366 100644 --- a/src/xvidcore.mk +++ b/src/xvidcore.mk @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 56e065d331545ade04c63c91153b9624b51d6e1b $(PKG)_SUBDIR := xvidcore/build/generic $(PKG)_FILE := xvidcore-$($(PKG)_VERSION).tar.gz $(PKG)_URL := http://downloads.xvid.org/downloads/$($(PKG)_FILE) -$(PKG)_DEPS := gcc pthreads +$(PKG)_DEPS := gcc pthreads yasm define $(PKG)_UPDATE $(WGET) -q -O- 'http://www.xvid.org/' | \ @@ -29,3 +29,8 @@ define $(PKG)_BUILD $(INSTALL) -m644 '$(1)/build/xvidcore.a' '$(PREFIX)/$(TARGET)/lib/' ln -sf '$(PREFIX)/$(TARGET)/lib/xvidcore.a' '$(PREFIX)/$(TARGET)/lib/libxvidcore.a' endef + +define $(PKG)_BUILD_x86_64-w64-mingw32 + $(SED) -i 's,yasm_prog="yasm",yasm_prog="$(TARGET)-yasm -DNO_PREFIX",' '$(1)/configure.in' + $($(PKG)_BUILD) +endef diff --git a/src/zziplib-1-fix-fnmatch.patch b/src/zziplib-1-fix-fnmatch.patch deleted file mode 100644 index ad495ac..0000000 --- a/src/zziplib-1-fix-fnmatch.patch +++ /dev/null @@ -1,16 +0,0 @@ -This file is part of MXE. -See index.html for further information. - -This patch has been taken from: -http://sourceforge.net/tracker/?func=detail&aid=2995373&group_id=6389&atid=306389 - ---- zziplib-0.13.58/zzip/__fnmatch.h 2009-08-23 07:38:22.000000000 -0400 -+++ zziplib-0.13.58/zzip/__fnmatch.h 2010-01-09 13:32:11.311799466 -0500 -@@ -4,6 +4,7 @@ - - #include <zzip/conf.h> - #include <stdio.h> -+#include <string.h> - - #ifdef ZZIP_HAVE_FNMATCH_H - #include <fnmatch.h> diff --git a/src/zziplib-1-fix-mmap.patch b/src/zziplib-1-fix-mmap.patch new file mode 100644 index 0000000..f95a691 --- /dev/null +++ b/src/zziplib-1-fix-mmap.patch @@ -0,0 +1,37 @@ +This file is part of MXE. +See index.html for further information. + +This patch has been taken from: +http://sourceforge.net/tracker/?func=detail&aid=2995373&group_id=6389&atid=306389 + +--- zziplib-0.13.59/zzip/__mmap.h 2013-10-03 22:23:32.467619238 -0400 ++++ zzip-patched/zzip/__mmap.h 2013-10-04 21:44:16.412881609 -0400 +@@ -63,14 +63,15 @@ + return 0; + { + HANDLE hFile = (HANDLE)_get_osfhandle(fd); ++ HANDLE fileMapping = NULL; + if (hFile) +- *user = (int) CreateFileMapping (hFile, 0, PAGE_READONLY, 0, 0, NULL); +- if (*user) ++ fileMapping = CreateFileMapping(hFile, 0, PAGE_READONLY, 0, 0, NULL); ++ if (fileMapping != NULL) + { + char* p = 0; +- p = MapViewOfFile(*(HANDLE*)user, FILE_MAP_READ, 0, offs, len); +- if (p) return p + offs; +- CloseHandle (*(HANDLE*)user); *user = 1; ++ p = MapViewOfFile(fileMapping, FILE_MAP_READ, 0, offs, len); ++ CloseHandle (fileMapping); ++ if (p) return p; + } + return MAP_FAILED; + } +@@ -78,7 +79,6 @@ + static void win32_munmap (long* user, char* fd_map, size_t len) + { + UnmapViewOfFile (fd_map); +- CloseHandle (*(HANDLE*)user); *user = 1; + } + + #define _zzip_mmap(user, fd, offs, len) \ diff --git a/src/zziplib.mk b/src/zziplib.mk index 1903731..a104985 100644 --- a/src/zziplib.mk +++ b/src/zziplib.mk @@ -3,17 +3,19 @@ PKG := zziplib $(PKG)_IGNORE := -$(PKG)_VERSION := 0.13.59 -$(PKG)_CHECKSUM := ddbce25cb36c3b4c2b892e2c8a88fa4a0be29a71 +$(PKG)_VERSION := 0.13.62 +$(PKG)_CHECKSUM := cf8b642abd9db618324a1b98cc71492a007cd687 $(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) $(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)$(word 2,$(subst ., ,$($(PKG)_VERSION)))/$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_DEPS := gcc zlib define $(PKG)_UPDATE - $(WGET) -q -O- 'http://sourceforge.net/projects/zziplib/files/' | \ - $(SED) -n 's,.*zziplib-\([0-9][^>]*\)\.tar.*,\1,p' | \ - head -1 + $(WGET) -q -O- 'http://sourceforge.net/p/zziplib/svn/HEAD/tree/tags/' | \ + $(SED) -n 's,.*<a href="V_\([0-9][^"]*\)">.*,\1,p' | \ + tr '_' '.' | \ + $(SORT) -V | \ + tail -1 endef define $(PKG)_BUILD @@ -21,9 +23,9 @@ define $(PKG)_BUILD (echo '# DISABLED'; echo 'all:'; echo 'install:') > '$(1)/docs/Makefile.in' cd '$(1)' && ./configure \ --host='$(TARGET)' \ - --disable-mmap \ --disable-shared \ --prefix='$(PREFIX)/$(TARGET)' \ + CFLAGS="-O -ggdb" \ PKG_CONFIG='$(TARGET)-pkg-config' $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= diff --git a/tools/config.guess b/tools/config.guess new file mode 100755 index 0000000..b79252d --- /dev/null +++ b/tools/config.guess @@ -0,0 +1,1558 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright 1992-2013 Free Software Foundation, Inc. + +timestamp='2013-06-10' + +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see <http://www.gnu.org/licenses/>. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). +# +# Originally written by Per Bothner. +# +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD +# +# Please send patches with a ChangeLog entry to config-patches@gnu.org. + + +me=`echo "$0" | sed -e 's,.*/,,'` + +usage="\ +Usage: $0 [OPTION] + +Output the configuration name of the system \`$me' is run on. + +Operation modes: + -h, --help print this help, then exit + -t, --time-stamp print date of last modification, then exit + -v, --version print version number, then exit + +Report bugs and patches to <config-patches@gnu.org>." + +version="\ +GNU config.guess ($timestamp) + +Originally written by Per Bothner. +Copyright 1992-2013 Free Software Foundation, Inc. + +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + +help=" +Try \`$me --help' for more information." + +# Parse command line +while test $# -gt 0 ; do + case $1 in + --time-stamp | --time* | -t ) + echo "$timestamp" ; exit ;; + --version | -v ) + echo "$version" ; exit ;; + --help | --h* | -h ) + echo "$usage"; exit ;; + -- ) # Stop option processing + shift; break ;; + - ) # Use stdin as input. + break ;; + -* ) + echo "$me: invalid option $1$help" >&2 + exit 1 ;; + * ) + break ;; + esac +done + +if test $# != 0; then + echo "$me: too many arguments$help" >&2 + exit 1 +fi + +trap 'exit 1' 1 2 15 + +# CC_FOR_BUILD -- compiler used by this script. Note that the use of a +# compiler to aid in system detection is discouraged as it requires +# temporary files to be created and, as you can see below, it is a +# headache to deal with in a portable fashion. + +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still +# use `HOST_CC' if defined, but it is deprecated. + +# Portable tmp directory creation inspired by the Autoconf team. + +set_cc_for_build=' +trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; +trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; +: ${TMPDIR=/tmp} ; + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; +dummy=$tmp/dummy ; +tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; +case $CC_FOR_BUILD,$HOST_CC,$CC in + ,,) echo "int x;" > $dummy.c ; + for c in cc gcc c89 c99 ; do + if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then + CC_FOR_BUILD="$c"; break ; + fi ; + done ; + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found ; + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; +esac ; set_cc_for_build= ;' + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 1994-08-24) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +case "${UNAME_SYSTEM}" in +Linux|GNU|GNU/*) + # If the system lacks a compiler, then just pick glibc. + # We could probably try harder. + LIBC=gnu + + eval $set_cc_for_build + cat <<-EOF > $dummy.c + #include <features.h> + #if defined(__UCLIBC__) + LIBC=uclibc + #elif defined(__dietlibc__) + LIBC=dietlibc + #else + LIBC=gnu + #endif + EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` + ;; +esac + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # NetBSD (nbsd) targets should (where applicable) match one or + # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # + # Note: NetBSD doesn't particularly care about the vendor + # portion of the name. We always set it to "unknown". + sysctl="sysctl -n hw.machine_arch" + UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ + /usr/sbin/$sysctl 2>/dev/null || echo unknown)` + case "${UNAME_MACHINE_ARCH}" in + armeb) machine=armeb-unknown ;; + arm*) machine=arm-unknown ;; + sh3el) machine=shl-unknown ;; + sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; + *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + esac + # The Operating System including object format, if it has switched + # to ELF recently, or will in the future. + case "${UNAME_MACHINE_ARCH}" in + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ELF__ + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + ;; + *) + os=netbsd + ;; + esac + # The OS release + # Debian GNU/NetBSD machines have a different userland, and + # thus, need a distinct triplet. However, they do not need + # kernel version information, so it can be replaced with a + # suitable tag, in the style of linux-gnu. + case "${UNAME_VERSION}" in + Debian*) + release='-gnu' + ;; + *) + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + ;; + esac + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit ;; + *:Bitrig:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} + exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + exit ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + exit ;; + *:SolidBSD:*:*) + echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + exit ;; + macppc:MirBSD:*:*) + echo powerpc-unknown-mirbsd${UNAME_RELEASE} + exit ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + exit ;; + alpha:OSF1:*:*) + case $UNAME_RELEASE in + *4.0) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` + ;; + *5.*) + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + ;; + esac + # According to Compaq, /usr/sbin/psrinfo has been available on + # OSF/1 and Tru64 systems produced since 1995. I hope that + # covers most systems running today. This code pipes the CPU + # types through head -n 1, so we only detect the type of CPU 0. + ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` + case "$ALPHA_CPU_TYPE" in + "EV4 (21064)") + UNAME_MACHINE="alpha" ;; + "EV4.5 (21064)") + UNAME_MACHINE="alpha" ;; + "LCA4 (21066/21068)") + UNAME_MACHINE="alpha" ;; + "EV5 (21164)") + UNAME_MACHINE="alphaev5" ;; + "EV5.6 (21164A)") + UNAME_MACHINE="alphaev56" ;; + "EV5.6 (21164PC)") + UNAME_MACHINE="alphapca56" ;; + "EV5.7 (21164PC)") + UNAME_MACHINE="alphapca57" ;; + "EV6 (21264)") + UNAME_MACHINE="alphaev6" ;; + "EV6.7 (21264A)") + UNAME_MACHINE="alphaev67" ;; + "EV6.8CB (21264C)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8AL (21264B)") + UNAME_MACHINE="alphaev68" ;; + "EV6.8CX (21264D)") + UNAME_MACHINE="alphaev68" ;; + "EV6.9A (21264/EV69A)") + UNAME_MACHINE="alphaev69" ;; + "EV7 (21364)") + UNAME_MACHINE="alphaev7" ;; + "EV7.9 (21364A)") + UNAME_MACHINE="alphaev79" ;; + esac + # A Pn.n version is a patched version. + # A Vn.n version is a released version. + # A Tn.n version is a released field test version. + # A Xn.n version is an unreleased experimental baselevel. + # 1.2 uses "1.2" for uname -r. + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + # Reset EXIT trap before exiting to avoid spurious non-zero exit code. + exitcode=$? + trap '' 0 + exit $exitcode ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix + exit ;; + 21064:Windows_NT:50:3) + echo alpha-dec-winnt3.5 + exit ;; + Amiga*:UNIX_System_V:4.0:*) + echo m68k-unknown-sysv4 + exit ;; + *:[Aa]miga[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-amigaos + exit ;; + *:[Mm]orph[Oo][Ss]:*:*) + echo ${UNAME_MACHINE}-unknown-morphos + exit ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit ;; + *:z/VM:*:*) + echo s390-ibm-zvmoe + exit ;; + *:OS400:*:*) + echo powerpc-ibm-os400 + exit ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit ;; + arm*:riscos:*:*|arm*:RISCOS:*:*) + echo arm-unknown-riscos + exit ;; + SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) + echo hppa1.1-hitachi-hiuxmpp + exit ;; + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) + # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit ;; + NILE*:*:*:dcosx) + echo pyramid-pyramid-svr4 + exit ;; + DRS?6000:unix:4.0:6*) + echo sparc-icl-nx6 + exit ;; + DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) + case `/usr/bin/uname -p` in + sparc) echo sparc-icl-nx7; exit ;; + esac ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4H:SunOS:5.*:*) + echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) + echo i386-pc-auroraux${UNAME_RELEASE} + exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval $set_cc_for_build + SUN_ARCH="i386" + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH="x86_64" + fi + fi + echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit ;; + sun*:*:4.2BSD:*) + UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` + test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 + case "`/bin/arch`" in + sun3) + echo m68k-sun-sunos${UNAME_RELEASE} + ;; + sun4) + echo sparc-sun-sunos${UNAME_RELEASE} + ;; + esac + exit ;; + aushp:SunOS:*:*) + echo sparc-auspex-sunos${UNAME_RELEASE} + exit ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit ;; + m68k:machten:*:*) + echo m68k-apple-machten${UNAME_RELEASE} + exit ;; + powerpc:machten:*:*) + echo powerpc-apple-machten${UNAME_RELEASE} + exit ;; + RISC*:Mach:*:*) + echo mips-dec-mach_bsd4.3 + exit ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit ;; + 2020:CLIX:*:* | 2430:CLIX:*:*) + echo clipper-intergraph-clix${UNAME_RELEASE} + exit ;; + mips:*:*:UMIPS | mips:*:*:RISCos) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus +#include <stdio.h> /* for printf() prototype */ + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif + #if defined (host_mips) && defined (MIPSEB) + #if defined (SYSTYPE_SYSV) + printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_SVR4) + printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); + #endif + #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) + printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); + #endif + #endif + exit (-1); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && + dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`$dummy $dummyarg` && + { echo "$SYSTEM_NAME"; exit; } + echo mips-mips-riscos${UNAME_RELEASE} + exit ;; + Motorola:PowerMAX_OS:*:*) + echo powerpc-motorola-powermax + exit ;; + Motorola:*:4.3:PL8-*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) + echo powerpc-harris-powermax + exit ;; + Night_Hawk:Power_UNIX:*:*) + echo powerpc-harris-powerunix + exit ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit ;; + AViiON:dgux:*:*) + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} + fi + exit ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i*86:AIX:*:*) + echo i386-ibm-aix + exit ;; + ia64:AIX:*:*) + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + exit ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include <sys/systemcfg.h> + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + then + echo "$SYSTEM_NAME" + else + echo rs6000-ibm-aix3.2.5 + fi + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit ;; + *:AIX:*:[4567]) + IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` + if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if [ -x /usr/bin/oslevel ] ; then + IBM_REV=`/usr/bin/oslevel` + else + IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit ;; + 9000/[34678]??:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/[678][0-9][0-9]) + if [ -x /usr/bin/getconf ]; then + sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; + '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 + esac ;; + esac + fi + if [ "${HP_ARCH}" = "" ]; then + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE + #include <stdlib.h> + #include <unistd.h> + + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); + + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } +EOF + (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + test -z "$HP_ARCH" && HP_ARCH=hppa + fi ;; + esac + if [ ${HP_ARCH} = "hppa2.0w" ] + then + eval $set_cc_for_build + + # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating + # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler + # generating 64-bit code. GNU and HP use different nomenclature: + # + # $ CC_FOR_BUILD=cc ./config.guess + # => hppa2.0w-hp-hpux11.23 + # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess + # => hppa64-hp-hpux11.23 + + if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | + grep -q __LP64__ + then + HP_ARCH="hppa2.0w" + else + HP_ARCH="hppa64" + fi + fi + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit ;; + ia64:HP-UX:*:*) + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux${HPUX_REV} + exit ;; + 3050*:HI-UX:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #include <unistd.h> + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + echo unknown-hitachi-hiuxwe2 + exit ;; + 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit ;; + *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit ;; + hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) + echo hppa1.1-hp-osf + exit ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit ;; + i*86:OSF1:*:*) + if [ -x /usr/sbin/sysversion ] ; then + echo ${UNAME_MACHINE}-unknown-osf1mk + else + echo ${UNAME_MACHINE}-unknown-osf1 + fi + exit ;; + parisc*:Lites*:*:*) + echo hppa1.1-hp-lites + exit ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit ;; + CRAY*Y-MP:*:*:*) + echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*[A-Z]90:*:*:*) + echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ + -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ + -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*TS:*:*:*) + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*T3E:*:*:*) + echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + *:UNICOS/mp:*:*) + echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit ;; + F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) + FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + 5000:UNIX_System_V:4.*:*) + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; + i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit ;; + sparc*:BSD/OS:*:*) + echo sparc-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit ;; + *:FreeBSD:*:*) + UNAME_PROCESSOR=`/usr/bin/uname -p` + case ${UNAME_PROCESSOR} in + amd64) + echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + *) + echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + esac + exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit ;; + *:MINGW64*:*) + echo ${UNAME_MACHINE}-pc-mingw64 + exit ;; + *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit ;; + i*:MSYS*:*) + echo ${UNAME_MACHINE}-pc-msys + exit ;; + i*:windows32*:*) + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 + exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit ;; + *:Interix*:*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + authenticamd | genuineintel | EM64T) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + IA64) + echo ia64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks + exit ;; + 8664:Windows_NT:*) + echo x86_64-pc-mks + exit ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i586-pc-interix + exit ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit ;; + amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) + echo x86_64-unknown-cygwin + exit ;; + p*:CYGWIN*:*) + echo powerpcle-unknown-cygwin + exit ;; + prep*:SunOS:5.*:*) + echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + *:GNU:*:*) + # the GNU system + echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit ;; + *:GNU/*:*:*) + # other systems with GNU libc and userland + echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} + exit ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit ;; + aarch64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + aarch64_be:Linux:*:*) + UNAME_MACHINE=aarch64_be + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + alpha:Linux:*:*) + case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in + EV5) UNAME_MACHINE=alphaev5 ;; + EV56) UNAME_MACHINE=alphaev56 ;; + PCA56) UNAME_MACHINE=alphapca56 ;; + PCA57) UNAME_MACHINE=alphapca56 ;; + EV6) UNAME_MACHINE=alphaev6 ;; + EV67) UNAME_MACHINE=alphaev67 ;; + EV68*) UNAME_MACHINE=alphaev68 ;; + esac + objdump --private-headers /bin/sh | grep -q ld.so.1 + if test "$?" = 0 ; then LIBC="gnulibc1" ; fi + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + arc:Linux:*:* | arceb:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + arm*:Linux:*:*) + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + else + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi + else + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf + fi + fi + exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + cris:Linux:*:*) + echo ${UNAME_MACHINE}-axis-linux-${LIBC} + exit ;; + crisv32:Linux:*:*) + echo ${UNAME_MACHINE}-axis-linux-${LIBC} + exit ;; + frv:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + hexagon:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + i*86:Linux:*:*) + echo ${UNAME_MACHINE}-pc-linux-${LIBC} + exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + mips:Linux:*:* | mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=${UNAME_MACHINE}el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=${UNAME_MACHINE} + #else + CPU= + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + ;; + or1k:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + or32:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-${LIBC} + exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-${LIBC} + exit ;; + parisc:Linux:*:* | hppa:Linux:*:*) + # Look for CPU level + case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in + PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; + PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; + *) echo hppa-unknown-linux-${LIBC} ;; + esac + exit ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-${LIBC} + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-${LIBC} + exit ;; + ppc64le:Linux:*:*) + echo powerpc64le-unknown-linux-${LIBC} + exit ;; + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-${LIBC} + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux-${LIBC} + exit ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + tile*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + vax:Linux:*:*) + echo ${UNAME_MACHINE}-dec-linux-${LIBC} + exit ;; + x86_64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + i*86:DYNIX/ptx:4*:*) + # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. + # earlier versions are messed up and put the nodename in both + # sysname and nodename. + echo i386-sequent-sysv4 + exit ;; + i*86:UNIX_SV:4.2MP:2.*) + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, + # I just have to hope. -- rms. + # Use sysv4.2uw... so that sysv4* matches it. + echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + exit ;; + i*86:OS/2:*:*) + # If we were able to find `uname', then EMX Unix compatibility + # is probably installed. + echo ${UNAME_MACHINE}-pc-os2-emx + exit ;; + i*86:XTS-300:*:STOP) + echo ${UNAME_MACHINE}-unknown-stop + exit ;; + i*86:atheos:*:*) + echo ${UNAME_MACHINE}-unknown-atheos + exit ;; + i*86:syllable:*:*) + echo ${UNAME_MACHINE}-pc-syllable + exit ;; + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) + echo i386-unknown-lynxos${UNAME_RELEASE} + exit ;; + i*86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit ;; + i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit ;; + i*86:*:5:[678]*) + # UnixWare 7.x, OpenUNIX and OpenServer 6. + case `/bin/uname -X | grep "^Machine"` in + *486*) UNAME_MACHINE=i486 ;; + *Pentium) UNAME_MACHINE=i586 ;; + *Pent*|*Celeron) UNAME_MACHINE=i686 ;; + esac + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + exit ;; + i*86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` + echo ${UNAME_MACHINE}-pc-isc$UNAME_REL + elif /bin/uname -X 2>/dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` + (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 + (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ + && UNAME_MACHINE=i586 + (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 + echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-pc-sysv32 + fi + exit ;; + pc:*:*:*) + # Left here for compatibility: + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp + exit ;; + Intel:Mach:3*:*) + echo i386-pc-mach3 + exit ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit ;; + mc68k:UNIX:SYSTEM5:3.51m) + echo m68k-convergent-sysv + exit ;; + M680?0:D-NIX:5.3:*) + echo m68k-diab-dnix + exit ;; + M68*:*:R3V[5678]*:*) + test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; + 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) + OS_REL='' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) + echo m68k-unknown-lynxos${UNAME_RELEASE} + exit ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit ;; + TSUNAMI:LynxOS:2.*:*) + echo sparc-unknown-lynxos${UNAME_RELEASE} + exit ;; + rs6000:LynxOS:2.*:*) + echo rs6000-unknown-lynxos${UNAME_RELEASE} + exit ;; + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) + echo powerpc-unknown-lynxos${UNAME_RELEASE} + exit ;; + SM[BE]S:UNIX_SV:*:*) + echo mips-dde-sysv${UNAME_RELEASE} + exit ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says <Richard.M.Bartel@ccMail.Census.GOV> + echo i586-unisys-sysv4 + exit ;; + *:UNIX_System_V:4*:FTX*) + # From Gerald Hewes <hewes@openmarket.com>. + # How about differentiating between stratus architectures? -djm + echo hppa1.1-stratus-sysv4 + exit ;; + *:*:*:FTX*) + # From seanf@swdc.stratus.com. + echo i860-stratus-sysv4 + exit ;; + i*86:VOS:*:*) + # From Paul.Green@stratus.com. + echo ${UNAME_MACHINE}-stratus-vos + exit ;; + *:VOS:*:*) + # From Paul.Green@stratus.com. + echo hppa1.1-stratus-vos + exit ;; + mc68*:A/UX:*:*) + echo m68k-apple-aux${UNAME_RELEASE} + exit ;; + news*:NEWS-OS:6*:*) + echo mips-sony-newsos6 + exit ;; + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) + if [ -d /usr/nec ]; then + echo mips-nec-sysv${UNAME_RELEASE} + else + echo mips-unknown-sysv${UNAME_RELEASE} + fi + exit ;; + BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. + echo powerpc-be-beos + exit ;; + BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. + echo powerpc-apple-beos + exit ;; + BePC:BeOS:*:*) # BeOS running on Intel PC compatible. + echo i586-pc-beos + exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; + x86_64:Haiku:*:*) + echo x86_64-unknown-haiku + exit ;; + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit ;; + SX-6:SUPER-UX:*:*) + echo sx6-nec-superux${UNAME_RELEASE} + exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit ;; + *:Darwin:*:*) + UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown + eval $set_cc_for_build + if test "$UNAME_PROCESSOR" = unknown ; then + UNAME_PROCESSOR=powerpc + fi + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi + fi + echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} + exit ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + UNAME_PROCESSOR=`uname -p` + if test "$UNAME_PROCESSOR" = "x86"; then + UNAME_PROCESSOR=i386 + UNAME_MACHINE=pc + fi + echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} + exit ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit ;; + NEO-?:NONSTOP_KERNEL:*:*) + echo neo-tandem-nsk${UNAME_RELEASE} + exit ;; + NSE-*:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; + NSR-?:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit ;; + *:NonStop-UX:*:*) + echo mips-compaq-nonstopux + exit ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit ;; + *:Plan9:*:*) + # "uname -m" is not consistent, so use $cputype instead. 386 + # is converted to i386 for consistency with other x86 + # operating systems. + if test "$cputype" = "386"; then + UNAME_MACHINE=i386 + else + UNAME_MACHINE="$cputype" + fi + echo ${UNAME_MACHINE}-unknown-plan9 + exit ;; + *:TOPS-10:*:*) + echo pdp10-unknown-tops10 + exit ;; + *:TENEX:*:*) + echo pdp10-unknown-tenex + exit ;; + KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) + echo pdp10-dec-tops20 + exit ;; + XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) + echo pdp10-xkl-tops20 + exit ;; + *:TOPS-20:*:*) + echo pdp10-unknown-tops20 + exit ;; + *:ITS:*:*) + echo pdp10-unknown-its + exit ;; + SEI:*:*:SEIUX) + echo mips-sei-seiux${UNAME_RELEASE} + exit ;; + *:DragonFly:*:*) + echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit ;; + *:*VMS:*:*) + UNAME_MACHINE=`(uname -p) 2>/dev/null` + case "${UNAME_MACHINE}" in + A*) echo alpha-dec-vms ; exit ;; + I*) echo ia64-dec-vms ; exit ;; + V*) echo vax-dec-vms ; exit ;; + esac ;; + *:XENIX:*:SysV) + echo i386-pc-xenix + exit ;; + i*86:skyos:*:*) + echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' + exit ;; + i*86:rdos:*:*) + echo ${UNAME_MACHINE}-pc-rdos + exit ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; + x86_64:VMkernel:*:*) + echo ${UNAME_MACHINE}-unknown-esx + exit ;; +esac + +eval $set_cc_for_build +cat >$dummy.c <<EOF +#ifdef _SEQUENT_ +# include <sys/types.h> +# include <sys/utsname.h> +#endif +main () +{ +#if defined (sony) +#if defined (MIPSEB) + /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, + I don't know.... */ + printf ("mips-sony-bsd\n"); exit (0); +#else +#include <sys/param.h> + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix\n"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-pc-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + struct utsname un; + + uname(&un); + + if (strncmp(un.version, "V2", 2) == 0) { + printf ("i386-sequent-ptx2\n"); exit (0); + } + if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ + printf ("i386-sequent-ptx1\n"); exit (0); + } + printf ("i386-sequent-ptx\n"); exit (0); + +#endif + +#if defined (vax) +# if !defined (ultrix) +# include <sys/param.h> +# if defined (BSD) +# if BSD == 43 + printf ("vax-dec-bsd4.3\n"); exit (0); +# else +# if BSD == 199006 + printf ("vax-dec-bsd4.3reno\n"); exit (0); +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# endif +# else + printf ("vax-dec-bsd\n"); exit (0); +# endif +# else + printf ("vax-dec-ultrix\n"); exit (0); +# endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && + { echo "$SYSTEM_NAME"; exit; } + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit ;; + c34*) + echo c34-convex-bsd + exit ;; + c38*) + echo c38-convex-bsd + exit ;; + c4*) + echo c4-convex-bsd + exit ;; + esac +fi + +cat >&2 <<EOF +$0: unable to guess system type + +This script, last modified $timestamp, has failed to recognize +the operating system you are using. It is advised that you +download the most up to date version of the config scripts from + + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD +and + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD + +If the version you run ($0) is already up to date, please +send the following data and any information you think might be +pertinent to <config-patches@gnu.org> in order to provide the needed +information to handle your system. + +config.guess timestamp = $timestamp + +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null` + +hostinfo = `(hostinfo) 2>/dev/null` +/bin/universe = `(/bin/universe) 2>/dev/null` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` +/bin/arch = `(/bin/arch) 2>/dev/null` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` + +UNAME_MACHINE = ${UNAME_MACHINE} +UNAME_RELEASE = ${UNAME_RELEASE} +UNAME_SYSTEM = ${UNAME_SYSTEM} +UNAME_VERSION = ${UNAME_VERSION} +EOF + +exit 1 + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "timestamp='" +# time-stamp-format: "%:y-%02m-%02d" +# time-stamp-end: "'" +# End: diff --git a/tools/freebsd-excludes b/tools/freebsd-excludes deleted file mode 100755 index b94e248..0000000 --- a/tools/freebsd-excludes +++ /dev/null @@ -1,35 +0,0 @@ -gmake \ -gtksourceviewmm2_BUILD_x86_64-w64-mingw32= \ -graphicsmagick_BUILD= \ -openexr_BUILD= \ -opencv_BUILD= \ -pcl_BUILD= \ -vigra_BUILD= \ -vtk6_BUILD= \ -qwt_BUILD= \ -ocaml-cairo_BUILD= \ -ocaml-findlib_BUILD= \ -ocaml-lablgtk2_BUILD= \ -ocaml-camlimages_BUILD= \ -ocaml-flexdll_BUILD= \ -ocaml-native_BUILD= \ -ocaml-core_BUILD= \ -ocaml-lablgl_BUILD= \ -ocaml-xml-light_BUILD= \ -qtactiveqt_BUILD= \ -qtbase_BUILD= \ -qtdeclarative_BUILD= \ -qtgraphicaleffects_BUILD= \ -qtimageformats_BUILD= \ -qtjsbackend_BUILD= \ -qtmultimedia_BUILD= \ -qtquickcontrols_BUILD= \ -qtquick1_BUILD= \ -qtscript_BUILD= \ -qtsensors_BUILD= \ -qtserialport_BUILD= \ -qtsvg_BUILD= \ -qttools_BUILD= \ -qttranslations_BUILD= \ -qtxmlpatterns_BUILD= \ --j4 -k diff --git a/tools/mxe-activate b/tools/mxe-activate index d7b80ca..9ab7c9e 100644 --- a/tools/mxe-activate +++ b/tools/mxe-activate @@ -1,5 +1,6 @@ export MXE_DIR=`pwd` -export PATH=$MXE_DIR/usr/bin:$PATH +export BUILD=`$MXE_DIR/tools/config.guess` +export PATH=$MXE_DIR/usr/$BUILD/bin:$MXE_DIR/usr/bin:$PATH MAKE=`gmake --help >/dev/null 2>&1 && echo g`make SED=`gsed --help >/dev/null 2>&1 && echo g`sed MXE_TARGET_LIST="`grep 'MXE_TARGET_LIST.*:=' Makefile | $SED -n 's,^.*:= \(.*\)$,\1,p'`" @@ -43,8 +44,14 @@ _mxe() COMPREPLY=( $(compgen -W "${_pkgs}" -- ${cur}) ) return 0 ;; + show-*deps-*) + local base=`echo ${cur} | $SED -n 's,\(show.*deps-\).*,\1,p'` + local _pkgs=$( for x in ${pkgs}; do echo $base${x} ; done ) + COMPREPLY=( $(compgen -W "${_pkgs}" -- ${cur}) ) + return 0 + ;; [!-]*) - pkgs+=" build-only- check-requirements clean clean-pkg download download- update-checksum-" + pkgs+=" build-only- check-requirements clean clean-pkg download download- update-checksum- show-deps- show-downstream-deps- show-upstream-deps-" COMPREPLY=( $(compgen -W "${pkgs}" -- ${cur}) ) return 0 ;; diff --git a/tools/patch-tool-mxe b/tools/patch-tool-mxe index 208655a..9c3c383 100755 --- a/tools/patch-tool-mxe +++ b/tools/patch-tool-mxe @@ -19,7 +19,8 @@ setupEnv() { # John Doe <John Doe@acme.org> export author=`git var GIT_AUTHOR_IDENT | sed 's/^\(.* [<].*[>]\).*$/\1/'` - export pkg_version=$(sed -n "s/^.* id=\"${pkg}-version\">\([^<]*\)<.*$/\1/p" "${mxedir}/index.html") + export pkg_version=`grep '^$(PKG)_VERSION' $mxedir/src/$pkg.mk | \ + sed 's/.*:= \(.*\)/\1/'` export pkg_short_version=`echo $pkg_version | sed s/'\(.*\)\.[^.]*$'/'\1'/` |