Merge all well-tested changes into the stable branch

This commit is contained in:
Volker Grabsch 2012-04-12 17:23:12 +02:00
commit 1f86817ee8
365 changed files with 89389 additions and 7053 deletions

5
.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
usr/
log/
pkg/
dist/
wip/

View File

@ -2,3 +2,4 @@
^log($|/)
^pkg($|/)
^dist($|/)
^wip($|/)

1
CNAME Normal file
View File

@ -0,0 +1 @@
mxe.cc

153
Makefile
View File

@ -1,11 +1,24 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
JOBS := 1
TARGET := i686-pc-mingw32
SOURCEFORGE_MIRROR := kent.dl.sourceforge.net
PWD := $(shell pwd)
SHELL := bash
INSTALL := $(shell ginstall --help >/dev/null 2>&1 && echo g)install
LIBTOOL := $(shell glibtool --help >/dev/null 2>&1 && echo g)libtool
LIBTOOLIZE := $(shell glibtoolize --help >/dev/null 2>&1 && echo g)libtoolize
PATCH := $(shell gpatch --help >/dev/null 2>&1 && echo g)patch
SED := $(shell gsed --help >/dev/null 2>&1 && echo g)sed
REQUIREMENTS := autoconf automake bash bison bzip2 cmake flex \
gcc intltoolize $(LIBTOOL) $(LIBTOOLIZE) \
$(MAKE) openssl $(PATCH) $(PERL) pkg-config \
scons $(SED) unzip wget xz yasm
PREFIX := $(PWD)/usr
LOG_DIR := $(PWD)/log
TIMESTAMP := $(shell date +%Y%m%d_%H%M%S)
@ -14,21 +27,10 @@ DIST_DIR := $(PWD)/dist
TMP_DIR = $(PWD)/tmp-$(1)
MAKEFILE := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
TOP_DIR := $(patsubst %/,%,$(dir $(MAKEFILE)))
PKGS := $(shell $(SED) -n 's/^.* id="\([^"]*\)-package".*$$/\1/p' '$(TOP_DIR)/index.html')
PATH := $(PREFIX)/bin:$(PATH)
SHELL := bash
INSTALL := $(shell ginstall --help >/dev/null 2>&1 && echo g)install
LIBTOOL := $(shell glibtool --help >/dev/null 2>&1 && echo g)libtool
LIBTOOLIZE := $(shell glibtoolize --help >/dev/null 2>&1 && echo g)libtoolize
PATCH := $(shell gpatch --help >/dev/null 2>&1 && echo g)patch
SED := $(shell gsed --help >/dev/null 2>&1 && echo g)sed
VERSION := $(shell $(SED) -n 's,^.*<span id="latest-version">\([^<]*\)</span>.*$$,\1,p' '$(TOP_DIR)/doc/index.html')
REQUIREMENTS := autoconf automake bash bison bzip2 cmake flex \
gcc intltoolize $(LIBTOOL) $(LIBTOOLIZE) \
$(MAKE) openssl $(PATCH) $(PERL) pkg-config \
scons $(SED) unzip wget xz yasm
CMAKE_TOOLCHAIN_FILE := $(PREFIX)/$(TARGET)/share/cmake/mingw-cross-env-conf.cmake
CMAKE_TOOLCHAIN_FILE := $(PREFIX)/$(TARGET)/share/cmake/mxe-conf.cmake
# unexport any environment variables that might cause trouble
unexport AR CC CFLAGS C_INCLUDE_PATH CPATH CPLUS_INCLUDE_PATH CPP
@ -39,9 +41,6 @@ unexport OBJC_INCLUDE_PATH PKG_CONFIG QMAKESPEC RANLIB STRIP
SHORT_PKG_VERSION = \
$(word 1,$(subst ., ,$($(1)_VERSION))).$(word 2,$(subst ., ,$($(1)_VERSION)))
PKGS := $(sort $(patsubst $(TOP_DIR)/src/%.mk,%,$(wildcard $(TOP_DIR)/src/*.mk)))
include $(TOP_DIR)/src/*.mk
UNPACK_ARCHIVE = \
$(if $(filter %.tgz, $(1)),tar xzf '$(1)', \
$(if $(filter %.tar.gz, $(1)),tar xzf '$(1)', \
@ -79,7 +78,19 @@ define CHECK_REQUIREMENT
echo; \
echo 'Missing requirement: $(1)'; \
echo; \
echo 'Please have a look at "doc/index.html" to ensure'; \
echo 'Please have a look at "index.html" to ensure'; \
echo 'that your system meets all requirements.'; \
echo; \
exit 1; \
fi
endef
define CHECK_REQUIREMENT_VERSION
@if ! $(1) --version | head -1 | grep ' \($(2)\)$$' >/dev/null; then \
echo; \
echo 'Wrong version of requirement: $(1)'; \
echo; \
echo 'Please have a look at "index.html" to ensure'; \
echo 'that your system meets all requirements.'; \
echo; \
exit 1; \
@ -90,9 +101,23 @@ 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][0-9]\.[0-9]\+)
@[ -d '$(PREFIX)/installed' ] || mkdir -p '$(PREFIX)/installed'
@touch '$@'
define newline
endef
$(eval $(subst #,$(newline),$(shell \
$(SED) -n \
's/^.* id="\([A-Za-z0-9_+-]*\)-version">\([^<]*\)<.*$$/\1_VERSION := \2#/p' \
'$(TOP_DIR)/index.html' \
)))
include $(patsubst %,$(TOP_DIR)/src/%.mk,$(PKGS))
.PHONY: download
download: $(addprefix download-,$(PKGS))
@ -154,6 +179,7 @@ build-only-$(1):
$(foreach PKG_PATCH,$(sort $(wildcard $(TOP_DIR)/src/$(1)-*.patch)),
(cd '$(2)/$($(1)_SUBDIR)' && $(PATCH) -p1 -u) < $(PKG_PATCH))
$$(call $(1)_BUILD,$(2)/$($(1)_SUBDIR),$(TOP_DIR)/src/$(1)-test)
(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)/installed' ] || mkdir -p '$(PREFIX)/installed'
@ -161,30 +187,6 @@ build-only-$(1):
endef
$(foreach PKG,$(PKGS),$(eval $(call PKG_RULE,$(PKG),$(call TMP_DIR,$(PKG)))))
.PHONY: strip
strip:
rm -rf \
'$(PREFIX)/include' \
'$(PREFIX)/info' \
'$(PREFIX)/lib/libiberty.a' \
'$(PREFIX)/man' \
'$(PREFIX)/share' \
'$(PREFIX)/$(TARGET)/etc' \
'$(PREFIX)/$(TARGET)/doc' \
'$(PREFIX)/$(TARGET)/info' \
'$(PREFIX)/$(TARGET)/lib'/*.def \
'$(PREFIX)/$(TARGET)/man' \
'$(PREFIX)/$(TARGET)/sbin'
-strip -Sx \
'$(PREFIX)/bin'/* \
'$(PREFIX)/libexec/gcc/$(TARGET)'/*/* \
'$(PREFIX)/$(TARGET)/bin'/*
-$(TARGET)-strip -S \
'$(PREFIX)/lib/gcc/$(TARGET)'/*/*.a \
'$(PREFIX)/lib/gcc/$(TARGET)'/*/*.o \
'$(PREFIX)/$(TARGET)/lib'/*.a \
'$(PREFIX)/$(TARGET)/lib'/*.o
.PHONY: clean
clean:
rm -rf $(call TMP_DIR,*) $(PREFIX)/*
@ -204,9 +206,9 @@ define UPDATE
$(if $(filter $(2),$($(1)_VERSION)),
$(info . $(1) $(2)),
$(info NEW $(1) $($(1)_VERSION) --> $(2))
$(SED) 's/^\([^ ]*_VERSION *:=\).*/\1 $(2)/' -i '$(TOP_DIR)/src/$(1).mk'
$(SED) -i 's/\( id="$(1)-version"\)>[^<]*/\1>$(2)/' '$(TOP_DIR)/index.html'
$(MAKE) -f '$(MAKEFILE)' 'update-checksum-$(1)' \
|| { $(SED) 's/^\([^ ]*_VERSION *:=\).*/\1 $($(1)_VERSION)/' -i '$(TOP_DIR)/src/$(1).mk'; \
|| { $(SED) -i 's/\( id="$(1)-version"\)>[^<]*/\1>$($(1)_VERSION)/' '$(TOP_DIR)/index.html'; \
exit 1; })),
$(error Unable to update version number of package $(1)))
@ -216,50 +218,21 @@ update:
update-checksum-%:
$(call DOWNLOAD_PKG_ARCHIVE,$*)
$(SED) 's/^\([^ ]*_CHECKSUM *:=\).*/\1 '"`$(call PKG_CHECKSUM,$*)`"'/' -i '$(TOP_DIR)/src/$*.mk'
$(SED) -i 's/^\([^ ]*_CHECKSUM *:=\).*/\1 '"`$(call PKG_CHECKSUM,$*)`"'/' '$(TOP_DIR)/src/$*.mk'
.PHONY: dist
dist:
rm -rf '$(DIST_DIR)'
mkdir -p '$(DIST_DIR)'
mkdir '$(DIST_DIR)/mingw-cross-env-$(VERSION)'
mkdir '$(DIST_DIR)/mingw-cross-env-$(VERSION)/doc'
mkdir '$(DIST_DIR)/mingw-cross-env-$(VERSION)/src'
( \
$(SED) -n '1,/<table id="package-list"/ p' '$(TOP_DIR)/doc/index.html' && \
($(foreach PKG,$(PKGS), \
echo ' <tr><td><a href="$($(PKG)_WEBSITE)">$(PKG)</a></td><td>$($(PKG)_VERSION)</td></tr>';)) && \
$(SED) -n '/<table id="package-list"/,/<ul id="authors-list"/ p' '$(TOP_DIR)/doc/index.html' | \
$(SED) '1d' && \
(LC_ALL=en_US.UTF-8 hg log | $(SED) -n 's,^\(user: *\([^<]*\) <.*\|.*(by \([^)]*\)).*\)$$,\2\3,p' | \
sort | uniq -c | sort -nr | \
$(SED) 's,^ *[0-9]* *\(.*\)$$, <li>\1</li>,') && \
$(SED) '1,/<ul id="authors-list"/ d' '$(TOP_DIR)/doc/index.html' \
) \
| $(SED) 's,\(<span class="version">\)[^<]*\(</span>\),\1$(VERSION)\2,g' \
| $(SED) 's,\(<span class="target">\)[^<]*\(</span>\),\1$(TARGET)\2,g' \
| $(SED) 's,\(<span class="target-underscore">\)[^<]*\(</span>\),\1$(subst -,_,$(TARGET))\2,g' \
| $(SED) 's;\(<span class="years">\)[^<]*\(</span>\);\1'"`LC_ALL=en_US.UTF-8 hg log | $(SED) -n 's,^date:.*\s\([0-9]\{4\}\)\s.*$$,\1,p' | sort -nu | $(SED) -n '1 h; 2,$$ H; $$ {x; s/\n/, /gp}'`"'\2;g' \
>'$(DIST_DIR)/mingw-cross-env-$(VERSION)/doc/index.html'
cp -p '$(TOP_DIR)/doc'/screenshot-* '$(DIST_DIR)/mingw-cross-env-$(VERSION)/doc/'
cp -p '$(TOP_DIR)/Makefile' '$(DIST_DIR)/mingw-cross-env-$(VERSION)/'
cp -p '$(TOP_DIR)/src'/*.mk '$(DIST_DIR)/mingw-cross-env-$(VERSION)/src/'
cp -p '$(TOP_DIR)/src'/*.patch '$(DIST_DIR)/mingw-cross-env-$(VERSION)/src/'
cp -p '$(TOP_DIR)/src'/*-test* '$(DIST_DIR)/mingw-cross-env-$(VERSION)/src/'
(cd '$(DIST_DIR)' && tar cvf - 'mingw-cross-env-$(VERSION)' | gzip -9) >'$(DIST_DIR)/mingw-cross-env-$(VERSION).tar.gz'
@echo
@echo 'Upload will start in 5 seconds. Last chance to cancel! (Ctrl+C)'
@echo
@sleep 5
mkdir '$(DIST_DIR)/web'
cd '$(DIST_DIR)/web' && cvs -d :ext:cvs.savannah.nongnu.org:/web/mingw-cross-env co mingw-cross-env
cp -p '$(DIST_DIR)/mingw-cross-env-$(VERSION)/doc'/* '$(DIST_DIR)/web/mingw-cross-env/'
cd '$(DIST_DIR)/web/mingw-cross-env' && cvs add * || echo 'Errors on "cvs add" ignored.'
cd '$(DIST_DIR)/web/mingw-cross-env' && cvs commit -m 'upload'
sleep 2 # wait for the "triggered webpages update" to complete
x-www-browser \
'http://validator.w3.org/unicorn/check?ucn_uri=http://mingw-cross-env.nongnu.org/' \
'http://mingw-cross-env.nongnu.org/#latest-release' \
'https://bitbucket.org/vog/mingw-cross-env/downloads#new-download-form' \
'http://freshmeat.net/projects/mingw_cross_env/releases/new'
cleanup-style:
@$(foreach FILE,$(wildcard $(addprefix $(TOP_DIR)/,Makefile index.html CNAME src/*.mk src/*test.* tools/*)),\
$(SED) ' \
s/\r//g; \
s/[ \t]\+$$//; \
s,^#!/bin/bash$$,#!/usr/bin/env bash,; \
$(if $(filter %Makefile,$(FILE)),,\
s/\t/ /g; \
) \
' < $(FILE) > $(TOP_DIR)/tmp-cleanup-style; \
diff -u $(FILE) $(TOP_DIR)/tmp-cleanup-style >/dev/null \
|| { echo '[cleanup] $(FILE)'; \
cp $(TOP_DIR)/tmp-cleanup-style $(FILE); }; \
rm -f $(TOP_DIR)/tmp-cleanup-style; \
)

File diff suppressed because it is too large Load Diff

28
src/agg.mk Normal file
View File

@ -0,0 +1,28 @@
# This file is part of MXE.
# See index.html for further information.
PKG := agg
$(PKG)_IGNORE :=
$(PKG)_CHECKSUM := 08f23da64da40b90184a0414369f450115cdb328
$(PKG)_SUBDIR := agg-$($(PKG)_VERSION)
$(PKG)_FILE := agg-$($(PKG)_VERSION).tar.gz
$(PKG)_URL := http://www.antigrain.com/$($(PKG)_FILE)
$(PKG)_DEPS := gcc freetype sdl
define $(PKG)_UPDATE
wget -q -O- 'http://www.antigrain.com/download/index.html' | \
$(SED) -n 's,.*<A href="http://www.antigrain.com/agg-\([0-9.]*\).tar.gz".*,\1,p' | \
head -1
endef
define $(PKG)_BUILD
$(SED) -i 's,aclocal,aclocal -I $(PREFIX)/$(TARGET)/share/aclocal,' '$(1)/autogen.sh'
$(SED) -i 's,libtoolize,$(LIBTOOLIZE),' '$(1)/autogen.sh'
cd '$(1)' && $(SHELL) ./autogen.sh \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--without-x
$(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS=
endef

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# ATK
PKG := atk
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.0.0
$(PKG)_CHECKSUM := a11205c094ce68cbe3ee7dd92163e08e00c34cce
$(PKG)_CHECKSUM := 3f4daf31f99b6e0c12ce9675400f2f02dbf1b820
$(PKG)_SUBDIR := atk-$($(PKG)_VERSION)
$(PKG)_FILE := atk-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gtk.org/
$(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/atk/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
$(PKG)_DEPS := gcc glib gettext

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# ATKmm
PKG := atkmm
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.22.5
$(PKG)_CHECKSUM := 0cae95ac770fb7adda7aea392916d16be195fc07
$(PKG)_CHECKSUM := 9ca44756821f4d431c554e1cf8184989bb25ce12
$(PKG)_SUBDIR := atkmm-$($(PKG)_VERSION)
$(PKG)_FILE := atkmm-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gtkmm.org/
$(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/atkmm/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
$(PKG)_DEPS := gcc atk glibmm

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
diff -urN aubio-0.3.2.orig/configure.ac aubio-0.3.2/configure.ac
--- aubio-0.3.2.orig/configure.ac 2006-10-09 01:11:39.000000000 +0200

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# aubio
PKG := aubio
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.3.2
$(PKG)_CHECKSUM := 8ef7ccbf18a4fa6db712a9192acafc9c8d080978
$(PKG)_SUBDIR := aubio-$($(PKG)_VERSION)
$(PKG)_FILE := aubio-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.aubio.org
$(PKG)_URL := http://www.aubio.org/pub/$($(PKG)_FILE)
$(PKG)_DEPS := gcc fftw libsamplerate libsndfile

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# Binary File Descriptor library
PKG := bfd
$(PKG)_IGNORE = $(binutils_IGNORE)
$(PKG)_VERSION = $(binutils_VERSION)
$(PKG)_CHECKSUM = $(binutils_CHECKSUM)
$(PKG)_SUBDIR = $(binutils_SUBDIR)
$(PKG)_FILE = $(binutils_FILE)
$(PKG)_WEBSITE = $(binutils_WEBSITE)
$(PKG)_URL = $(binutils_URL)
$(PKG)_URL_2 = $(binutils_URL2)
$(PKG)_DEPS := gcc

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GNU Binutils
PKG := binutils
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.21.1a
$(PKG)_CHECKSUM := 525255ca6874b872540c9967a1d26acfbc7c8230
$(PKG)_SUBDIR := binutils-2.21.1
$(PKG)_CHECKSUM := 65b304a0b9a53a686ce50a01173d1f40f8efe404
$(PKG)_SUBDIR := binutils-$($(PKG)_VERSION)
$(PKG)_FILE := binutils-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gnu.org/software/binutils/
$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/binutils/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.cs.tu-berlin.de/pub/gnu/binutils/$($(PKG)_FILE)
$(PKG)_DEPS :=
@ -21,8 +18,17 @@ 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'
cd '$(1)' && ./configure \
--target='$(TARGET)' \
--build="`config.guess`" \
--prefix='$(PREFIX)' \
--with-gcc \
--with-gnu-ld \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# blas
PKG := blas
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1
$(PKG)_CHECKSUM := a643b737c30a0a5b823e11e33c9d46a605122c61
$(PKG)_SUBDIR := BLAS
$(PKG)_FILE := $(PKG).tgz
$(PKG)_WEBSITE := http://www.netlib.org/$(PKG)/
$(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

View File

@ -1,5 +1,7 @@
/* This file is part of mingw-cross-env. */
/* See doc/index.html for further information. */
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <iostream>
#include <boost/archive/xml_oarchive.hpp>

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# Boost C++ Library
PKG := boost
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.46.1
$(PKG)_CHECKSUM := 3ca6e173ec805e5126868d8a03618e587aa26aef
$(PKG)_CHECKSUM := 26a52840e9d12f829e3008589abf0a925ce88524
$(PKG)_SUBDIR := boost_$(subst .,_,$($(PKG)_VERSION))
$(PKG)_FILE := boost_$(subst .,_,$($(PKG)_VERSION)).tar.bz2
$(PKG)_WEBSITE := http://www.boost.org/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/boost/boost/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc zlib bzip2 expat
@ -24,8 +21,8 @@ define $(PKG)_BUILD
# make the build script generate .a library files instead of .lib
$(SED) -i 's,<target-os>windows : lib ;,<target-os>windows : a ;,' '$(1)/tools/build/v2/tools/types/lib.jam'
# compile boost jam
cd '$(1)/tools/build/v2/engine/src' && ./build.sh
cd '$(1)' && tools/build/v2/engine/src/bin.*/bjam \
cd '$(1)/tools/build/v2/engine' && ./build.sh
cd '$(1)' && tools/build/v2/engine/bin.*/bjam \
-j '$(JOBS)' \
--ignore-site-config \
--user-config=user-config.jam \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# bzip2
PKG := bzip2
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.0.6
$(PKG)_CHECKSUM := 3f89f861209ce81a6bab1fd1998c0ef311712002
$(PKG)_SUBDIR := bzip2-$($(PKG)_VERSION)
$(PKG)_FILE := bzip2-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.bzip.org/
$(PKG)_URL := http://www.bzip.org/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# cairo
PKG := cairo
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.10.2
$(PKG)_CHECKSUM := ccce5ae03f99c505db97c286a0c9a90a926d3c6e
$(PKG)_SUBDIR := cairo-$($(PKG)_VERSION)
$(PKG)_FILE := cairo-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://cairographics.org/
$(PKG)_URL := http://cairographics.org/releases/$($(PKG)_FILE)
$(PKG)_DEPS := gcc zlib libpng fontconfig freetype pixman

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# cairomm
PKG := cairomm
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.10.0
$(PKG)_CHECKSUM := f08bf8a331067f0d1e876523f07238fba6b26b99
$(PKG)_SUBDIR := cairomm-$($(PKG)_VERSION)
$(PKG)_FILE := cairomm-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://cairographics.org/cairomm/
$(PKG)_URL := http://cairographics.org/releases/$($(PKG)_FILE)
$(PKG)_DEPS := gcc cairo libsigc++

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# cblas
PKG := cblas
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1
$(PKG)_CHECKSUM := d6970cf52592ef67674a61c78bbd055a4e9d4680
$(PKG)_SUBDIR := CBLAS
$(PKG)_FILE := $(PKG).tgz
$(PKG)_WEBSITE := http://www.netlib.org/blas/
$(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
@ -23,7 +20,7 @@ define $(PKG)_BUILD
$(SED) -i 's,FC =.*,FC = $(TARGET)-gfortran,g' '$(1)/Makefile.MINGW32'
$(SED) -i 's, make , $(MAKE) ,g' '$(1)/Makefile'
rm '$(1)/Makefile.in'
ln -s '$(1)/Makefile.MINGW32' '$(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

331
src/cgal-1-fixes.patch Normal file
View File

@ -0,0 +1,331 @@
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From a2df8b5dea68d02643faa69b7119628eb1751d5e Mon Sep 17 00:00:00 2001
From: MXE
Date: Fri, 21 Oct 2011 23:08:52 +0200
Subject: [PATCH 1/3] adjustments for MXE
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a0ef19a..bb8c02f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -359,6 +359,8 @@ message( STATUS "System: ${CMAKE_SYSTEM_NAME}" )
#
#--------------------------------------------------------------------------------------------------
+uniquely_add_flags( CXXFLAGS "-DBOOST_THREAD_USE_LIB;-DBoost_USE_STATIC_LIBS" )
+SET(CMAKE_CXX_FLAGS_RELEASE "-DBOOST_THREAD_USE_LIB -DBoost_USE_STATIC_LIBS -O3 -DNDEBUG" CACHE STRING blah FORCE)
if( MSVC )
uniquely_add_flags ( CGAL_CXX_FLAGS "-D_CRT_SECURE_NO_DEPRECATE;-D_SCL_SECURE_NO_DEPRECATE;-D_CRT_SECURE_NO_WARNINGS;-D_SCL_SECURE_NO_WARNINGS" )
diff --git a/TryRunResults.cgal.cmake b/TryRunResults.cgal.cmake
new file mode 100644
index 0000000..299de90
--- /dev/null
+++ b/TryRunResults.cgal.cmake
@@ -0,0 +1,198 @@
+SET( GCC_RUN_RES
+ 0
+ CACHE STRING "version=4.7.0" FORCE)
+SET( GCC_RUN_RES__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "version=4.7.0" FORCE)
+SET( GMP_RUN_RES
+ 0
+ CACHE STRING "version=5.0.2" FORCE)
+SET( GMP_RUN_RES__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "version=5.0.2" FORCE)
+SET( MPFR_RUN_RES
+ 0
+ CACHE STRING "version=3.1.0" FORCE)
+SET( MPFR_RUN_RES__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "version=3.1.0" FORCE)
+SET( CGAL_CFG_ARRAY_MEMBER_INITIALIZATION_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_ARRAY_MEMBER_INITIALIZATION_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_DENORMALS_COMPILE_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_DENORMALS_COMPILE_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_FPU_ROUNDING_MODE_UNWINDING_VC_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_FPU_ROUNDING_MODE_UNWINDING_VC_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_IEEE_754_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_IEEE_754_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_ISTREAM_INT_BUG
+ 0
+ CACHE STRING "7812" FORCE)
+SET( CGAL_CFG_ISTREAM_INT_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "7812" FORCE)
+SET( CGAL_CFG_LONGNAME_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_LONGNAME_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_MATCHING_BUG_5
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_MATCHING_BUG_5__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_MATCHING_BUG_6
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_MATCHING_BUG_6__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NESTED_CLASS_FRIEND_DECLARATION_BUG
+ 0
+ CACHE STRING "A's do_something\nC's do_something\nB's do_something\nC's do_something" FORCE)
+SET( CGAL_CFG_NESTED_CLASS_FRIEND_DECLARATION_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "A's do_something\nC's do_something\nB's do_something\nC's do_something" FORCE)
+SET( CGAL_CFG_NO_CPP0X_DELETED_AND_DEFAULT_FUNCTIONS
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_DELETED_AND_DEFAULT_FUNCTIONS__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_ISFINITE
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_ISFINITE__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_LONG_LONG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_LONG_LONG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_DELEGATING_CONSTRUCTORS
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_CPP0X_DELEGATING_CONSTRUCTORS__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_LIMITS
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_LIMITS__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_LOGICAL_OPERATORS_ALTERNATIVES
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_LOGICAL_OPERATORS_ALTERNATIVES__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_MESSAGE_PRAGMA_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_MESSAGE_PRAGMA_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_NEXTAFTER
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_NEXTAFTER__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_STATEMENT_EXPRESSIONS
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_STATEMENT_EXPRESSIONS__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_STL
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_STL__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_TMPL_IN_TMPL_PARAM
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_TMPL_IN_TMPL_PARAM__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_TR1_ARRAY
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_TR1_ARRAY__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_TR1_TUPLE
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_TR1_TUPLE__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_WARNING_CPP_DIRECTIVE_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NO_WARNING_CPP_DIRECTIVE_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NUMERIC_LIMITS_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_NUMERIC_LIMITS_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_OUTOFLINE_MEMBER_DEFINITION_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_OUTOFLINE_MEMBER_DEFINITION_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_TEMPLATE_IN_DEFAULT_PARAMETER_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_TEMPLATE_IN_DEFAULT_PARAMETER_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_TYPENAME_BEFORE_DEFAULT_ARGUMENT_BUG
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_TYPENAME_BEFORE_DEFAULT_ARGUMENT_BUG__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_USING_BASE_MEMBER_BUG_2
+ 0
+ CACHE STRING " " FORCE)
+SET( CGAL_CFG_USING_BASE_MEMBER_BUG_2__TRYRUN_OUTPUT
+ 0
+ CACHE STRING " " FORCE)
+SET( ZLIB_RUN_RES
+ 0
+ CACHE STRING "version=1.2.5" FORCE)
+SET( ZLIB_RUN_RES__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "version=1.2.5" FORCE)
+SET( QT4_RUN_RES
+ 0
+ CACHE STRING "version=4.8.0" FORCE)
+SET( QT4_RUN_RES__TRYRUN_OUTPUT
+ 0
+ CACHE STRING "version=4.8.0" FORCE)
diff --git a/cmake/modules/FindBoost.cmake b/cmake/modules/FindBoost.cmake
index fbdde88..5d8a0a9 100644
--- a/cmake/modules/FindBoost.cmake
+++ b/cmake/modules/FindBoost.cmake
@@ -167,6 +167,7 @@
#
include( CGAL_VersionUtils )
+set(Boost_USE_STATIC_LIBS ON)
#-------------------------------------------------------------------------------
@@ -706,7 +707,9 @@ ELSE (_boost_IN_CACHE)
ENDIF( Boost_USE_STATIC_LIBS )
# Find libraries (search in user defined directories first)
+ SET ( _boost_COMPILER "_win32")
SET ( _boost_${UPPERCOMPONENT}_LIBRARY_RELEASE_NAMES
+ ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION}
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}-${Boost_LIB_VERSION}
diff --git a/include/CGAL/Constrained_Delaunay_triangulation_2.h b/include/CGAL/Constrained_Delaunay_triangulation_2.h
index bb59f8c..9cebb51 100644
--- a/include/CGAL/Constrained_Delaunay_triangulation_2.h
+++ b/include/CGAL/Constrained_Delaunay_triangulation_2.h
@@ -390,7 +390,7 @@ is_flipable(Face_handle f, int i, bool perturb) const
Face_handle ni = f->neighbor(i);
if (is_infinite(f) || is_infinite(ni)) return false;
if (f->is_constrained(i)) return false;
- return (side_of_oriented_circle(ni, f->vertex(i)->point(), perturb)
+ return (this->side_of_oriented_circle(ni, f->vertex(i)->point(), perturb)
== ON_POSITIVE_SIDE);
}
@@ -494,7 +494,7 @@ test_conflict(const Point& p, Face_handle fh) const
// return true if P is inside the circumcircle of fh
// if fh is infinite, return true when p is in the positive
// halfspace or on the boundary and in the finite edge of fh
- Oriented_side os = side_of_oriented_circle(fh,p,true);
+ Oriented_side os = this->side_of_oriented_circle(fh,p,true);
if (os == ON_POSITIVE_SIDE) return true;
if (os == ON_ORIENTED_BOUNDARY && is_infinite(fh)) {
--
1.7.7
From 7393c43ef7534fc8a9289992cdcb9ebefa293680 Mon Sep 17 00:00:00 2001
From: MXE
Date: Fri, 18 Nov 2011 00:08:25 +0100
Subject: [PATCH 2/3] prevent Qt's moc from choking on BOOST_JOIN
Taken from:
https://lists-sop.inria.fr/sympa/arc/cgal-discuss/2011-11/msg00087.html
diff --git a/cmake/modules/CGAL_Macros.cmake b/cmake/modules/CGAL_Macros.cmake
index 62d0485..852fcc9 100644
--- a/cmake/modules/CGAL_Macros.cmake
+++ b/cmake/modules/CGAL_Macros.cmake
@@ -174,9 +174,9 @@ if( NOT CGAL_MACROS_FILE_INCLUDED )
if ( ${LIB}_RUN_RES EQUAL "0" )
string( REGEX MATCH "version=.*\$" ${LIB}_VERSION_LINE ${${LIB}_OUTPUT} )
- string( REPLACE "\n" "" ${LIB}_VERSION_LINE2 ${${LIB}_VERSION_LINE} )
- string( REPLACE "\r" "" ${LIB}_VERSION_LINE3 ${${LIB}_VERSION_LINE2} )
- string( REPLACE "version=" "" ${LIB}_VERSION ${${LIB}_VERSION_LINE3} )
+ string( REPLACE "\n" "" "${LIB}_VERSION_LINE2" "${${LIB}_VERSION_LINE}" )
+ string( REPLACE "\r" "" "${LIB}_VERSION_LINE3" "${${LIB}_VERSION_LINE2}" )
+ string( REPLACE "version=" "" "${LIB}_VERSION" "${${LIB}_VERSION_LINE3}" )
else()
--
1.7.7
From ac8a99188725f1cb848c6cec3e33c52363754797 Mon Sep 17 00:00:00 2001
From: MXE
Date: Wed, 28 Mar 2012 00:25:48 +1100
Subject: [PATCH 3/3] Cmake min version 2.8.6 is only for Windows DLLs
http://www.cgal.org/Manual/latest/doc_html/installation_manual/Chapter_installation_manual.html
Section 3:
"On Windows, CMake version 2.8.6 or higher is required, for a proper support of DLLs generation."
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bb8c02f..1f0a4cb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,7 +6,7 @@
project(CGAL CXX)
# Minimal version of CMake:
-if(WIN32)
+if(WIN32 AND BUILD_SHARED_LIBS)
cmake_minimum_required(VERSION 2.8.6)
else()
cmake_minimum_required(VERSION 2.6.2)
--
1.7.7

47
src/cgal.mk Normal file
View File

@ -0,0 +1,47 @@
# This file is part of MXE.
# See index.html for further information.
PKG := cgal
$(PKG)_IGNORE :=
$(PKG)_CHECKSUM := d1f3f328bc5cb026ddb825cb585c7ae27a8856f7
$(PKG)_SUBDIR := CGAL-$($(PKG)_VERSION)
$(PKG)_FILE := CGAL-$($(PKG)_VERSION).tar.xz
$(PKG)_URL := https://gforge.inria.fr/frs/download.php/30385/$($(PKG)_FILE)
$(PKG)_DEPS := gcc boost gmp mpfr qt
define $(PKG)_UPDATE
wget -q --no-check-certificate -O- 'https://gforge.inria.fr/frs/?group_id=52' | \
grep 'CGAL-' | \
$(SED) -n 's,.*CGAL-\([0-9][^>a-z]*\)\.tar.*,\1,p' | \
head -1
endef
define $(PKG)_BUILD
cd '$(1)' && cmake \
-DCGAL_INSTALL_CMAKE_DIR:STRING="lib/CGAL" \
-DCMAKE_BUILD_TYPE:STRING="Release" \
-DCGAL_INSTALL_INC_DIR:STRING="include" \
-DCGAL_INSTALL_DOC_DIR:STRING="share/doc/CGAL-3.9" \
-DCGAL_INSTALL_BIN_DIR:STRING="bin" \
-DBOOST_LIB_DIAGNOSTIC_DEFINITIONS:STRING="-DBOOST_LIB_DIAGNOSTIC" \
-DWITH_CGAL_Qt3:BOOL="0" \
-DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
-DBOOST_COMPILER=_win32 \
-DBOOST_THREAD_USE_LIB=1 \
-DBOOST_USE_STATIC_LIBS=1 \
-DBUILD_SHARED_LIBS=0 \
-C TryRunResults.cgal.cmake .
$(MAKE) -C '$(1)' -j $(JOBS)
cd '$(1)/examples/AABB_tree' && cmake \
-DBOOST_LIB_DIAGNOSTIC_DEFINITIONS:STRING="-DBOOST_LIB_DIAGNOSTIC" \
-DWITH_CGAL_Qt3:BOOL="0" \
-DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
-DBOOST_COMPILER=_win32 \
-DBOOST_THREAD_USE_LIB=1 \
-DBOOST_USE_STATIC_LIBS=1 \
-DBUILD_SHARED_LIBS=0 \
-DCGAL_DIR:STRING="../.." .
$(MAKE) -C '$(1)/examples/AABB_tree' -j $(JOBS)
$(MAKE) -C '$(1)' -j $(JOBS) install
$(INSTALL) '$(1)/examples/AABB_tree/AABB_polyhedron_edge_example.exe' '$(PREFIX)/$(TARGET)/bin/test-cgal.exe'
endef

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# CppUnit
PKG := cppunit
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.12.1
$(PKG)_CHECKSUM := f1ab8986af7a1ffa6760f4bacf5622924639bf4a
$(PKG)_SUBDIR := cppunit-$($(PKG)_VERSION)
$(PKG)_FILE := cppunit-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://apps.sourceforge.net/mediawiki/$(PKG)/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# cunit
PKG := cunit
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.1-2
$(PKG)_CHECKSUM := 6c2d0627eb64c09c7140726d6bf814cf531a3ce0
$(PKG)_SUBDIR := CUnit-$($(PKG)_VERSION)
$(PKG)_FILE := CUnit-$($(PKG)_VERSION)-src.tar.bz2
$(PKG)_WEBSITE := http://cunit.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/cunit/CUnit/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,19 +0,0 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This patch has been taken from:
http://sourceforge.net/tracker/?func=detail&aid=3016471&group_id=976&atid=100976
diff -r f9016ca5bace include/curl/curlbuild.h.in
--- a/include/curl/curlbuild.h.in Tue Jun 15 13:55:53 2010 +0200
+++ b/include/curl/curlbuild.h.in Tue Jun 15 14:00:13 2010 +0200
@@ -111,6 +111,9 @@
/* EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY */
/* ================================================================ */
+/* Configure process defines this to 1 when static linking is requested. */
+#undef CURL_STATICLIB
+
/* Configure process defines this to 1 when it finds out that system */
/* header file ws2tcpip.h must be included by the external interface. */
#undef CURL_PULL_WS2TCPIP_H

33
src/curl-1-fixes.patch Normal file
View File

@ -0,0 +1,33 @@
This file is part of MXE.
See index.html for further information.
Commits backported (cherry-picked) from upstream.
http://github.com/bagder/curl
Also contains MXE specific fixes.
From ee69c33117cf616c19e9cd288f08eb4c91bf190d Mon Sep 17 00:00:00 2001
From: Volker Grabsch <vog@notjusthosting.com>
Date: Fri, 28 Oct 2011 13:48:04 +0200
Subject: [PATCH] static linking for MXE
---
include/curl/curlbuild.h.in | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/include/curl/curlbuild.h.in b/include/curl/curlbuild.h.in
index fe348f4..c428273 100644
--- a/include/curl/curlbuild.h.in
+++ b/include/curl/curlbuild.h.in
@@ -111,6 +111,9 @@
/* EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY */
/* ================================================================ */
+/* Configure process defines this to 1 when static linking is requested. */
+#undef CURL_STATICLIB
+
/* Configure process defines this to 1 when it finds out that system */
/* header file ws2tcpip.h must be included by the external interface. */
#undef CURL_PULL_WS2TCPIP_H
--
1.7.8.3

View File

@ -1,5 +1,7 @@
/* This file is part of mingw-cross-env. */
/* See doc/index.html for further information. */
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <curl/curl.h>

View File

@ -1,16 +1,13 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# cURL
PKG := curl
$(PKG)_IGNORE :=
$(PKG)_VERSION := 7.21.6
$(PKG)_CHECKSUM := 049a3aff13d283f6e4ea1f9aa3aa6abc067fd42e
$(PKG)_CHECKSUM := f6016a24051d98806ca3ddf754592701cb66e00c
$(PKG)_SUBDIR := curl-$($(PKG)_VERSION)
$(PKG)_FILE := curl-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://curl.haxx.se/libcurl/
$(PKG)_URL := http://curl.haxx.se/download/$($(PKG)_FILE)
$(PKG)_DEPS := gcc gnutls libidn
$(PKG)_DEPS := gcc gnutls libidn libssh2
define $(PKG)_UPDATE
wget -q -O- 'http://curl.haxx.se/download/?C=M;O=D' | \
@ -19,16 +16,17 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./buildconf
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--with-gnutls \
--with-libidn \
LIBS="-lgcrypt -liconv `$(PREFIX)/$(TARGET)/bin/gpg-error-config --libs`"
$(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS=
--enable-sspi \
--with-libssh2
$(MAKE) -C '$(1)' -j '$(JOBS)' install
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \

View File

@ -1,17 +1,19 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
From 7241e09abbfc2021f2a7e5cbded70222023fa7e6 Mon Sep 17 00:00:00 2001
From: Mark Brand <mabrand@mabrand.nl>
Contains ad hoc patches for cross building.
From 9c99802fc9d0e3b2c90b00ba877ae8be9bab615f Mon Sep 17 00:00:00 2001
From: MXE
Date: Tue, 4 Jan 2011 00:47:49 +0100
Subject: [PATCH 1/1] always static in mingw-cross-env
Subject: [PATCH 1/2] always static in MXE
diff --git a/dbus/dbus-macros.h b/dbus/dbus-macros.h
index d1e40ec..3a32355 100644
index dcd3eeb..8324278 100644
--- a/dbus/dbus-macros.h
+++ b/dbus/dbus-macros.h
@@ -158,6 +158,7 @@
@@ -172,6 +172,7 @@
*/
#if defined(_WIN32)
@ -20,5 +22,35 @@ index d1e40ec..3a32355 100644
# define DBUS_EXPORT
# elif defined(dbus_1_EXPORTS)
--
1.7.1
1.7.6.3
From d7bc1aff67132c09d154999c282e1b391bbe7a39 Mon Sep 17 00:00:00 2001
From: MXE
Date: Fri, 23 Sep 2011 16:24:46 +0200
Subject: [PATCH 2/2] add missing MemoryBarrier (MXE specific)
Windows API has this, but it's not in MinGW.
See http://lists-archives.org/mingw-users/15935-missing-definition-of-memorybarrier.html
diff --git a/dbus/dbus-sysdeps-win.c b/dbus/dbus-sysdeps-win.c
index b492b09..082225f 100644
--- a/dbus/dbus-sysdeps-win.c
+++ b/dbus/dbus-sysdeps-win.c
@@ -55,6 +55,13 @@
#include <ws2tcpip.h>
#include <wincrypt.h>
+__CRT_INLINE VOID MemoryBarrier(VOID)
+{
+ LONG Barrier = 0;
+ __asm__ __volatile__("xchgl %%eax,%0 "
+ :"=r" (Barrier));
+}
+
/* Declarations missing in mingw's headers */
extern BOOL WINAPI ConvertStringSidToSidA (LPCSTR StringSid, PSID *Sid);
extern BOOL WINAPI ConvertSidToStringSidA (PSID Sid, LPSTR *StringSid);
--
1.7.6.3

View File

@ -1,27 +1,25 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# dbus
PKG := dbus
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.5.0
$(PKG)_CHECKSUM := 4f0c82af6de628d7359dcdbc0da402f8e369e367
$(PKG)_CHECKSUM := 3140ea452337d664dbe6d30f0d990c756d101694
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://$(PKG).freedesktop.org/
$(PKG)_URL := http://$(PKG).freedesktop.org/releases/$(PKG)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc expat
define $(PKG)_UPDATE
wget -q -O- 'http://cgit.freedesktop.org/dbus/dbus/refs/tags' | \
$(SED) -n "s,.*<a href='[^']*/tag/?id=[^0-9]*\\([0-9][^']*\\)'.*,\\1,p" | \
grep -v '^1\.[0123]\.' | \
grep -v '^1\.[01234]\.' | \
head -1
endef
define $(PKG)_BUILD
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--prefix='$(PREFIX)/$(TARGET)' \
--with-xml=expat \
--disable-tests \
@ -29,8 +27,6 @@ define $(PKG)_BUILD
--disable-asserts \
--disable-shared \
--enable-static \
--disable-tests \
--disable-standalone-tests \
--disable-silent-rules
$(MAKE) -C '$(1)' -j '$(JOBS)' install
endef

1028
src/dcmtk-1-fixes.patch Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,15 +1,13 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# DCMTK
PKG := dcmtk
$(PKG)_IGNORE :=
$(PKG)_VERSION := 3.6.0
$(PKG)_CHECKSUM := 469e017cffc56f36e834aa19c8612111f964f757
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://dicom.offis.de/dcmtk.php.en
$(PKG)_URL := ftp://dicom.offis.de/pub/dicom/offis/software/$(PKG)/$(PKG)$(subst .,,$($(PKG)_VERSION))/$($(PKG)_FILE)
$(PKG)_URL_2 := http://ftp.debian.org/debian/pool/main/d/$(PKG)/$(PKG)_$($(PKG)_VERSION).orig.tar.gz
$(PKG)_DEPS := gcc openssl tiff libpng libxml2 zlib
define $(PKG)_UPDATE

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
diff -urN devil-1.7.8.orig/src-IL/src/il_icon.c devil-1.7.8/src-IL/src/il_icon.c
--- devil-1.7.8.orig/src-IL/src/il_icon.c 2009-03-08 08:10:09.000000000 +0100

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# DevIL
PKG := devil
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.7.8
$(PKG)_CHECKSUM := bc27e3e830ba666a3af03548789700d10561fcb1
$(PKG)_SUBDIR := devil-$($(PKG)_VERSION)
$(PKG)_FILE := DevIL-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://openil.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/openil/DevIL/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc freeglut zlib openexr jpeg jasper lcms libmng libpng tiff sdl
@ -21,10 +18,9 @@ endef
define $(PKG)_BUILD
$(SED) -i 's,__declspec(dllimport),,' '$(1)/include/IL/il.h'
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--enable-ILU \

23
src/eigen.mk Normal file
View File

@ -0,0 +1,23 @@
# This file is part of MXE.
# See index.html for further information.
PKG := eigen
$(PKG)_IGNORE :=
$(PKG)_CHECKSUM := 7e1674420a8eef7e90e1875ef5b9e828fb9db381
$(PKG)_SUBDIR := $(PKG)-$(PKG)-b23437e61a07
$(PKG)_FILE := $($(PKG)_VERSION).tar.gz
$(PKG)_URL := https://bitbucket.org/$(PKG)/$(PKG)/get/$($(PKG)_FILE)
$(PKG)_DEPS := gcc
define $(PKG)_UPDATE
wget -q -O- 'http://eigen.tuxfamily.org/index.php?title=Main_Page#Download' | \
grep 'eigen/get/' | \
$(SED) -n 's,.*eigen/get/\(2[^>]*\)\.tar.*,\1,p' | \
head -1
endef
define $(PKG)_BUILD
cd '$(1)' && \
cmake . -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)'
$(MAKE) -C '$(1)' -j '$(JOBS)' install
endef

View File

@ -1,79 +0,0 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
This patch has been taken from:
http://dev.exiv2.org/issues/764
Index: trunk/src/psdimage.cpp
===================================================================
--- trunk/src/psdimage.cpp (revision 2468)
+++ trunk/src/psdimage.cpp (revision 2469)
@@ -400,7 +400,7 @@
uint32_t resourceType = getULong(buf, bigEndian);
if (resourceType != kPhotoshopResourceType) {
- break; // bad resource type
+ throw Error(3, "Photoshop"); // bad resource type
}
uint16_t resourceId = getUShort(buf + 4, bigEndian);
uint32_t resourceNameLength = buf[6];
@@ -416,13 +416,13 @@
if (io_->read(buf, 4) != 4) throw Error(3, "Photoshop");
uint32_t resourceSize = getULong(buf, bigEndian);
+ uint32_t pResourceSize = (resourceSize + 1) & ~1; // padded resource size
uint32_t curOffset = io_->tell();
// Write IPTC_NAA resource block
if ((resourceId == kPhotoshopResourceID_IPTC_NAA ||
resourceId > kPhotoshopResourceID_IPTC_NAA) && iptcDone == false) {
newResLength += writeIptcData(iptcData_, outIo);
- resourceSize = (resourceSize + 1) & ~1; // adjust for padding
iptcDone = true;
}
@@ -430,7 +430,6 @@
else if ((resourceId == kPhotoshopResourceID_ExifInfo ||
resourceId > kPhotoshopResourceID_ExifInfo) && exifDone == false) {
newResLength += writeExifData(exifData_, outIo);
- resourceSize = (resourceSize + 1) & ~1; // adjust for padding
exifDone = true;
}
@@ -438,7 +437,6 @@
else if ((resourceId == kPhotoshopResourceID_XMPPacket ||
resourceId > kPhotoshopResourceID_XMPPacket) && xmpDone == false) {
newResLength += writeXmpData(xmpData_, outIo);
- resourceSize = (resourceSize + 1) & ~1; // adjust for padding
xmpDone = true;
}
@@ -467,10 +465,9 @@
readTotal = 0;
toRead = 0;
- resourceSize = (resourceSize + 1) & ~1; // pad to even
- while (readTotal < resourceSize) {
- toRead = static_cast<long>(resourceSize - readTotal) < lbuf.size_
- ? static_cast<long>(resourceSize - readTotal) : lbuf.size_;
+ while (readTotal < pResourceSize) {
+ toRead = static_cast<long>(pResourceSize - readTotal) < lbuf.size_
+ ? static_cast<long>(pResourceSize - readTotal) : lbuf.size_;
if (io_->read(lbuf.pData_, toRead) != toRead) {
throw Error(3, "Photoshop");
}
@@ -478,11 +475,11 @@
if (outIo.write(lbuf.pData_, toRead) != toRead) throw Error(21);
}
if (outIo.error()) throw Error(21);
- newResLength += resourceSize + adjResourceNameLen + 12;
+ newResLength += pResourceSize + adjResourceNameLen + 12;
}
- io_->seek(curOffset + resourceSize, BasicIo::beg);
- oldResLength -= (12 + adjResourceNameLen + resourceSize);
+ io_->seek(curOffset + pResourceSize, BasicIo::beg);
+ oldResLength -= (12 + adjResourceNameLen + pResourceSize);
}
// Append IPTC_NAA resource block, if not yet written

View File

@ -1,41 +0,0 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
This patch has been taken from:
http://dev.exiv2.org/issues/767
Index: trunk/config/configure.ac
===================================================================
--- trunk/config/configure.ac (revision 2471)
+++ trunk/config/configure.ac (revision 2472)
@@ -31,12 +31,6 @@
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_CANONICAL_HOST
-# Add flag for DLL on Windows
-case "$host_os" in
-*mingw* | *cygwin*)
- LDFLAGS="$LDFLAGS -no-undefined"
- ;;
-esac
# ---------------------------------------------------------------------------
# i18n support
@@ -204,6 +198,17 @@
fi
AC_SUBST(EXV_LIB_STATIC)
+# Add flag for DLL on Windows
+#
+# This must happen after all other configure checks, because
+# the "-no-undefined" flag is only for libtool and may not be
+# passed to GCC by accident.
+case "$host_os" in
+*mingw* | *cygwin*)
+ LDFLAGS="$LDFLAGS -no-undefined"
+ ;;
+esac
+
# ---------------------------------------------------------------------------
# Create output files.
# ---------------------------------------------------------------------------

49
src/exiv2-r2619.patch Normal file
View File

@ -0,0 +1,49 @@
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/2619
Index: trunk/src/epsimage.cpp
===================================================================
--- trunk/src/epsimage.cpp (revision 2618)
+++ trunk/src/epsimage.cpp (revision 2619)
@@ -393,6 +393,7 @@
unsigned int depth = 0;
const unsigned int maxDepth = UINT_MAX;
bool illustrator8 = false;
+ bool corelDraw = false;
bool implicitPage = false;
bool implicitPageTrailer = false;
bool inDefaultsPreviewPrologSetup = false;
@@ -547,6 +548,8 @@
posAi7ThumbnailEndData = startPos;
} else if (posEndComments == posEndEps && line == "%%EndComments") {
posEndComments = startPos;
+ } else if (inDefaultsPreviewPrologSetup && startsWith(line, "%%BeginResource: procset wCorel")) {
+ corelDraw = true;
} else if (line == "%%EndPreview") {
inDefaultsPreviewPrologSetup = false;
} else if (line == "%%EndDefaults") {
@@ -922,6 +925,10 @@
writeTemp(*tempIo, "%%BeginPageSetup" + lineEnding);
}
writeTemp(*tempIo, "%Exiv2BeginXMP: Before %%EndPageSetup" + lineEnding);
+ if (corelDraw) {
+ writeTemp(*tempIo, "%Exiv2Notice: The following line is needed by CorelDRAW." + lineEnding);
+ writeTemp(*tempIo, "@rs" + lineEnding);
+ }
if (posBeginPhotoshop != posEndEps) {
writeTemp(*tempIo, "%Exiv2Notice: The following line is needed by Photoshop." + lineEnding);
writeTemp(*tempIo, "%begin_xml_code" + lineEnding);
@@ -953,6 +960,10 @@
writeTemp(*tempIo, "%Exiv2Notice: The following line is needed by Photoshop." + lineEnding);
writeTemp(*tempIo, "%end_xml_code" + lineEnding);
}
+ if (corelDraw) {
+ writeTemp(*tempIo, "%Exiv2Notice: The following line is needed by CorelDRAW." + lineEnding);
+ writeTemp(*tempIo, "@sv" + lineEnding);
+ }
writeTemp(*tempIo, "%Exiv2EndXMP" + lineEnding);
if (line != "%%EndPageSetup") {
writeTemp(*tempIo, "%%EndPageSetup" + lineEnding);

175
src/exiv2-r2646.patch Normal file
View File

@ -0,0 +1,175 @@
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/2646
Index: trunk/src/jpgimage.cpp
===================================================================
--- trunk/src/jpgimage.cpp (revision 2645)
+++ trunk/src/jpgimage.cpp (revision 2646)
@@ -86,10 +86,21 @@
const char JpegBase::xmpId_[] = "http://ns.adobe.com/xap/1.0/\0";
const char Photoshop::ps3Id_[] = "Photoshop 3.0\0";
- const char Photoshop::bimId_[] = "8BIM";
+ const char* Photoshop::irbId_[] = {"8BIM", "AgHg", "DCSR", "PHUT"};
const uint16_t Photoshop::iptc_ = 0x0404;
const uint16_t Photoshop::preview_ = 0x040c;
+ bool Photoshop::isIrb(const byte* pPsData,
+ long sizePsData)
+ {
+ if (sizePsData < 4) return false;
+ for (size_t i = 0; i < (sizeof irbId_) / (sizeof *irbId_); i++) {
+ assert(strlen(irbId_[i]) == 4);
+ if (memcmp(pPsData, irbId_[i], 4) == 0) return true;
+ }
+ return false;
+ }
+
bool Photoshop::valid(const byte* pPsData,
long sizePsData)
{
@@ -126,8 +137,7 @@
std::cerr << "Photoshop::locateIrb: ";
#endif
// Data should follow Photoshop format, if not exit
- while ( position <= sizePsData - 12
- && memcmp(pPsData + position, Photoshop::bimId_, 4) == 0) {
+ while (position <= sizePsData - 12 && isIrb(pPsData + position, 4)) {
const byte *hrd = pPsData + position;
position += 4;
uint16_t type = getUShort(pPsData + position, bigEndian);
@@ -237,7 +247,7 @@
DataBuf rawIptc = IptcParser::encode(iptcData);
if (rawIptc.size_ > 0) {
byte tmpBuf[12];
- std::memcpy(tmpBuf, Photoshop::bimId_, 4);
+ std::memcpy(tmpBuf, Photoshop::irbId_[0], 4);
us2Data(tmpBuf + 4, iptc_, bigEndian);
tmpBuf[6] = 0;
tmpBuf[7] = 0;
Index: trunk/src/jpgimage.hpp
===================================================================
--- trunk/src/jpgimage.hpp (revision 2645)
+++ trunk/src/jpgimage.hpp (revision 2646)
@@ -64,11 +64,21 @@
struct EXIV2API Photoshop {
// Todo: Public for now
static const char ps3Id_[]; //!< %Photoshop marker
- static const char bimId_[]; //!< %Photoshop marker
+ static const char* irbId_[]; //!< %Photoshop IRB markers
static const uint16_t iptc_; //!< %Photoshop IPTC marker
static const uint16_t preview_; //!< %Photoshop preview marker
/*!
+ @brief Checks an IRB
+
+ @param pPsData Existing IRB buffer
+ @param sizePsData Size of the IRB buffer
+ @return true if the IRB marker is known and the buffer is big enough to check this;<BR>
+ false otherwise
+ */
+ static bool isIrb(const byte* pPsData,
+ long sizePsData);
+ /*!
@brief Validates all IRBs
@param pPsData Existing IRB buffer
Index: trunk/src/psdimage.cpp
===================================================================
--- trunk/src/psdimage.cpp (revision 2645)
+++ trunk/src/psdimage.cpp (revision 2646)
@@ -39,6 +39,7 @@
# include "exv_conf.h"
#endif
#include "psdimage.hpp"
+#include "jpgimage.hpp"
#include "image.hpp"
#include "basicio.hpp"
#include "error.hpp"
@@ -56,11 +57,9 @@
// Extend this helper to a proper class with all required functionality,
// then move it here or into a separate file?
-const uint32_t kPhotoshopResourceType = 0x3842494d; // '8BIM'
-
//! @cond IGNORE
struct PhotoshopResourceBlock {
- uint32_t resourceType; // always kPhotoshopResourceType
+ uint32_t resourceType; // one of the markers in Photoshop::irbId_[]
uint16_t resourceId;
unsigned char resourceName[2]; // Pascal string (length byte + characters), padded to an even size -- this assumes the empty string
uint32_t resourceDataSize;
@@ -215,14 +214,11 @@
throw Error(3, "Photoshop");
}
- // read resource type and ID
- uint32_t resourceType = getULong(buf, bigEndian);
- uint16_t resourceId = getUShort(buf + 4, bigEndian);
-
- if (resourceType != kPhotoshopResourceType)
+ if (!Photoshop::isIrb(buf, 4))
{
break; // bad resource type
}
+ uint16_t resourceId = getUShort(buf + 4, bigEndian);
uint32_t resourceNameLength = buf[6] & ~1;
// skip the resource name, plus any padding
@@ -447,7 +443,8 @@
// read resource type and ID
uint32_t resourceType = getULong(buf, bigEndian);
- if (resourceType != kPhotoshopResourceType) {
+ if (!Photoshop::isIrb(buf, 4))
+ {
throw Error(3, "Photoshop"); // bad resource type
}
uint16_t resourceId = getUShort(buf + 4, bigEndian);
@@ -493,11 +490,12 @@
&& resourceId != kPhotoshopResourceID_ExifInfo
&& resourceId != kPhotoshopResourceID_XMPPacket) {
#ifdef DEBUG
+ std::cerr << std::hex << "copy : resourceType: " << resourceType << "\n";
std::cerr << std::hex << "copy : resourceId: " << resourceId << "\n";
std::cerr << std::dec;
#endif
// Copy resource block to new PSD file
- ul2Data(buf, kPhotoshopResourceType, bigEndian);
+ ul2Data(buf, resourceType, bigEndian);
if (outIo.write(buf, 4) != 4) throw Error(21);
us2Data(buf, resourceId, bigEndian);
if (outIo.write(buf, 2) != 2) throw Error(21);
@@ -577,8 +575,7 @@
std::cerr << std::hex << "write: resourceId: " << kPhotoshopResourceID_IPTC_NAA << "\n";
std::cerr << std::dec << "Writing IPTC_NAA: size: " << rawIptc.size_ << "\n";
#endif
- ul2Data(buf, kPhotoshopResourceType, bigEndian);
- if (out.write(buf, 4) != 4) throw Error(21);
+ if (out.write(reinterpret_cast<const byte*>(Photoshop::irbId_[0]), 4) != 4) throw Error(21);
us2Data(buf, kPhotoshopResourceID_IPTC_NAA, bigEndian);
if (out.write(buf, 2) != 2) throw Error(21);
us2Data(buf, 0, bigEndian); // NULL resource name
@@ -618,8 +615,7 @@
std::cerr << std::hex << "write: resourceId: " << kPhotoshopResourceID_ExifInfo << "\n";
std::cerr << std::dec << "Writing ExifInfo: size: " << blob.size() << "\n";
#endif
- ul2Data(buf, kPhotoshopResourceType, bigEndian);
- if (out.write(buf, 4) != 4) throw Error(21);
+ if (out.write(reinterpret_cast<const byte*>(Photoshop::irbId_[0]), 4) != 4) throw Error(21);
us2Data(buf, kPhotoshopResourceID_ExifInfo, bigEndian);
if (out.write(buf, 2) != 2) throw Error(21);
us2Data(buf, 0, bigEndian); // NULL resource name
@@ -663,8 +659,7 @@
std::cerr << std::hex << "write: resourceId: " << kPhotoshopResourceID_XMPPacket << "\n";
std::cerr << std::dec << "Writing XMPPacket: size: " << xmpPacket.size() << "\n";
#endif
- ul2Data(buf, kPhotoshopResourceType, bigEndian);
- if (out.write(buf, 4) != 4) throw Error(21);
+ if (out.write(reinterpret_cast<const byte*>(Photoshop::irbId_[0]), 4) != 4) throw Error(21);
us2Data(buf, kPhotoshopResourceID_XMPPacket, bigEndian);
if (out.write(buf, 2) != 2) throw Error(21);
us2Data(buf, 0, bigEndian); // NULL resource name

30
src/exiv2-r2650.patch Normal file
View File

@ -0,0 +1,30 @@
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/2650
Index: trunk/src/jpgimage.cpp
===================================================================
--- trunk/src/jpgimage.cpp (revision 2649)
+++ trunk/src/jpgimage.cpp (revision 2650)
@@ -87,6 +87,7 @@ namespace Exiv2 {
const char Photoshop::ps3Id_[] = "Photoshop 3.0\0";
const char* Photoshop::irbId_[] = {"8BIM", "AgHg", "DCSR", "PHUT"};
+ const char Photoshop::bimId_[] = "8BIM"; // deprecated
const uint16_t Photoshop::iptc_ = 0x0404;
const uint16_t Photoshop::preview_ = 0x040c;
Index: trunk/src/jpgimage.hpp
===================================================================
--- trunk/src/jpgimage.hpp (revision 2649)
+++ trunk/src/jpgimage.hpp (revision 2650)
@@ -65,6 +65,7 @@ namespace Exiv2 {
// Todo: Public for now
static const char ps3Id_[]; //!< %Photoshop marker
static const char* irbId_[]; //!< %Photoshop IRB markers
+ static const char bimId_[]; //!< %Photoshop IRB marker (deprecated)
static const uint16_t iptc_; //!< %Photoshop IPTC marker
static const uint16_t preview_; //!< %Photoshop preview marker

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# Exiv2
PKG := exiv2
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.21.1
$(PKG)_CHECKSUM := d33e0efbad5d6a7af7f2e6d1d0beb6e7c941cfca
$(PKG)_CHECKSUM := 35211d853a986fe1b008fca14db090726e8dcce3
$(PKG)_SUBDIR := exiv2-$($(PKG)_VERSION)
$(PKG)_FILE := exiv2-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.exiv2.org/
$(PKG)_URL := http://www.exiv2.org/$($(PKG)_FILE)
$(PKG)_DEPS := gcc libiconv zlib expat
@ -20,19 +17,14 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
# rebuild configure script as one of the patches modifies configure.ac
$(MAKE) -C '$(1)/config' -f config.make
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--disable-visibility \
--disable-nls \
--with-expat
# fix pkg-config linker flags
$(SED) -i 's,-no-undefined,,' '$(1)/config/exiv2.pc'
$(MAKE) -C '$(1)/xmpsdk/src' -j '$(JOBS)'
$(MAKE) -C '$(1)/src' -j '$(JOBS)' install-lib
endef

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# Expat XML Parser
PKG := expat
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.0.1
$(PKG)_CHECKSUM := 663548c37b996082db1f2f2c32af060d7aa15c2d
$(PKG)_CHECKSUM := b08197d146930a5543a7b99e871cba3da614f6f0
$(PKG)_SUBDIR := expat-$($(PKG)_VERSION)
$(PKG)_FILE := expat-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://expat.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/expat/expat/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,5 +1,5 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
--- ./frontend/main.c.backup 2010-07-01 16:53:48.563042615 +0200
+++ ./frontend/main.c 2010-07-01 16:54:03.379043126 +0200

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# faad2
PKG := faad2
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.7
$(PKG)_CHECKSUM := 80eaaa5cc576c35dd28863767b795c50cbcc0511
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.audiocoding.com/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/faac/$(PKG)-src/$(PKG)-$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -0,0 +1,20 @@
This file is part of MXE.
See index.html for further information.
This patch adds a libswresample dependency to libavfilter.pc, and a libavfilter
dependency to libavdevice.pc. Both issues have patches upstream, so this patch
can be dropped for the next FFmpeg version.
--- ffmpeg-0.10/configure.orig 2012-03-09 21:18:38.403806202 +0100
+++ ffmpeg-0.10/configure 2012-03-09 21:19:37.175808737 +0100
@@ -3749,8 +3749,8 @@
pkgconfig_generate libavutil "FFmpeg utility library" "$LIBAVUTIL_VERSION" "$LIBM"
pkgconfig_generate libavcodec "FFmpeg codec library" "$LIBAVCODEC_VERSION" "$extralibs" "libavutil = $LIBAVUTIL_VERSION"
pkgconfig_generate libavformat "FFmpeg container format library" "$LIBAVFORMAT_VERSION" "$extralibs" "libavcodec = $LIBAVCODEC_VERSION"
-pkgconfig_generate libavdevice "FFmpeg device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" "libavformat = $LIBAVFORMAT_VERSION"
-pkgconfig_generate libavfilter "FFmpeg video filtering library" "$LIBAVFILTER_VERSION" "$extralibs"
+pkgconfig_generate libavdevice "FFmpeg device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" "libavformat = $LIBAVFORMAT_VERSION, libavfilter = $LIBAVFILTER_VERSION"
+pkgconfig_generate libavfilter "FFmpeg video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" "libswresample = $LIBSWRESAMPLE_VERSION"
pkgconfig_generate libpostproc "FFmpeg postprocessing library" "$LIBPOSTPROC_VERSION" "" "libavutil = $LIBAVUTIL_VERSION"
pkgconfig_generate libswscale "FFmpeg image rescaling library" "$LIBSWSCALE_VERSION" "$LIBM" "libavutil = $LIBAVUTIL_VERSION"
pkgconfig_generate libswresample "FFmpeg audio rescaling library" "$LIBSWRESAMPLE_VERSION" "$LIBM" "libavutil = $LIBAVUTIL_VERSION"

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# ffmpeg
PKG := ffmpeg
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.7-rc1
$(PKG)_CHECKSUM := d15c005f46483fbfc3b678cb1c89123762b56b82
$(PKG)_CHECKSUM := 743f44a71f93b14c9b26ca2424b0da8457cef4be
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.ffmpeg.org/
$(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 sdl speex theora vorbis x264 xvidcore zlib
@ -36,6 +33,7 @@ define $(PKG)_BUILD
--enable-postproc \
--disable-pthreads \
--enable-w32threads \
--enable-avisynth \
--enable-libspeex \
--enable-libtheora \
--enable-libvorbis \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# fftw
PKG := fftw
$(PKG)_IGNORE :=
$(PKG)_VERSION := 3.2.2
$(PKG)_CHECKSUM := d43b799eedfb9408f62f9f056f5e8a645618467b
$(PKG)_CHECKSUM := 3fecc492f576503a6a509d2073bd82b3fe0aef13
$(PKG)_SUBDIR := fftw-$($(PKG)_VERSION)
$(PKG)_FILE := fftw-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.fftw.org/
$(PKG)_URL := http://www.fftw.org/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

16
src/file-test.c Normal file
View File

@ -0,0 +1,16 @@
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <stdio.h>
#include <magic.h>
int main(int argc, char *argv[])
{
(void)argc;
(void)argv;
fprintf(stdout, "magic file from %s\n", magic_getpath(NULL, 0));
return 0;
}

41
src/file.mk Normal file
View File

@ -0,0 +1,41 @@
# This file is part of MXE.
# See index.html for further information.
PKG := file
$(PKG)_IGNORE :=
$(PKG)_CHECKSUM := df8ffe8759ec8cd85a98dc98e858563ea2555f64
$(PKG)_SUBDIR := file-$($(PKG)_VERSION)
$(PKG)_FILE := file-$($(PKG)_VERSION).tar.gz
$(PKG)_URL := ftp://ftp.astron.com/pub/file/$($(PKG)_FILE)
$(PKG)_DEPS := gcc libgnurx
define $(PKG)_UPDATE
wget -q -O- 'ftp://ftp.astron.com/pub/file/' | \
grep 'file-' | \
$(SED) -n 's,.*file-\([0-9][^>]*\)\.tar.*,\1,p' | \
tail -1
endef
define $(PKG)_BUILD
# "file" needs a runnable version of the "file" utility
# itself. This must match the source code regarding its
# version. Therefore we build a native one ourselves first.
cp -Rp '$(1)' '$(1).native'
cd '$(1).native' && ./configure \
--disable-shared
$(MAKE) -C '$(1).native/src' -j '$(JOBS)' file
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)'
$(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= man_MANS= FILE_COMPILE='$(1).native/src/file'
$(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= man_MANS=
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \
'$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-file.exe' \
-lmagic -lgnurx -lshlwapi
endef

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
diff -ru flac-1.2.1.orig/include/share/alloc.h flac-1.2.1/include/share/alloc.h
--- flac-1.2.1.orig/include/share/alloc.h 2007-09-12 07:32:21.000000000 +0200

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
diff -urN flac-1.2.1.orig/src/libFLAC/flac.pc.in flac-1.2.1/src/libFLAC/flac.pc.in
--- flac-1.2.1.orig/src/libFLAC/flac.pc.in 2007-02-07 12:07:32.000000000 +1100

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# FLAC
PKG := flac
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.2.1
$(PKG)_CHECKSUM := bd54354900181b59db3089347cc84ad81e410b38
$(PKG)_SUBDIR := flac-$($(PKG)_VERSION)
$(PKG)_FILE := flac-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.xiph.org/ogg/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/flac/flac-src/flac-$($(PKG)_VERSION)-src/$($(PKG)_FILE)
$(PKG)_DEPS := gcc libiconv ogg

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
This patch has been taken from:

View File

@ -1,20 +1,24 @@
/* This file is part of mingw-cross-env. */
/* See doc/index.html for further information. */
/*
* This file is part of MXE.
* See index.html for further information.
*
* This is a slightly modified version of:
* http://www.fltk.org/doc-1.3/basics.html
*/
/* http://www.fltk.org/doc-1.3/basics.html */
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Box.H>
int main(int argc, char **argv)
{
Fl_Window *window = new Fl_Window(340,180);
Fl_Box *box = new Fl_Box(20,40,300,100,"Hello, World!");
box->box(FL_UP_BOX);
box->labelfont(FL_BOLD+FL_ITALIC);
box->labelsize(36);
box->labeltype(FL_SHADOW_LABEL);
window->end();
window->show(argc, argv);
return Fl::run();
}
Fl_Window *window = new Fl_Window(340,180);
Fl_Box *box = new Fl_Box(20,40,300,100,"Hello, World!");
box->box(FL_UP_BOX);
box->labelfont(FL_BOLD+FL_ITALIC);
box->labelsize(36);
box->labeltype(FL_SHADOW_LABEL);
window->end();
window->show(argc, argv);
return Fl::run();
}

View File

@ -1,15 +1,12 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# FLTK
PKG := fltk
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.3.x-r8659
$(PKG)_CHECKSUM := 97d5002f1f3a32bf78634954e63c491483e727ac
$(PKG)_CHECKSUM := 720f2804be6132ebae9909d4e74dedcc00b39d25
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $($(PKG)_SUBDIR).tar.bz2
$(PKG)_WEBSITE := http://www.fltk.org/
$(PKG)_URL := http://ftp.easysw.com/pub/fltk/snapshots/$($(PKG)_FILE)
$(PKG)_FILE := $($(PKG)_SUBDIR)-source.tar.gz
$(PKG)_URL := http://ftp.easysw.com/pub/fltk/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc zlib jpeg libpng pthreads
define $(PKG)_UPDATE
@ -22,10 +19,9 @@ endef
define $(PKG)_BUILD
cd '$(1)' && autoconf
$(SED) -i 's,\$$uname,MINGW,g' '$(1)/configure'
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--enable-threads \
@ -33,8 +29,8 @@ define $(PKG)_BUILD
# enable exceptions, because disabling them doesn't make any sense on PCs
$(SED) -i 's,-fno-exceptions,,' '$(1)/makeinclude'
$(MAKE) -C '$(1)' -j '$(JOBS)' install DIRS=src LIBCOMMAND='$(TARGET)-ar cr'
ln -sf $(PREFIX)/$(TARGET)/bin/fltk-config $(PREFIX)/bin/$(TARGET)-fltk-config
ln -sf '$(PREFIX)/$(TARGET)/bin/fltk-config' '$(PREFIX)/bin/$(TARGET)-fltk-config'
'$(TARGET)-g++' \
-W -Wall -Werror -pedantic -ansi \
'$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-fltk.exe' \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# fontconfig
PKG := fontconfig
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.8.0
$(PKG)_CHECKSUM := 570fb55eb14f2c92a7b470b941e9d35dbfafa716
$(PKG)_CHECKSUM := 1ab2f437c2261028ae7969892277af2d8d8db489
$(PKG)_SUBDIR := fontconfig-$($(PKG)_VERSION)
$(PKG)_FILE := fontconfig-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://fontconfig.org/
$(PKG)_URL := http://fontconfig.org/release/$($(PKG)_FILE)
$(PKG)_DEPS := gcc freetype expat
@ -22,11 +19,10 @@ define $(PKG)_BUILD
# ensure there is no (buggy) attempt to install the *.dll.a file
# (remove this line of you want to link dynamically)
$(SED) -i 's,^install-data-local:.*,install-data-local:,' '$(1)/src/Makefile.in'
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
$(SED) -i 's,^\(Libs:.*\),\1 @EXPAT_LIBS@ @FREETYPE_LIBS@,' '$(1)/fontconfig.pc.in'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--with-arch='$(TARGET)' \

View File

@ -0,0 +1,65 @@
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From 87a791a05687c7737d1c50381a0de30ba1acf96e Mon Sep 17 00:00:00 2001
From: MXE
Date: Mon, 24 Oct 2011 09:40:10 +0200
Subject: [PATCH] add pkg-config support
based on
http://old.nabble.com/-PATCH--Add-pkgconfig-file-td23312302.html
proposed to upstream
https://sourceforge.net/tracker/?func=detail&aid=3511842&group_id=1032&atid=101032
---
Makefile.am | 3 +++
configure.ac | 1 +
glut.pc.in | 12 ++++++++++++
3 files changed, 16 insertions(+), 0 deletions(-)
create mode 100644 glut.pc.in
diff --git a/Makefile.am b/Makefile.am
index 39c5628..b504bc6 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -68,3 +68,6 @@ dist-hook:
libtool: $(LIBTOOL_DEPS)
$(SHELL) ./config.status --recheck
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = glut.pc
diff --git a/configure.ac b/configure.ac
index 15dc997..2f25bcb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -119,5 +119,6 @@ AC_CONFIG_FILES([
progs/demos/spaceball/Makefile
progs/demos/subwin/Makefile
src/Makefile
+ glut.pc
])
AC_OUTPUT
diff --git a/glut.pc.in b/glut.pc.in
new file mode 100644
index 0000000..ea57c4a
--- /dev/null
+++ b/glut.pc.in
@@ -0,0 +1,12 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@/@PACKAGE@
+
+Name: glut
+Description: A freely licensed alternative to the GLUT library
+Version: @VERSION@
+Libs: -L${libdir} -lglut
+Libs.private: -lglu32 -lopengl32 -lwinmm -lgdi32 -mwindows
+Cflags: -DFREEGLUT_STATIC -I${includedir}
+
--
1.7.8

22
src/freeglut-test.c Normal file
View File

@ -0,0 +1,22 @@
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <GL/glut.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitWindowSize(640,480);
glutInitWindowPosition(10,10);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("FreeGLUT Shapes");
glutMainLoop();
return(0);
}

View File

@ -1,15 +1,12 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# freeglut
PKG := freeglut
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.6.0
$(PKG)_CHECKSUM := 68306c4486c13d005a4e4d54035e0c0b1bdc220b
$(PKG)_CHECKSUM := 4debbe559c6c9841ce1abaddc9d461d17c6083b1
$(PKG)_SUBDIR := freeglut-$(word 1,$(subst -, ,$($(PKG)_VERSION)))
$(PKG)_FILE := freeglut-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://freeglut.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/freeglut/freeglut/$($(PKG)_FILE)
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/freeglut/freeglut/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc
define $(PKG)_UPDATE
@ -19,10 +16,7 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
$(SED) -i 's,Windows\.h,windows.h,' '$(1)/src/freeglut_internal.h'
$(SED) -i 's,WindowsX\.h,windowsx.h,' '$(1)/src/freeglut_internal.h'
$(SED) -i 's,MMSystem\.h,mmsystem.h,' '$(1)/src/freeglut_internal.h'
$(SED) -i 's,Windows\.h,windows.h,' '$(1)/include/GL/freeglut_std.h'
cd '$(1)' && ./autogen.sh
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--disable-shared \
@ -31,5 +25,10 @@ define $(PKG)_BUILD
--disable-debug \
--without-progs \
--without-x
$(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS=
$(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= EXPORT_FLAGS='-DFREEGLUT_STATIC'
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \
'$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-freeglut.exe' \
`'$(TARGET)-pkg-config' glut --cflags --libs`
endef

118
src/freeimage-1-fixes.patch Normal file
View File

@ -0,0 +1,118 @@
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From 7b90b53e9d48aa13aaa42d60b060fb3ff9a5f11c Mon Sep 17 00:00:00 2001
From: MXE
Date: Mon, 20 Feb 2012 09:02:05 +0100
Subject: [PATCH 1/3] add missing header for mingw
taken from
https://sourceforge.net/tracker/?func=detail&aid=3489514&group_id=11504&atid=311504
---
.../Source/LibRawLite/src/libraw_datastream.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/Source/LibRawLite/src/libraw_datastream.cpp b/Source/LibRawLite/src/libraw_datastream.cpp
index 33a81b9..c5d57f6 100644
--- a/Source/LibRawLite/src/libraw_datastream.cpp
+++ b/Source/LibRawLite/src/libraw_datastream.cpp
@@ -8,7 +8,10 @@
#else
#define NO_JASPER
#endif
-
+#ifdef __MINGW32__
+#include <stdexcept>
+#include <winbase.h>
+#endif
LibRaw_byte_buffer::LibRaw_byte_buffer(unsigned sz)
{
--
1.7.9.2
From fa251a7e33ac1c73992a5825a1f1f2fa888af93c Mon Sep 17 00:00:00 2001
From: MXE
Date: Mon, 20 Feb 2012 08:58:53 +0100
Subject: [PATCH 2/3] makefile workarounds (MXE)
---
FreeImage/Makefile.gnu | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/Makefile.gnu b/Makefile.gnu
index e6007ae..631eb82 100644
--- a/Makefile.gnu
+++ b/Makefile.gnu
@@ -9,7 +9,7 @@ INCDIR ?= $(DESTDIR)/usr/include
INSTALLDIR ?= $(DESTDIR)/usr/lib
# Converts cr/lf to just lf
-DOS2UNIX = dos2unix
+DOS2UNIX = echo 'dos2unix not needed '
LIBRARIES = -lstdc++
@@ -40,13 +40,12 @@ all: dist
dist: FreeImage
cp *.a Dist
- cp *.so Dist
cp Source/FreeImage.h Dist
dos2unix:
@$(DOS2UNIX) $(SRCS) $(INCLS)
-FreeImage: $(STATICLIB) $(SHAREDLIB)
+FreeImage: $(STATICLIB)
.c.o:
$(CC) $(CFLAGS) -c $< -o $@
@@ -62,12 +61,8 @@ $(SHAREDLIB): $(MODULES)
install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
- ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
- ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
-# ldconfig
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
clean:
rm -f core Dist/*.* u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME)
--
1.7.9.2
From 5f52e869fdcc5a18592a6b87b83ce1f6c15a3ac0 Mon Sep 17 00:00:00 2001
From: MXE
Date: Mon, 20 Feb 2012 09:47:08 +0100
Subject: [PATCH 3/3] required win version (MXE)
---
FreeImage/Makefile.gnu | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile.gnu b/Makefile.gnu
index 631eb82..1809017 100644
--- a/Makefile.gnu
+++ b/Makefile.gnu
@@ -15,9 +15,9 @@ LIBRARIES = -lstdc++
MODULES = $(SRCS:.c=.o)
MODULES := $(MODULES:.cpp=.o)
-CFLAGS ?= -O3 -fPIC -fexceptions -fvisibility=hidden -DNO_LCMS
+CFLAGS ?= -O3 -fPIC -fexceptions -fvisibility=hidden -DNO_LCMS -DWINVER=0x0501
CFLAGS += $(INCLUDE)
-CXXFLAGS ?= -O3 -fPIC -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy
+CXXFLAGS ?= -O3 -fPIC -fexceptions -fvisibility=hidden -Wno-ctor-dtor-privacy -DWINVER=0x0501
CXXFLAGS += $(INCLUDE)
ifeq ($(shell sh -c 'uname -m 2>/dev/null || echo not'),x86_64)
--
1.7.9.2

View File

@ -1,45 +0,0 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
diff -urN a/Makefile.gnu b/Makefile.gnu
--- a/Makefile.gnu 2010-04-29 11:16:50.000000000 +0200
+++ b/Makefile.gnu 2010-09-03 18:38:07.330351960 +0200
@@ -9,7 +9,7 @@
INSTALLDIR ?= $(DESTDIR)/usr/lib
# Converts cr/lf to just lf
-DOS2UNIX = dos2unix
+DOS2UNIX = echo 'dos2unix not needed '
LIBRARIES = -lstdc++
@@ -40,13 +40,12 @@
dist: FreeImage
cp *.a Dist
- cp *.so Dist
cp Source/FreeImage.h Dist
dos2unix:
@$(DOS2UNIX) $(SRCS) $(INCLS)
-FreeImage: $(STATICLIB) $(SHAREDLIB)
+FreeImage: $(STATICLIB)
.c.o:
$(CC) $(CFLAGS) -c $< -o $@
@@ -62,12 +61,8 @@
install:
install -d $(INCDIR) $(INSTALLDIR)
- install -m 644 -o root -g root $(HEADER) $(INCDIR)
- install -m 644 -o root -g root $(STATICLIB) $(INSTALLDIR)
- install -m 755 -o root -g root $(SHAREDLIB) $(INSTALLDIR)
- ln -sf $(SHAREDLIB) $(INSTALLDIR)/$(VERLIBNAME)
- ln -sf $(VERLIBNAME) $(INSTALLDIR)/$(LIBNAME)
- ldconfig
+ install -m 644 $(HEADER) $(INCDIR)
+ install -m 644 $(STATICLIB) $(INSTALLDIR)
clean:
rm -f core Dist/*.* u2dtmp* $(MODULES) $(STATICLIB) $(SHAREDLIB) $(LIBNAME)

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# FreeImage
PKG := freeimage
$(PKG)_IGNORE :=
$(PKG)_VERSION := 3.15.0
$(PKG)_CHECKSUM := ec2faa01d1b312aab68d77afe62861759c790100
$(PKG)_CHECKSUM := 083ef40a1734e33cc34c55ba87019bf5cce9ca4a
$(PKG)_SUBDIR := FreeImage
$(PKG)_FILE := FreeImage$(subst .,,$($(PKG)_VERSION)).zip
$(PKG)_WEBSITE := http://freeimage.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/freeimage/Source Distribution/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,15 +1,12 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# FreeTDS
PKG := freetds
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.91.dev.20110523RC2
$(PKG)_CHECKSUM := c5848c9bf940782730dddf24a3bff141c9c9c369
$(PKG)_CHECKSUM := 3ab06c8e208e82197dc25d09ae353d9f3be7db52
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.freetds.org/
$(PKG)_URL := https://bitbucket.org/mabrand/mingw-cross-env/downloads/$($(PKG)_FILE)
$(PKG)_URL := http://ibiblio.org/pub/Linux/ALPHA/$(PKG)/stable/$($(PKG)_FILE)
$(PKG)_DEPS := gcc libiconv gnutls
define $(PKG)_UPDATE
@ -25,12 +22,10 @@ define $(PKG)_UPDATE_orig
endef
define $(PKG)_BUILD
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--prefix='$(PREFIX)/$(TARGET)' \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-rpath \
--disable-dependency-tracking \
--disable-shared \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# freetype
PKG := freetype
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.4.4
$(PKG)_CHECKSUM := 1d136cbc51c67b212c91ba04dc5db797f35e64e6
$(PKG)_CHECKSUM := 5cb80ab9d369c4e81a2221bcf45adcea2c996b9b
$(PKG)_SUBDIR := freetype-$($(PKG)_VERSION)
$(PKG)_FILE := freetype-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://freetype.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/freetype/freetype2/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc zlib

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
diff -ru fribidi-0.19.2.orig/lib/fribidi-common.h fribidi-0.19.2/lib/fribidi-common.h
--- fribidi-0.19.2.orig/lib/fribidi-common.h 2007-04-05 18:13:24.000000000 +0200

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# FriBidi
PKG := fribidi
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.19.2
$(PKG)_CHECKSUM := 3889469d96dbca3d8522231672e14cca77de4d5e
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://fribidi.org/
$(PKG)_URL := http://fribidi.org/download/$($(PKG)_FILE)
$(PKG)_DEPS := gcc glib

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# ftgl
PKG := ftgl
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.1.3~rc5
$(PKG)_CHECKSUM := 8508f26c84001d7bc949246affa03744fa1fd22e
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$(subst ~,-,$($(PKG)_VERSION)).tar.bz2
$(PKG)_WEBSITE := http://sourceforge.net/projects/$(PKG)/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/FTGL Source/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc freetype

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# gc
PKG := gc
$(PKG)_IGNORE :=
$(PKG)_VERSION := 7.1
$(PKG)_CHECKSUM := e84cba5d18f4ea5ed4e5fd3f1dc6a46bc190ff6f
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.hpl.hp.com/personal/Hans_Boehm/$(PKG)/
$(PKG)_URL := http://www.hpl.hp.com/personal/Hans_Boehm/$(PKG)/$(PKG)_source/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,5 +1,5 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
This patch has been taken from:
http://gcc.gnu.org/ml/gcc-patches/2010-06/msg00387.html
@ -8,7 +8,7 @@ http://sourceforge.net/tracker/?func=detail&atid=302435&aid=3011968&group_id=243
diff -urN a/gcc/ginclude/float.h b/gcc/ginclude/float.h
--- a/gcc/ginclude/float.h 2009-04-09 17:00:19.000000000 +0200
+++ b/gcc/ginclude/float.h 2010-06-05 12:03:41.887724045 +0200
@@ -236,3 +236,7 @@
@@ -275,3 +275,7 @@
#endif /* __STDC_WANT_DEC_FP__ */
#endif /* _FLOAT_H___ */

View File

@ -0,0 +1,28 @@
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='
'

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GMP for GCC
PKG := gcc-gmp
$(PKG)_IGNORE = $(gmp_IGNORE)
$(PKG)_VERSION = $(gmp_VERSION)
$(PKG)_CHECKSUM = $(gmp_CHECKSUM)
$(PKG)_SUBDIR = $(gmp_SUBDIR)
$(PKG)_FILE = $(gmp_FILE)
$(PKG)_WEBSITE = $(gmp_WEBSITE)
$(PKG)_URL = $(gmp_URL)
$(PKG)_URL_2 = $(gmp_URL_2)
$(PKG)_DEPS :=

View File

@ -1,15 +1,12 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# MPC for GCC
PKG := gcc-mpc
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.9
$(PKG)_CHECKSUM := 229722d553030734d49731844abfef7617b64f1a
$(PKG)_SUBDIR := mpc-$($(PKG)_VERSION)
$(PKG)_FILE := mpc-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.multiprecision.org/
$(PKG)_URL := $($(PKG)_WEBSITE)/mpc/download/$($(PKG)_FILE)
$(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 :=

View File

@ -1,20 +1,15 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# MPFR for GCC
PKG := gcc-mpfr
$(PKG)_IGNORE :=
$(PKG)_VERSION := 3.0.1
$(PKG)_CHECKSUM := fbf402fc196724ae60ef01eb6ca8490b1ea4db69
$(PKG)_SUBDIR := mpfr-$($(PKG)_VERSION)
$(PKG)_FILE := mpfr-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.mpfr.org/
$(PKG)_URL := http://www.mpfr.org/mpfr-$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_URL_2 := http://ftp.gnu.org/gnu/mpfr/$($(PKG)_FILE)
$(PKG)_IGNORE = $(mpfr_IGNORE)
$(PKG)_CHECKSUM = $(mpfr_CHECKSUM)
$(PKG)_SUBDIR = $(mpfr_SUBDIR)
$(PKG)_FILE = $(mpfr_FILE)
$(PKG)_URL = $(mpfr_URL)
$(PKG)_URL_2 = $(mpfr_URL_2)
$(PKG)_DEPS :=
define $(PKG)_UPDATE
wget -q --no-check-certificate -O- 'https://gforge.inria.fr/scm/viewvc.php/tags/?root=mpfr&sortby=date' | \
$(SED) -n 's,.*<a name="\([0-9][^"]*\)".*,\1,p' | \
head -1
echo $(mpfr_VERSION)
endef

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GCC
PKG := gcc
$(PKG)_IGNORE :=
$(PKG)_VERSION := 4.6.0
$(PKG)_CHECKSUM := dcbb5ce724c4bf87b9ec93473d16b71e9ebac483
$(PKG)_CHECKSUM := 03b8241477a9f8a34f6efe7273d92b9b6dd9fe82
$(PKG)_SUBDIR := gcc-$($(PKG)_VERSION)
$(PKG)_FILE := gcc-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://gcc.gnu.org/
$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/gcc/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.cs.tu-berlin.de/pub/gnu/gcc/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := mingwrt w32api binutils gcc-gmp gcc-mpc gcc-mpfr
@ -33,7 +30,9 @@ define $(PKG)_BUILD
mkdir '$(1).build'
cd '$(1).build' && '$(1)/configure' \
--target='$(TARGET)' \
--build="`config.guess`" \
--prefix='$(PREFIX)' \
--libdir='$(PREFIX)/lib' \
--enable-languages='c,c++,objc,fortran' \
--enable-version-specific-runtime-libs \
--with-gcc \
@ -46,7 +45,9 @@ define $(PKG)_BUILD
--disable-win32-registry \
--enable-threads=win32 \
--disable-libgomp \
--disable-libmudflap
--disable-libmudflap \
--with-mpfr-include='$(1)/mpfr/src' \
--with-mpfr-lib='$(1).build/mpfr/src/.libs'
$(MAKE) -C '$(1).build' -j '$(JOBS)'
$(MAKE) -C '$(1).build' -j 1 install
@ -55,19 +56,22 @@ define $(PKG)_BUILD
echo 'PKG_CONFIG_PATH="$$PKG_CONFIG_PATH_$(subst -,_,$(TARGET))" PKG_CONFIG_LIBDIR='\''$(PREFIX)/$(TARGET)/lib/pkgconfig'\'' exec pkg-config --static "$$@"') \
> '$(PREFIX)/bin/$(TARGET)-pkg-config'
chmod 0755 '$(PREFIX)/bin/$(TARGET)-pkg-config'
# create the CMake toolchain file
[ -d '$(dir $(CMAKE_TOOLCHAIN_FILE))' ] || mkdir -p '$(dir $(CMAKE_TOOLCHAIN_FILE))'
(echo 'set(BUILD_SHARED_LIBS OFF)'; \
echo 'set(CMAKE_SYSTEM_NAME Windows)'; \
echo 'set(MSYS 1)'; \
echo 'set(CMAKE_FIND_ROOT_PATH $(PREFIX)/$(TARGET))'; \
echo 'set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)'; \
echo 'set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)'; \
echo 'set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)'; \
echo 'set(CMAKE_C_COMPILER $(PREFIX)/bin/$(TARGET)-gcc)'; \
echo 'set(CMAKE_CXX_COMPILER $(PREFIX)/bin/$(TARGET)-g++)'; \
echo 'set(CMAKE_Fortran_COMPILER $(PREFIX)/bin/$(TARGET)-gfortran)'; \
echo 'set(CMAKE_RC_COMPILER $(PREFIX)/bin/$(TARGET)-windres)'; \
echo 'set(PKG_CONFIG_EXECUTABLE $(PREFIX)/bin/$(TARGET)-pkg-config)'; \
echo 'set(QT_QMAKE_EXECUTABLE $(PREFIX)/bin/$(TARGET)-qmake)'; \
echo 'set(CMAKE_INSTALL_PREFIX $(PREFIX)/$(TARGET) CACHE PATH "Installation Prefix")'; \
echo 'set(CMAKE_BUILD_TYPE Release CACHE STRING "Debug|Release|RelWithDebInfo|MinSizeRel")') \
> '$(CMAKE_TOOLCHAIN_FILE)'

View File

@ -1,5 +1,5 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# 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

View File

@ -1,7 +1,10 @@
/* This file is part of mingw-cross-env. */
/* See doc/index.html for further information. */
/* modified from /examples/arc.c */
/*
* This file is part of MXE.
* See index.html for further information.
*
* This is a slightly modified version of:
* examples/arc.c
*/
#include "gd.h"
#include <stdio.h>

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GD (without support for xpm)
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)_WEBSITE := http://www.libgd.org/
$(PKG)_URL := http://www.libgd.org/releases/$($(PKG)_FILE)
$(PKG)_URL_2 := http://ftp.uni-magdeburg.de/aftp/mirror/linux/slackware/source/l/gd/$($(PKG)_FILE)
$(PKG)_DEPS := gcc freetype libpng jpeg libxml2 pthreads

View File

@ -1,36 +0,0 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
http://trac.osgeo.org/gdal/changeset/21526
Index: /branches/1.8/gdal/frmts/png/pngdataset.cpp
===================================================================
--- a/frmts/png/pngdataset.cpp (revision 21032)
+++ b/frmts/png/pngdataset.cpp (revision 21526)
@@ -1316,5 +1316,5 @@
*/
check = (png_size_t)VSIFReadL(data, (png_size_t)1, length,
- (VSILFILE*)png_ptr->io_ptr);
+ (VSILFILE*)png_get_io_ptr(png_ptr));
if (check != length)
@@ -1331,5 +1331,5 @@
png_uint_32 check;
- check = VSIFWriteL(data, 1, length, (VSILFILE*)(png_ptr->io_ptr));
+ check = VSIFWriteL(data, 1, length, (VSILFILE*)png_get_io_ptr(png_ptr));
if (check != length)
@@ -1342,5 +1342,5 @@
static void png_vsi_flush(png_structp png_ptr)
{
- VSIFFlushL( (VSILFILE*)(png_ptr->io_ptr) );
+ VSIFFlushL( (VSILFILE*)png_get_io_ptr(png_ptr) );
}
@@ -1358,5 +1358,5 @@
// semantics. Ugg.
- jmp_buf* psSetJmpContext = (jmp_buf*) png_ptr->error_ptr;
+ jmp_buf* psSetJmpContext = (jmp_buf*) png_get_error_ptr(png_ptr);
if (psSetJmpContext)
{

View File

@ -1,17 +1,14 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GDAL
PKG := gdal
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.8.0
$(PKG)_CHECKSUM := e5a2802933054050c6fb0b0a0e1f46b5dd195b0a
$(PKG)_CHECKSUM := e2eaaf0fba39137b40c0d3069ac41dfb6f3c76db
$(PKG)_SUBDIR := gdal-$($(PKG)_VERSION)
$(PKG)_FILE := gdal-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.gdal.org/
$(PKG)_URL := http://download.osgeo.org/gdal/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.remotesensing.org/gdal/$($(PKG)_FILE)
$(PKG)_DEPS := gcc zlib libpng tiff libgeotiff jpeg jasper giflib expat sqlite curl geos postgresql
$(PKG)_DEPS := gcc zlib libpng tiff libgeotiff jpeg jasper giflib expat sqlite curl geos postgresql gta
define $(PKG)_UPDATE
wget -q -O- 'http://trac.osgeo.org/gdal/wiki/DownloadSource' | \
@ -43,6 +40,7 @@ define $(PKG)_BUILD
--with-curl='$(PREFIX)/$(TARGET)/bin/curl-config' \
--with-geos='$(PREFIX)/$(TARGET)/bin/geos-config' \
--with-pg='$(PREFIX)/bin/$(TARGET)-pg_config' \
--with-gta='$(PREFIX)/$(TARGET)' \
--without-odbc \
--without-static-proj4 \
--without-xerces \
@ -76,7 +74,7 @@ define $(PKG)_BUILD
--without-ruby \
--without-python \
--without-macosx-framework \
LIBS="-ljpeg -lsecur32 `'$(TARGET)-pkg-config' --libs openssl`"
LIBS="-ljpeg -lsecur32 `'$(TARGET)-pkg-config' --libs openssl libtiff-4`"
$(MAKE) -C '$(1)' -j 1 lib-target
$(MAKE) -C '$(1)' -j 1 install-lib
$(MAKE) -C '$(1)/port' -j 1 install
@ -85,5 +83,5 @@ define $(PKG)_BUILD
$(MAKE) -C '$(1)/alg' -j 1 install
$(MAKE) -C '$(1)/ogr' -j 1 install OGR_ENABLED=
$(MAKE) -C '$(1)/apps' -j 1 install BIN_LIST=
ln -sf $(PREFIX)/$(TARGET)/bin/gdal-config $(PREFIX)/bin/$(TARGET)-gdal-config
ln -sf '$(PREFIX)/$(TARGET)/bin/gdal-config' '$(PREFIX)/bin/$(TARGET)-gdal-config'
endef

View File

@ -1,12 +1,12 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
This patch has been taken from:
http://sourceware.org/bugzilla/show_bug.cgi?id=9098
--- a/gdb/gdbserver/Makefile.in 2010-01-05 02:03:00.000000000 +1100
+++ b/gdb/gdbserver/Makefile.in 2010-05-21 23:49:45.960860228 +1000
@@ -43,7 +43,7 @@
@@ -41,7 +41,7 @@
htmldir = $(prefix)/html
includedir = @includedir@

View File

@ -0,0 +1,94 @@
This file is part of MXE.
See index.html for further information.
This patch has been taken from:
http://sourceware.org/bugzilla/show_bug.cgi?id=13638
===================================================================
RCS file: /cvs/src/src/gdb/configure,v
retrieving revision 1.335.2.2
retrieving revision 1.335.2.3
diff -u -r1.335.2.2 -r1.335.2.3
--- src/gdb/configure 2012/02/21 22:03:47 1.335.2.2
+++ src/gdb/configure 2012/02/21 22:07:40 1.335.2.3
@@ -995,6 +995,8 @@
LIBS
CPPFLAGS
CPP
+MAKEINFO
+MAKEINFOFLAGS
YACC
YFLAGS
XMKMF'
@@ -1696,6 +1698,9 @@
CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP C preprocessor
+ MAKEINFO Parent configure detects if it is of sufficient version.
+ MAKEINFOFLAGS
+ Parameters for MAKEINFO.
YACC The `Yet Another C Compiler' implementation to use. Defaults to
the first program found out of: `bison -y', `byacc', `yacc'.
YFLAGS The list of arguments that will be passed by default to $YACC.
@@ -7158,59 +7163,9 @@
-# Do we have a single-tree copy of texinfo? Even if we do, we can't
-# rely on it - libiberty is built before texinfo.
-# Extract the first word of "makeinfo", so it can be a program name with args.
-set dummy makeinfo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_MAKEINFO+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$MAKEINFO"; then
- ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_MAKEINFO="makeinfo"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-MAKEINFO=$ac_cv_prog_MAKEINFO
-if test -n "$MAKEINFO"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAKEINFO" >&5
-$as_echo "$MAKEINFO" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-if test "x$MAKEINFO" = "x"; then
- as_fn_error "makeinfo is required for compilation" "$LINENO" 5
-else
- case "$MAKEINFO" in
- */missing\ makeinfo*)
- as_fn_error "makeinfo is required for compilation" "$LINENO" 5
- ;;
- esac
-fi
-
+# We never need to detect it in this sub-configure.
+# But preserve it for config.status --recheck.
-# --split-size=5000000 may be already in $MAKEINFO from parent configure.
-# Re-running configure in gdb/ would lose it so ensure it stays present.
-MAKEINFOFLAGS=${MAKEINFOFLAGS---split-size=5000000}
MAKEINFO_EXTRA_FLAGS=""

View File

@ -1,13 +1,10 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# gdb
PKG := gdb
$(PKG)_VERSION := 7.2
$(PKG)_CHECKSUM := 14daf8ccf1307f148f80c8db17f8e43f545c2691
$(PKG)_CHECKSUM := 43a3ee582eae4d69c2babea4f8700b7bec8e37fa
$(PKG)_SUBDIR := gdb-$($(PKG)_VERSION)
$(PKG)_FILE := gdb-$($(PKG)_VERSION)a.tar.bz2
$(PKG)_WEBSITE := http://www.gnu.org/software/gdb/
$(PKG)_FILE := gdb-$($(PKG)_VERSION).tar.bz2
$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/$(PKG)/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.cs.tu-berlin.de/pub/gnu/$(PKG)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc expat libiconv zlib
@ -15,6 +12,8 @@ $(PKG)_DEPS := gcc expat libiconv zlib
define $(PKG)_UPDATE
wget -q -O- 'http://ftp.gnu.org/gnu/gdb/?C=M;O=D' | \
$(SED) -n 's,.*<a href="gdb-\([0-9][^"]*\)\.tar.*,\1,p' | \
grep -v '^7\.3a' | \
sort -r | \
head -1
endef
@ -25,5 +24,5 @@ define $(PKG)_BUILD
--prefix='$(PREFIX)/$(TARGET)' \
CONFIG_SHELL=$(SHELL)
$(MAKE) -C '$(1)' -j '$(JOBS)'
$(MAKE) -C '$(1)/gdb' -j 1 install
$(MAKE) -C '$(1)' -j 1 install
endef

View File

@ -1,16 +1,19 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From d5e7a81cbe6339e1d0dbf97f8814c28e2c806d80 Mon Sep 17 00:00:00 2001
From: mingw-cross-env
From 74e785e4ee6cf375f1c04d9e57e4b70caec6742c Mon Sep 17 00:00:00 2001
From: MXE
Date: Fri, 24 Sep 2010 23:31:24 +0200
Subject: [PATCH] s,DllMain,static _disabled_DllMain,
Subject: [PATCH 1/3] s,DllMain,static _disabled_DllMain,
---
gdk-pixbuf/gdk-pixbuf-io.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gdk-pixbuf/gdk-pixbuf-io.c b/gdk-pixbuf/gdk-pixbuf-io.c
index aa4964f..c925934 100644
index 6a5dbce..e5e1c2d 100644
--- a/gdk-pixbuf/gdk-pixbuf-io.c
+++ b/gdk-pixbuf/gdk-pixbuf-io.c
@@ -226,12 +226,12 @@ skip_space (const char **pos)
@ -29,15 +32,19 @@ index aa4964f..c925934 100644
LPVOID lpvReserved)
{
--
1.7.1
1.7.8
From e6a5b2472a4a5d554b587dfcb798b95035caa6fd Mon Sep 17 00:00:00 2001
From 076713fb334bd200d41b056001f7e44fcae695fb Mon Sep 17 00:00:00 2001
From: Maarten Bosmans <mkbosmans@gmail.com>
Date: Mon, 24 Jan 2011 10:39:22 +0000
Subject: Use png_jmpbuf macro
Subject: [PATCH 2/3] Use png_jmpbuf macro
This makes the png loader compatible with libpng 1.5
---
gdk-pixbuf/io-png.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/gdk-pixbuf/io-png.c b/gdk-pixbuf/io-png.c
index 79c81fd..76f3304 100644
--- a/gdk-pixbuf/io-png.c
@ -96,5 +103,31 @@ index 79c81fd..76f3304 100644
success = FALSE;
goto cleanup;
}
--
cgit v0.8.3.4
--
1.7.8
From 98b7ca46c998a497a1bc6cd563e0201d0cd65de0 Mon Sep 17 00:00:00 2001
From: Mark Brand <mabrand@mabrand.nl>
Date: Fri, 23 Dec 2011 18:54:01 +0100
Subject: [PATCH 3/3] add libtiff-4 to Requires.private
---
gdk-pixbuf-2.0.pc.in | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/gdk-pixbuf-2.0.pc.in b/gdk-pixbuf-2.0.pc.in
index 7e61775..bc33627 100644
--- a/gdk-pixbuf-2.0.pc.in
+++ b/gdk-pixbuf-2.0.pc.in
@@ -12,6 +12,7 @@ Name: GdkPixbuf
Description: Image loading and scaling
Version: @VERSION@
Requires: gobject-2.0 gmodule-no-export-2.0 @PNG_DEP_CFLAGS_PACKAGES@
+Requires.private: libtiff-4
Libs: -L${libdir} -lgdk_pixbuf-@GDK_PIXBUF_API_VERSION@ @GDK_PIXBUF_EXTRA_LIBS@
Cflags: -I${includedir}/gdk-pixbuf-@GDK_PIXBUF_API_VERSION@ @GDK_PIXBUF_EXTRA_CFLAGS@
--
1.7.8

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GDK-pixbuf
PKG := gdk-pixbuf
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.22.1
$(PKG)_CHECKSUM := b452208963ddd84f7280865695b50255fcafaa2e
$(PKG)_SUBDIR := gdk-pixbuf-$($(PKG)_VERSION)
$(PKG)_FILE := gdk-pixbuf-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gdk-pixbuf.org/
$(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
$(PKG)_DEPS := gcc glib libpng jpeg tiff jasper libiconv
@ -21,13 +18,13 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--disable-modules \
--with-included-loaders
--with-included-loaders \
LIBS="`'$(TARGET)-pkg-config' --libs libtiff-4`"
$(MAKE) -C '$(1)' -j '$(JOBS)' install
endef

View File

@ -1,5 +1,7 @@
/* This file is part of mingw-cross-env. */
/* See doc/index.html for further information. */
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <stdarg.h>
#include <stdio.h>

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GEOS
PKG := geos
$(PKG)_IGNORE :=
$(PKG)_VERSION := 3.3.0rc1
$(PKG)_CHECKSUM := 6a8f7153d887d7a5085dcee62251b6f9c82a2283
$(PKG)_CHECKSUM := 942b0bbc61a059bd5269fddd4c0b44a508670cb3
$(PKG)_SUBDIR := geos-$($(PKG)_VERSION)
$(PKG)_FILE := geos-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://trac.osgeo.org/geos/
$(PKG)_URL := http://download.osgeo.org/geos/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.remotesensing.org/geos/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# gettext
PKG := gettext
$(PKG)_IGNORE :=
$(PKG)_VERSION := 0.18.1.1
$(PKG)_CHECKSUM := 5009deb02f67fc3c59c8ce6b82408d1d35d4e38f
$(PKG)_SUBDIR := gettext-$($(PKG)_VERSION)
$(PKG)_FILE := gettext-$($(PKG)_VERSION).tar.gz
$(PKG)_WEBSITE := http://www.gnu.org/software/gettext/
$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/gettext/$($(PKG)_FILE)
$(PKG)_DEPS := gcc libiconv

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# giflib
PKG := giflib
$(PKG)_IGNORE :=
$(PKG)_VERSION := 4.1.6
$(PKG)_CHECKSUM := 22680f604ec92065f04caf00b1c180ba74fb8562
$(PKG)_SUBDIR := giflib-$($(PKG)_VERSION)
$(PKG)_FILE := giflib-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://sourceforge.net/projects/libungif/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/giflib/giflib 4.x/giflib-$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

33
src/glew-test.c Normal file
View File

@ -0,0 +1,33 @@
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <stdio.h>
#include <GL/glew.h>
#ifdef GLEW_MX
/* We are using the multi-context variant of libGLEW */
GLEWContext glew_context;
GLEWContext* glewGetContext()
{
return &glew_context;
}
#endif
int main(int argc, char *argv[])
{
GLenum err;
(void)argc;
(void)argv;
err = glewInit();
if (GLEW_OK != err)
{
fprintf(stderr, "Error: %s\n", glewGetErrorString(err));
}
fprintf(stdout, "Status: Using GLEW %s\n", glewGetString(GLEW_VERSION));
return 0;
}

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GLEW
PKG := glew
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.6.0
$(PKG)_CHECKSUM := ed555d15d0f01239b262c4cf803e97d60d8a18b6
$(PKG)_CHECKSUM := 9266f2360c1687a96f2ea06419671d370b2928d1
$(PKG)_SUBDIR := glew-$($(PKG)_VERSION)
$(PKG)_FILE := glew-$($(PKG)_VERSION).tgz
$(PKG)_WEBSITE := http://glew.sourceforge.net/
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/glew/glew/$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc
@ -19,6 +16,7 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
# Build libGLEW
cd '$(1)' && $(TARGET)-gcc -O2 -DGLEW_STATIC -Iinclude -c -o glew.o src/glew.c
cd '$(1)' && $(TARGET)-ar cr libGLEW.a glew.o
$(TARGET)-ranlib '$(1)/libGLEW.a'
@ -31,12 +29,40 @@ define $(PKG)_BUILD
-e "s|@cflags@|-DGLEW_STATIC|g" \
-e "s|-l@libname@|-lGLEW -lopengl32|g" \
< '$(1)'/glew.pc.in > '$(1)'/glew.pc
# Build libGLEWmx
cd '$(1)' && $(TARGET)-gcc -O2 -DGLEW_STATIC -DGLEW_MX -Iinclude -c -o glewmx.o src/glew.c
cd '$(1)' && $(TARGET)-ar cr libGLEWmx.a glewmx.o
$(TARGET)-ranlib '$(1)/libGLEWmx.a'
$(SED) \
-e "s|@prefix@|$(PREFIX)/$(TARGET)|g" \
-e "s|@libdir@|$(PREFIX)/$(TARGET)/lib|g" \
-e "s|@exec_prefix@|$(PREFIX)/$(TARGET)/bin|g" \
-e "s|@includedir@|$(PREFIX)/$(TARGET)/include/GL|g" \
-e "s|@version@|$(glew_VERSION)|g" \
-e "s|@cflags@|-DGLEW_STATIC -DGLEW_MX|g" \
-e "s|-l@libname@|-lGLEWmx -lopengl32|g" \
< '$(1)'/glew.pc.in > '$(1)'/glewmx.pc
# Install
$(INSTALL) -d '$(PREFIX)/$(TARGET)/lib'
$(INSTALL) -m644 '$(1)/libGLEW.a' '$(PREFIX)/$(TARGET)/lib/'
$(INSTALL) -m644 '$(1)/libGLEW.a' '$(PREFIX)/$(TARGET)/lib/libglew32s.a'
$(INSTALL) -m644 '$(1)/libGLEWmx.a' '$(PREFIX)/$(TARGET)/lib/'
$(INSTALL) -d '$(PREFIX)/$(TARGET)/lib/pkgconfig'
$(INSTALL) -m644 '$(1)/glew.pc' '$(PREFIX)/$(TARGET)/lib/pkgconfig/'
$(INSTALL) -m644 '$(1)/glewmx.pc' '$(PREFIX)/$(TARGET)/lib/pkgconfig/'
$(INSTALL) -d '$(PREFIX)/$(TARGET)/include'
$(INSTALL) -d '$(PREFIX)/$(TARGET)/include/GL'
$(INSTALL) -m644 '$(1)/include/GL/glew.h' '$(1)/include/GL/wglew.h' '$(PREFIX)/$(TARGET)/include/GL/'
# Test
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \
'$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-glew.exe' \
`'$(TARGET)-pkg-config' glew --cflags --libs`
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \
'$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-glewmx.exe' \
`'$(TARGET)-pkg-config' glewmx --cflags --libs`
endef

View File

@ -1,12 +1,12 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From 4693f62d3f01f7b7d26607e6eed843202cbf90f7 Mon Sep 17 00:00:00 2001
From: mingw-cross-env
From: MXE
Date: Thu, 23 Sep 2010 21:36:04 +0200
Subject: [PATCH 1/7] no gtk doc check
Subject: [PATCH 1/5] no gtk doc check
diff --git a/configure.ac b/configure.ac
@ -27,9 +27,9 @@ index a821267..2e541d2 100644
From 46d0d473e6fb32c5204d063cad5f5073d2a139a5 Mon Sep 17 00:00:00 2001
From: mingw-cross-env
From: MXE
Date: Thu, 23 Sep 2010 21:41:51 +0200
Subject: [PATCH 2/7] optional gettext
Subject: [PATCH 2/5] optional gettext
diff --git a/configure.ac b/configure.ac
@ -69,9 +69,9 @@ index c710046..269bfdf 100644
From 3473b5183b2e59d247cd1db053efc6c9ecaf2aab Mon Sep 17 00:00:00 2001
From: mingw-cross-env
From: MXE
Date: Thu, 23 Sep 2010 21:42:46 +0200
Subject: [PATCH 3/7] fix tool paths
Subject: [PATCH 3/5] fix tool paths
diff --git a/glib-2.0.pc.in b/glib-2.0.pc.in
@ -96,9 +96,9 @@ index 3d1ac12..58e1ecf 100644
From 0e57514812500d5d4dee03e1be8059a25876dd99 Mon Sep 17 00:00:00 2001
From: mingw-cross-env
From: MXE
Date: Thu, 23 Sep 2010 21:45:50 +0200
Subject: [PATCH 4/7] fix dependency libs
Subject: [PATCH 4/5] fix dependency libs
diff --git a/configure.ac b/configure.ac
@ -130,9 +130,9 @@ index 58e1ecf..17b2133 100644
From 87931c81f6401fb0c25064ec0ba2edca9ec53924 Mon Sep 17 00:00:00 2001
From: mingw-cross-env
From: MXE
Date: Sat, 25 Sep 2010 00:07:33 +0200
Subject: [PATCH 5/7] add -ldnsapi to gio-2.0.pc
Subject: [PATCH 5/5] add -ldnsapi to gio-2.0.pc
diff --git a/gio-2.0.pc.in b/gio-2.0.pc.in
@ -149,56 +149,3 @@ index 92cda85..7a4e224 100644
Cflags:
--
1.7.1
From 58d20f08e876298e795f7282ddc6cfccbe6f05fe Mon Sep 17 00:00:00 2001
From: mingw-cross-env
Date: Sun, 3 Oct 2010 20:24:46 +0200
Subject: [PATCH 6/7] darwin config libiconv
diff --git a/configure.ac b/configure.ac
index e472768..a681285 100644
--- a/configure.ac
+++ b/configure.ac
@@ -374,6 +374,12 @@ dnl ***********************
dnl
dnl We do this before the gettext checks, to avoid distortion
+case $host in
+ *-*-darwin*)
+ with_libiconv=native
+ ;;
+esac
+
dnl On Windows we use a native implementation
if test x"$glib_native_win32" = xyes; then
--
1.7.1
From a340fa1dfbf9a8ac58cd1b026bd26de30d7fc581 Mon Sep 17 00:00:00 2001
From: mingw-cross-env
Date: Sun, 3 Oct 2010 20:25:32 +0200
Subject: [PATCH 7/7] apple iconv
This patch has been taken from:
http://mail.gnome.org/archives/gtk-list/2009-August/msg00146.html
diff --git a/glib/gconvert.c b/glib/gconvert.c
index 52a3dd8..d8b4f89 100644
--- a/glib/gconvert.c
+++ b/glib/gconvert.c
@@ -61,7 +61,7 @@
#if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)
#error GNU libiconv in use but included iconv.h not from libiconv
#endif
-#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
+#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H) && !defined(__APPLE__)
#error GNU libiconv not in use but included iconv.h is from libiconv
#endif
--
1.7.1

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GLib
PKG := glib
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.28.6
$(PKG)_CHECKSUM := 51996339c823cf36ba28c774c4afad933d5f5744
$(PKG)_CHECKSUM := 20cd63705a8805260da0320c65b979233f2e3c18
$(PKG)_SUBDIR := glib-$($(PKG)_VERSION)
$(PKG)_FILE := glib-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gtk.org/
$(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/glib/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
$(PKG)_DEPS := gcc gettext pcre libiconv zlib dbus
@ -53,10 +50,9 @@ define $(PKG)_BUILD
$(INSTALL) -m755 '$(1).native/gio/glib-compile-schemas' '$(PREFIX)/$(TARGET)/bin/'
# cross build
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
--with-threads=win32 \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GLibmm
PKG := glibmm
$(PKG)_IGNORE :=
$(PKG)_VERSION := 2.28.1
$(PKG)_CHECKSUM := 76cfba52d8fb1e3f46d14c3fea31269deb49e2fc
$(PKG)_CHECKSUM := d15bc0fed7dea6fec73746370653687f74e02592
$(PKG)_SUBDIR := glibmm-$($(PKG)_VERSION)
$(PKG)_FILE := glibmm-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gtkmm.org/
$(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/glibmm/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
$(PKG)_DEPS := gcc glib libsigc++
@ -20,11 +17,9 @@ define $(PKG)_UPDATE
endef
define $(PKG)_BUILD
# cross build
# wine confuses the cross-compiling detection, so set it explicitly
$(SED) -i 's,cross_compiling=no,cross_compiling=yes,' '$(1)/configure'
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--build="`config.guess`" \
--disable-shared \
--prefix='$(PREFIX)/$(TARGET)' \
CXX='$(TARGET)-c++' \

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GMP
PKG := gmp
$(PKG)_IGNORE :=
$(PKG)_VERSION := 5.0.2
$(PKG)_CHECKSUM := 2968220e1988eabb61f921d11e5d2db5431e0a35
$(PKG)_CHECKSUM := ea4ea7c3f10436ef5ae7a75b3fad163a8b86edc0
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gmplib.org/
$(PKG)_URL := ftp://ftp.gmplib.org/pub/$(PKG)-$($(PKG)_VERSION)/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.cs.tu-berlin.de/pub/gnu/$(PKG)/$($(PKG)_FILE)
$(PKG)_DEPS := gcc

49
src/gnutls-1-fixes.patch Normal file
View File

@ -0,0 +1,49 @@
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From 6e89465f1e792f5d527708544cce1ef92ae4669b Mon Sep 17 00:00:00 2001
From: MXE
Date: Fri, 28 Oct 2011 09:23:41 +0200
Subject: [PATCH 1/2] add missing static library linking
diff --git a/lib/gnutls.pc.in b/lib/gnutls.pc.in
index c45f8f3..57d0dbb 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.gnu.org/software/gnutls/
Version: @VERSION@
Libs: -L${libdir} -lgnutls
-Libs.private: @LTLIBNETTLE@
+Libs.private: @LTLIBNETTLE@ @LIBS@
@GNUTLS_REQUIRES_PRIVATE@
Cflags: -I${includedir}
--
1.7.9.2
From aa11a6f645ce93f80fbffd7e72c6964bdfd68542 Mon Sep 17 00:00:00 2001
From: MXE
Date: Thu, 24 Nov 2011 15:06:06 +0100
Subject: [PATCH 2/2] disable doc and test (MXE specific)
diff --git a/Makefile.am b/Makefile.am
index 0afe4bd..da7436a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -23,7 +23,7 @@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --disable-valgrind-tests
SUBDIRS = gl lib extra po
-SUBDIRS += src doc tests
+SUBDIRS += src
if HAVE_GUILE
SUBDIRS += guile
--
1.7.9.2

18
src/gnutls-test.c Normal file
View File

@ -0,0 +1,18 @@
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <gnutls/gnutls.h>
int main(int argc, char *argv[])
{
(void)argc;
(void)argv;
gnutls_global_init ();
gnutls_global_deinit ();
return 0;
}

View File

@ -1,30 +1,30 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GnuTLS
PKG := gnutls
$(PKG)_VERSION := 2.12.5
$(PKG)_CHECKSUM := dd45d4fb7c365d18803b9eafef838b310c899d67
$(PKG)_CHECKSUM := 2e2adc41e0c75d8170fdca5955bd007ae93ceada
$(PKG)_SUBDIR := gnutls-$($(PKG)_VERSION)
$(PKG)_FILE := gnutls-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.gnu.org/software/gnutls/
$(PKG)_URL := ftp://ftp.gnu.org/pub/gnu/gnutls/$($(PKG)_FILE)
$(PKG)_FILE := gnutls-$($(PKG)_VERSION).tar.xz
$(PKG)_URL := ftp://ftp.gnutls.org/pub/gnutls/$($(PKG)_FILE)
$(PKG)_URL_2 := ftp://ftp.gnupg.org/gcrypt/gnutls/$($(PKG)_FILE)
$(PKG)_DEPS := gcc zlib libgcrypt
$(PKG)_DEPS := gcc nettle zlib
define $(PKG)_UPDATE
wget -q -O- 'http://git.savannah.gnu.org/gitweb/?p=gnutls.git;a=tags' | \
grep '<a class="list name"' | \
$(SED) -n 's,.*<a[^>]*>gnutls_\([0-9]*_[0-9]*[02468]_[^<]*\)<.*,\1,p' | \
$(SED) 's,_,.,g' | \
grep -v '^2\.' | \
head -1
endef
define $(PKG)_BUILD
echo '/* DEACTIVATED */' > '$(1)/gl/gai_strerror.c'
$(SED) -i 's/^\(SUBDIRS.*\) tests/\1/;' '$(1)/Makefile.in'
$(SED) -i 's/^\(SUBDIRS.*\) doc/\1/;' '$(1)/Makefile.in'
$(SED) -i 's, sed , $(SED) ,g' '$(1)/gl/tests/Makefile.in'
$(SED) -i 's, sed , $(SED) ,g' '$(1)/gl/tests/Makefile.am'
cd '$(1)' && aclocal -I m4 -I gl/m4 -I src/libopts/m4 --install
cd '$(1)' && autoconf
cd '$(1)' && automake
# AI_ADDRCONFIG referenced by src/serv.c but not provided by mingw.
# Value taken from http://msdn.microsoft.com/en-us/library/windows/desktop/ms737530%28v=vs.85%29.aspx
cd '$(1)' && ./configure \
--host='$(TARGET)' \
--enable-static \
@ -34,9 +34,15 @@ define $(PKG)_BUILD
--disable-guile \
--with-included-libtasn1 \
--with-included-libcfg \
--with-included-pakchois \
--with-libgcrypt \
--without-lzo \
LIBS='-lz'
$(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= defexec_DATA=
--without-p11-kit \
--disable-silent-rules \
CPPFLAGS='-DWINVER=0x0501 -DAI_ADDRCONFIG=0x0400' \
LIBS='-lws2_32' \
ac_cv_prog_AR='$(TARGET)-ar'
$(MAKE) -C '$(1)' -j '$(JOBS)' install
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \
'$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-gnutls.exe' \
`'$(TARGET)-pkg-config' gnutls --cflags --libs`
endef

View File

@ -1,13 +1,14 @@
This file is part of mingw-cross-env.
See doc/index.html for further information.
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=3130497&group_id=73485&atid=537937
diff -r 89c7abc7139f configure.ac
--- a/configure.ac Mon Dec 06 15:42:37 2010 +0100
+++ b/configure.ac Mon Dec 06 16:39:59 2010 +0100
@@ -2135,12 +2135,13 @@
diff --git a/configure.ac b/configure.ac
index 979d2c4..12d4555 100755
--- a/configure.ac
+++ b/configure.ac
@@ -2388,12 +2388,13 @@ then
# Debian installs libxml headers under /usr/include/libxml2/libxml with
# the shared library installed under /usr/lib, whereas the package
# installs itself under $prefix/libxml and $prefix/lib.
@ -22,7 +23,7 @@ diff -r 89c7abc7139f configure.ac
fi
failed=0
passed=0
@@ -2156,8 +2157,9 @@
@@ -2416,8 +2417,9 @@ then
LDFLAGS="$OLD_LDFLAGS"
CPPFLAGS="$OLD_CPPFLAGS"
else
@ -33,10 +34,11 @@ diff -r 89c7abc7139f configure.ac
AC_DEFINE(HasXML,1,Define if you have XML library)
AC_MSG_RESULT(yes)
have_xml='yes'
diff -r 89c7abc7139f magick/GraphicsMagick.pc.in
--- a/magick/GraphicsMagick.pc.in Mon Dec 06 15:42:37 2010 +0100
+++ b/magick/GraphicsMagick.pc.in Mon Dec 06 16:39:59 2010 +0100
@@ -8,4 +8,5 @@
diff --git a/magick/GraphicsMagick.pc.in b/magick/GraphicsMagick.pc.in
index 5757b37..87e3fd4 100644
--- a/magick/GraphicsMagick.pc.in
+++ b/magick/GraphicsMagick.pc.in
@@ -8,4 +8,5 @@ Name: GraphicsMagick
Version: @PACKAGE_VERSION@
Description: GraphicsMagick image processing library
Libs: -L${libdir} -lGraphicsMagick

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,7 @@
/* This file is part of mingw-cross-env. */
/* See doc/index.html for further information. */
/*
* This file is part of MXE.
* See index.html for further information.
*/
#include <Magick++.h>

View File

@ -1,14 +1,11 @@
# This file is part of mingw-cross-env.
# See doc/index.html for further information.
# This file is part of MXE.
# See index.html for further information.
# GraphicsMagick
PKG := graphicsmagick
$(PKG)_IGNORE :=
$(PKG)_VERSION := 1.3.12
$(PKG)_CHECKSUM := 6b8a414af162ad8679f2f04b10f128edc8ee3233
$(PKG)_CHECKSUM := 7ef5711a18da0a3b6b143548a2a7822597ea416d
$(PKG)_SUBDIR := GraphicsMagick-$($(PKG)_VERSION)
$(PKG)_FILE := GraphicsMagick-$($(PKG)_VERSION).tar.bz2
$(PKG)_WEBSITE := http://www.graphicsmagick.org/
$(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
@ -45,7 +42,8 @@ define $(PKG)_BUILD
--with-xml \
--with-zlib \
--without-x \
ac_cv_prog_xml2_config='$(PREFIX)/$(TARGET)/bin/xml2-config'
ac_cv_prog_xml2_config='$(PREFIX)/$(TARGET)/bin/xml2-config' \
ac_cv_path_xml2_config='$(PREFIX)/$(TARGET)/bin/xml2-config'
$(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS=
$(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS=

Some files were not shown because too many files have changed in this diff Show More