mirror of https://git.wownero.com/dsc/mxe.git
Merge eebe3fc3de
into 49ff74142b
This commit is contained in:
commit
6375bdf9d7
|
@ -0,0 +1,24 @@
|
|||
#Specify the cross compile
|
||||
export CROSS_COMPILE=1
|
||||
#ac_add_options --enable-application=browser
|
||||
ac_add_options --enable-application=mail
|
||||
#ac_add_options --enable-application=suite
|
||||
#ac_add_options --enable-application=calendar
|
||||
#ac_add_options --enable-application=xulrunner
|
||||
|
||||
ac_add_options --target=i686-w64-mingw32
|
||||
ac_add_options --enable-default-toolkit=cairo-windows
|
||||
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-mingw
|
||||
|
||||
ac_add_options --enable-debug
|
||||
ac_add_options --disable-optimize
|
||||
|
||||
ac_add_options --disable-updater
|
||||
ac_add_options --disable-crashreporter
|
||||
ac_add_options --disable-maintenance-service
|
||||
ac_add_options --disable-webrtc
|
||||
|
||||
ac_add_options --disable-accessibility # uncomment if you don't have widl installed
|
||||
|
||||
# Use parallel build. Adjust number of processes for your setup.
|
||||
mk_add_options MOZ_MAKE_FLAGS=-j8
|
63
Makefile
63
Makefile
|
@ -12,7 +12,7 @@ MXE_TRIPLETS := i686-w64-mingw32 x86_64-w64-mingw32
|
|||
MXE_LIB_TYPES := static shared
|
||||
MXE_TARGET_LIST := $(strip $(foreach TRIPLET,$(MXE_TRIPLETS),\
|
||||
$(addprefix $(TRIPLET).,$(MXE_LIB_TYPES))))
|
||||
MXE_TARGETS := i686-w64-mingw32.static
|
||||
MXE_TARGETS := i686-w64-mingw32.static x86_64-w64-mingw32.static
|
||||
.DEFAULT_GOAL := all-filtered
|
||||
|
||||
DEFAULT_MAX_JOBS := 6
|
||||
|
@ -357,6 +357,7 @@ else
|
|||
echo; \
|
||||
echo '# This variable controls the targets that will build.'; \
|
||||
echo '#MXE_TARGETS := $(MXE_TARGET_LIST)'; \
|
||||
echo 'MXE_TARGETS := $(MXE_TARGETS)'; \
|
||||
echo; \
|
||||
echo '# This variable controls which plugins are in use.'; \
|
||||
echo '# See plugins/README.md for further information.'; \
|
||||
|
@ -368,9 +369,9 @@ else
|
|||
echo; \
|
||||
echo '# The three lines below makes `make` build these "local'; \
|
||||
echo '# packages" instead of all packages.'; \
|
||||
echo '#LOCAL_PKG_LIST := boost curl file flac lzo pthreads vorbis wxwidgets'; \
|
||||
echo 'LOCAL_PKG_LIST := biosig sigviewer stimfit dcmtk edfbrowser'; \
|
||||
echo '#.DEFAULT_GOAL := local-pkg-list'; \
|
||||
echo '#local-pkg-list: $$(LOCAL_PKG_LIST)'; \
|
||||
echo 'local-pkg-list: $$(LOCAL_PKG_LIST)'; \
|
||||
} >'$(PWD)/settings.mk')
|
||||
endif
|
||||
|
||||
|
@ -737,25 +738,25 @@ $(PREFIX)/$(3)/installed/$(1): $(PKG_MAKEFILES) \
|
|||
$(else),
|
||||
@$(PRINTF_FMT) '[build]' '$(1)' '$(3)' | $(RTRIM)
|
||||
@[ -d '$(LOG_DIR)/$(TIMESTAMP)' ] || mkdir -p '$(LOG_DIR)/$(TIMESTAMP)'
|
||||
@touch '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)'
|
||||
@ln -sf '$(TIMESTAMP)/$(1)_$(3)' '$(LOG_DIR)/$(1)_$(3)'
|
||||
@touch '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)'
|
||||
@ln -sf '$(TIMESTAMP)/$(1)_$(3)' '$(LOG_DIR)/$(1)_$(3)'
|
||||
@if ! (time $(PRELOAD) WINEPREFIX='$(2)/readonly' \
|
||||
$(MAKE) -f '$(MAKEFILE)' \
|
||||
'build-only-$(1)_$(3)' \
|
||||
WGET=false \
|
||||
) &> '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)'; then \
|
||||
echo; \
|
||||
echo 'Failed to build package $(1) for target $(3)!'; \
|
||||
echo '------------------------------------------------------------'; \
|
||||
$(if $(findstring undefined, $(origin MXE_VERBOSE)),\
|
||||
tail -n 10 '$(LOG_DIR)/$(1)_$(3)' | $(SED) -n '/./p';, \
|
||||
$(SED) -n '/./p' '$(LOG_DIR)/$(1)_$(3)';) \
|
||||
echo '------------------------------------------------------------'; \
|
||||
echo '[log] $(LOG_DIR)/$(1)_$(3)'; \
|
||||
echo; \
|
||||
exit 1; \
|
||||
fi
|
||||
@$(PRINTF_FMT) '[done]' '$(1)' '$(3)' "`grep -a '^du:.*KiB$$\' '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)' | cut -d ':' -f2 | tail -1`" \
|
||||
echo; \
|
||||
echo 'Failed to build package $(1) for target $(3)!'; \
|
||||
echo '------------------------------------------------------------'; \
|
||||
$(if $(findstring undefined, $(origin MXE_VERBOSE)),\
|
||||
tail -n 10 '$(LOG_DIR)/$(1)_$(3)' | $(SED) -n '/./p';, \
|
||||
$(SED) -n '/./p' '$(LOG_DIR)/$(1)_$(3)';) \
|
||||
echo '------------------------------------------------------------'; \
|
||||
echo '[log] $(LOG_DIR)/$(1)_$(3)'; \
|
||||
echo; \
|
||||
exit 1; \
|
||||
fi
|
||||
@$(PRINTF_FMT) '[done]' '$(1)' '$(3)' "`grep -a '^du:.*KiB$$\' '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)' | cut -d ':' -f2 | tail -1`" \
|
||||
"`grep -a '^real.*m.*s$$\' '$(LOG_DIR)/$(TIMESTAMP)/$(1)_$(3)' | tr '\t' ' ' | cut -d ' ' -f2 | tail -1`"
|
||||
)
|
||||
$(else),
|
||||
|
@ -843,9 +844,9 @@ WALK_UPSTREAM = \
|
|||
$(foreach PKG,$(filter $(1),$(PKGS)),\
|
||||
$(foreach TARGET,$($(PKG)_TARGETS), \
|
||||
$(foreach DEP,$(sort $(subst $(BUILD)~,,$(subst $(TARGET)~,,$(PKG_ALL_DEPS)))),\
|
||||
$(if $(filter-out $(PKGS_VISITED),$(DEP)),\
|
||||
$(call SET_APPEND,PKGS_VISITED,$(DEP))\
|
||||
$(call WALK_UPSTREAM,$(DEP))\
|
||||
$(if $(filter-out $(PKGS_VISITED),$(DEP)),\
|
||||
$(call SET_APPEND,PKGS_VISITED,$(DEP))\
|
||||
$(call WALK_UPSTREAM,$(DEP))\
|
||||
$(DEP))))))
|
||||
|
||||
# not really walking downstream - that seems to be quadratic, so take
|
||||
|
@ -936,7 +937,7 @@ print-deps-for-build-pkg:
|
|||
$(info $(strip for-build-pkg $(TARGET)~$(PKG) \
|
||||
$(subst $(space),-,$($(PKG)_VERSION)-$(OS_SHORT_NAME)) \
|
||||
$(subst /installed/,~,$(PKG_DEPS) $(PKG_OO_DEPS)))))))
|
||||
@echo -n
|
||||
@echo -n
|
||||
|
||||
BUILD_PKG_TMP_FILES := *-*.list mxe-*.tar.xz mxe-*.deb* wheezy jessie
|
||||
|
||||
|
@ -1042,10 +1043,10 @@ docs/build-matrix.html: $(foreach 1,$(PKGS),$(PKG_MAKEFILES))
|
|||
# $(eval $(VIRTUAL_PKGCOUNT += x))
|
||||
# vs
|
||||
# $(eval $(VIRTUAL_PKGCOUNT := $(call int_inc,$(VIRTUAL_PKGCOUNT))))
|
||||
@$(foreach PKG,$(PKGS), \
|
||||
$(eval $(PKG)_VIRTUAL := $(true)) \
|
||||
$(eval $(PKG)_BUILD_ONLY := $(true)) \
|
||||
echo -e '<tr>\n \
|
||||
@$(foreach PKG,$(PKGS), \
|
||||
$(eval $(PKG)_VIRTUAL := $(true)) \
|
||||
$(eval $(PKG)_BUILD_ONLY := $(true)) \
|
||||
echo -e '<tr>\n \
|
||||
<th class="row" \
|
||||
title="$($(PKG)_MESSAGE)"> \
|
||||
$(PKG) \
|
||||
|
@ -1054,15 +1055,15 @@ docs/build-matrix.html: $(foreach 1,$(PKGS),$(PKG_MAKEFILES))
|
|||
</th>\n \
|
||||
<td>$(call substr,$($(PKG)_VERSION),1,12) \
|
||||
$(if $(call gt,$(call strlen,$($(PKG)_VERSION)),12),…)</td>\n\
|
||||
$(foreach TARGET,$(MXE_TARGET_LIST), \
|
||||
$(foreach TARGET,$(MXE_TARGET_LIST), \
|
||||
$(if $(filter $(VIRTUAL_PKG_TYPES),$($(PKG)_TYPE)), \
|
||||
$(if $(filter $(TARGET),$($(PKG)_TARGETS)), \
|
||||
<td class="neutral">•</td>, \
|
||||
<td></td>), \
|
||||
$(if $(filter $(TARGET),$($(PKG)_TARGETS)), \
|
||||
$(if $(value $(call LOOKUP_PKG_RULE,$(PKG),BUILD,$(TARGET))), \
|
||||
$(eval $(TARGET)_PKGCOUNT += x) \
|
||||
<td class="supported">✓</td>, \
|
||||
$(if $(value $(call LOOKUP_PKG_RULE,$(PKG),BUILD,$(TARGET))), \
|
||||
$(eval $(TARGET)_PKGCOUNT += x) \
|
||||
<td class="supported">✓</td>, \
|
||||
<td class="unsupported">×</td>),\
|
||||
<td></td>))\n) \
|
||||
$(if $(filter $(VIRTUAL_PKG_TYPES),$($(PKG)_TYPE)), \
|
||||
|
@ -1072,10 +1073,10 @@ docs/build-matrix.html: $(foreach 1,$(PKGS),$(PKG_MAKEFILES))
|
|||
<td></td>), \
|
||||
$(if $(filter $(BUILD),$($(PKG)_TARGETS)), \
|
||||
$(if $(value $(call LOOKUP_PKG_RULE,$(PKG),BUILD,$(BUILD))), \
|
||||
<td class="supported">✓</td>, \
|
||||
<td class="supported">✓</td>, \
|
||||
<td class="unsupported">×</td>), \
|
||||
<td></td>))\n \
|
||||
</tr>\n' >> $@ $(newline) \
|
||||
</tr>\n' >> $@ $(newline) \
|
||||
$(if $(call seq,$(BUILD),$($(PKG)_TARGETS)), \
|
||||
$(eval BUILD_ONLY_PKGCOUNT += x)))
|
||||
@echo '<tr>' >> $@
|
||||
|
|
24
README.md
24
README.md
|
@ -8,21 +8,13 @@
|
|||
[![Async Chat (Trial))](https://img.shields.io/badge/zulip-join_chat-brightgreen.svg)](https://mxe.zulipchat.com/)
|
||||
|
||||
MXE (M cross environment) is a GNU Makefile that compiles a cross
|
||||
compiler and cross compiles many free libraries such as SDL and
|
||||
Qt. Thus, it provides a nice cross compiling environment for
|
||||
various target platforms, which:
|
||||
|
||||
* is designed to run on any Unix system
|
||||
* is easy to adapt and to extend
|
||||
* builds many free libraries in addition to the cross compiler
|
||||
* can also build just a subset of the packages, and automatically builds their dependencies
|
||||
* downloads all needed packages and verifies them by their checksums
|
||||
* is able to update the version numbers of all packages automatically
|
||||
* directly uses source packages, thus ensuring the whole build mechanism is transparent
|
||||
* allows inter-package and intra-package parallel builds whenever possible
|
||||
* bundles [ccache](https://ccache.samba.org) to speed up repeated builds
|
||||
* integrates well with autotools, cmake, qmake, and hand-written makefiles.
|
||||
* has been in continuous development since 2007 and is used by several projects
|
||||
compiler and cross compiles many free libraries. This repository is derived from
|
||||
[MXE](https://github.com/mxe/mxe), and extended for compiling the following tools:
|
||||
- [libiosig/biosig-tools](http://biosig.sourceforge.net/)
|
||||
- [sigviewer](https://github.com/cbrnr/sigviewer)
|
||||
- [stimfit](https://github.com/neurodroid/stimfit)-lite (without python)
|
||||
- [edfbrowswer](https://www.teuniz.net/edfbrowser/)
|
||||
It compiles also required prerequisites, and many other packages.
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
|
@ -32,7 +24,7 @@ various target platforms, which:
|
|||
- `x86_64-w64-mingw32`
|
||||
* Packages:
|
||||
- static
|
||||
- shared
|
||||
- (shared - not tested here, use https://github.com/mxe instead)
|
||||
* GCC Threading Libraries (`winpthreads` is always available):
|
||||
- [posix](https://github.com/mxe/mxe/pull/958) [(default)](https://github.com/mxe/mxe/issues/2258)
|
||||
- win32 (supported by limited amount packages)
|
||||
|
|
|
@ -4,8 +4,8 @@ PKG := apr-util
|
|||
$(PKG)_WEBSITE := https://apr.apache.org/
|
||||
$(PKG)_DESCR := APR-util
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.5.4
|
||||
$(PKG)_CHECKSUM := 976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19
|
||||
$(PKG)_VERSION := 1.6.0
|
||||
$(PKG)_CHECKSUM := 483ef4d59e6ac9a36c7d3fd87ad7b9db7ad8ae29c06b9dd8ff22dda1cc416389
|
||||
$(PKG)_SUBDIR := apr-util-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := apr-util-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://archive.apache.org/dist/apr/$($(PKG)_FILE)
|
||||
|
|
|
@ -4,8 +4,8 @@ PKG := apr
|
|||
$(PKG)_WEBSITE := https://apr.apache.org/
|
||||
$(PKG)_DESCR := APR
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.5.2
|
||||
$(PKG)_CHECKSUM := 1af06e1720a58851d90694a984af18355b65bb0d047be03ec7d659c746d6dbdb
|
||||
$(PKG)_VERSION := 1.6.2
|
||||
$(PKG)_CHECKSUM := 4fc24506c968c5faf57614f5d0aebe0e9d0b90afa47a883e1a1ca94f15f4a42e
|
||||
$(PKG)_SUBDIR := apr-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := apr-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://archive.apache.org/dist/apr/$($(PKG)_FILE)
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := arpack
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.5.0
|
||||
$(PKG)_CHECKSUM := 50f7a3e3aec2e08e732a487919262238f8504c3ef927246ec3495617dde81239
|
||||
$(PKG)_SUBDIR := $(PKG)-ng-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := arpack-ng_$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://github.com/opencollab/arpack-ng/archive/$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_DEPS := lapack blas
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://github.com/opencollab/arpack-ng/releases' | \
|
||||
$(SED) -n 's,.*href="/opencollab/arpack-ng/archive/\([0-9][^"]*\)\.tar.*,\1,p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(1)' && '$(1)/bootstrap'
|
||||
mkdir '$(1)/.build'
|
||||
cd '$(1)/.build' && '$(1)/configure' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--enable-static --disable-shared \
|
||||
--prefix='$(PREFIX)/$(TARGET)'
|
||||
$(MAKE) -C '$(1)/.build' -j '$(JOBS)'
|
||||
$(MAKE) -C '$(1)/.build' install
|
||||
|
||||
if [ $(BUILD_SHARED) = yes ]; then \
|
||||
$(MAKE_SHARED_FROM_STATIC) --ar '$(TARGET)-ar' --ld '$(TARGET)-gfortran' '$(PREFIX)/$(TARGET)/lib/libarpack.a' -llapack -lblas; \
|
||||
$(INSTALL) -d '$(PREFIX)/$(TARGET)/bin'; \
|
||||
$(INSTALL) -m755 '$(PREFIX)/$(TARGET)/lib/libarpack.dll.a' '$(PREFIX)/$(TARGET)/lib/libarpack.dll.a'; \
|
||||
$(INSTALL) -m755 '$(PREFIX)/$(TARGET)/lib/libarpack.dll' '$(PREFIX)/$(TARGET)/bin/libarpack.dll'; \
|
||||
rm -f '$(PREFIX)/$(TARGET)/lib/libarpack.dll'; \
|
||||
rm -f '$(PREFIX)/$(TARGET)/lib/libarpack.la'; \
|
||||
fi
|
||||
endef
|
|
@ -0,0 +1,37 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
# Qwt - Qt widgets for technical applications
|
||||
PKG := automoc4
|
||||
$(PKG)_VERSION := 0.9.88
|
||||
$(PKG)_CHECKSUM := 234116f4c05ae21d828594d652b4c4a052ef75727e2d8a4f3a4fb605de9e4c49
|
||||
#d864c3dda99d8b5f625b9267acfa1d88ff617e3a
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_WEBSITE := http://www.kde.org/
|
||||
$(PKG)_URL := http://download.kde.org/stable/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc qt
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://download.kde.org/stable/automoc4/' | \
|
||||
$(SED) -n 's,.*a href="\([0-9.]*\)/".*,\1,p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1)'/build
|
||||
|
||||
cd '$(1)'/build && cmake \
|
||||
-DCMAKE_INSTALL_PREFIX=$(PREFIX)/$(TARGET)/qt/ \
|
||||
-DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
|
||||
..
|
||||
|
||||
$(MAKE) -C '$(1)/build' -j $(JOBS) VERBOSE=1
|
||||
# $(MAKE) -C '$(1)/build' -j $(JOBS) install
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_i686-pc-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
|
|
@ -3,8 +3,8 @@
|
|||
PKG := binutils
|
||||
$(PKG)_WEBSITE := https://www.gnu.org/software/binutils/
|
||||
$(PKG)_DESCR := GNU Binutils
|
||||
$(PKG)_VERSION := 2.28
|
||||
$(PKG)_CHECKSUM := 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72
|
||||
$(PKG)_VERSION := 2.29
|
||||
$(PKG)_CHECKSUM := 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf
|
||||
$(PKG)_SUBDIR := binutils-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := binutils-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := https://ftp.gnu.org/gnu/binutils/$($(PKG)_FILE)
|
||||
|
|
|
@ -0,0 +1,130 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := biosig
|
||||
$(PKG)_WEBSITE := http://biosig.sf.net/
|
||||
$(PKG)_DESCR := biosig
|
||||
$(PKG)_VERSION := 2.0.4
|
||||
$(PKG)_CHECKSUM := 2b2b5d0cdb7a886b7c390d000bb9210b9b6e03f790c6443730dab96496926928
|
||||
$(PKG)_SUBDIR := biosig-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := biosig-$($(PKG)_VERSION).src.tar.gz
|
||||
$(PKG)_URL := https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := cc suitesparse zlib libiberty libiconv libb64 lapack dcmtk tinyxml
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://biosig.sourceforge.io/download.html' | \
|
||||
$(SED) -n 's_.*>v\([0-9]\.[0-9]\.[0-9]\)<.*_\1_p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_PRE
|
||||
|
||||
cd '$(1)' && autoreconf -fi
|
||||
|
||||
cd '$(1)' && ./configure \
|
||||
ac_cv_func_malloc_0_nonnull=yes \
|
||||
ac_cv_func_realloc_0_nonnull=yes \
|
||||
$(MXE_CONFIGURE_OPTS)
|
||||
|
||||
# make sure NDEBUG is defined
|
||||
$(SED) -i '/NDEBUG/ s|#||g' '$(1)'/biosig4c++/Makefile
|
||||
|
||||
TARGET='$(TARGET)' $(MAKE) -C '$(1)' clean
|
||||
TARGET='$(TARGET)' $(MAKE) -C '$(1)' -j '$(JOBS)' lib tools
|
||||
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_POST
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/biosig.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/biosig2.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/gdftime.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/biosig-dev.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libbiosig.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libbiosig.def' '$(PREFIX)/$(TARGET)/lib/'
|
||||
# $(INSTALL) -m644 '$(1)/biosig4c++/libbiosig.dll.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libbiosig.dll' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libgdf.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libgdf.def' '$(PREFIX)/$(TARGET)/lib/'
|
||||
# $(INSTALL) -m644 '$(1)/biosig4c++/libgdf.dll.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libgdf.dll' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/physicalunits.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libphysicalunits.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libphysicalunits.def' '$(PREFIX)/$(TARGET)/lib/'
|
||||
# $(INSTALL) -m644 '$(1)/biosig4c++/libphysicalunits.dll.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libphysicalunits.dll' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/libbiosig.pc' '$(PREFIX)/$(TARGET)/lib/pkgconfig/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/save2gdf.exe' '$(PREFIX)/$(TARGET)/bin/'
|
||||
$(INSTALL) -m644 '$(1)/biosig4c++/biosig_fhir.exe' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
### make release file
|
||||
rm -f $(PREFIX)/$($(PKG)_SUBDIR).$(TARGET).zip
|
||||
cd $(PREFIX)/$(TARGET) && zip $(PREFIX)/$($(PKG)_SUBDIR).$(TARGET).zip \
|
||||
include/biosig.h include/biosig-dev.h include/biosig2.h include/gdftime.h \
|
||||
lib/libbiosig.a lib/libbiosig.def bin/libbiosig.dll lib/libbiosig.dll.a \
|
||||
lib/libgdf.a lib/libgdf.def bin/libgdf.dll lib/libgdf.dll.a \
|
||||
lib/libz.a lib/libcholmod.a lib/liblapack.a lib/libiconv.a lib/libiberty.a \
|
||||
include/libiberty/*.h include/iconv.h \
|
||||
include/physicalunits.h \
|
||||
lib/libphysicalunits.a lib/libphysicalunits.def bin/libphysicalunits.dll lib/libphysicalunits.dll.a
|
||||
|
||||
mkdir -p $(PREFIX)/release/$(TARGET)/include/
|
||||
cd $(PREFIX)/$(TARGET) && cp -r \
|
||||
include/biosig.h include/biosig-dev.h include/biosig2.h include/gdftime.h \
|
||||
include/libiberty include/iconv.h \
|
||||
include/physicalunits.h \
|
||||
$(PREFIX)/release/$(TARGET)/include/
|
||||
|
||||
mkdir -p $(PREFIX)/release/$(TARGET)/lib/
|
||||
cd $(PREFIX)/$(TARGET) && cp -r \
|
||||
lib/libbiosig.a lib/libbiosig.def bin/libbiosig.dll \
|
||||
lib/libgdf.a lib/libgdf.def bin/libgdf.dll \
|
||||
lib/libz.a lib/libcholmod.a lib/liblapack.a lib/libiconv.a lib/libiberty.a \
|
||||
lib/libphysicalunits.a lib/libphysicalunits.def bin/libphysicalunits.dll \
|
||||
$(PREFIX)/release/$(TARGET)/lib/
|
||||
-cd $(PREFIX)/$(TARGET) && cp -r \
|
||||
lib/libbiosig.dll.a \
|
||||
lib/libgdf.dll.a \
|
||||
lib/libphysicalunits.dll.a \
|
||||
$(PREFIX)/release/$(TARGET)/lib/
|
||||
|
||||
mkdir -p $(PREFIX)/release/$(TARGET)/bin/
|
||||
-cp $(PREFIX)/$(TARGET)/bin/save2gdf.exe $(PREFIX)/release/$(TARGET)/bin/
|
||||
|
||||
mkdir -p $(PREFIX)/release/matlab/
|
||||
-cp $(1)/biosig4c++/mex/mex* $(PREFIX)/release/matlab/
|
||||
|
||||
cd '$(1)/biosig4c++/win32' && zip $(PREFIX)/$($(PKG)_SUBDIR).$(TARGET).zip *.bat README
|
||||
|
||||
#exit -1
|
||||
### these cause problems when compiling stimfit
|
||||
#rm -rf '$(PREFIX)/$(TARGET)/lib/libphysicalunits.dll.a' \
|
||||
# '$(PREFIX)/$(TARGET)/lib/libbiosig.dll.a' \
|
||||
# '$(PREFIX)/$(TARGET)/lib/libgdf.dll.a'
|
||||
|
||||
endef
|
||||
|
||||
|
||||
define $(PKG)_BUILD_i686-pc-mingw32
|
||||
$($(PKG)_BUILD_PRE)
|
||||
#HOME=/home/as TARGET=$(TARGET) $(MAKE) -C '$(1)' mexw32
|
||||
$($(PKG)_BUILD_POST)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_i686-w64-mingw32
|
||||
$($(PKG)_BUILD_PRE)
|
||||
#TARGET=$(TARGET) $(MAKE) -C '$(1)' mexw32
|
||||
$($(PKG)_BUILD_POST)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_x86_64-w64-mingw32
|
||||
$($(PKG)_BUILD_PRE)
|
||||
#TARGET=$(TARGET) $(MAKE) -C '$(1)' mexw64
|
||||
$($(PKG)_BUILD_POST)
|
||||
endef
|
||||
|
|
@ -8,6 +8,12 @@ $(PKG)_CHECKSUM := 75d62738b13d2836cd56647581b6e574d4005a6e077ddefa5d727d445d649
|
|||
$(PKG)_GH_CONF := erincatto/Box2D/tags, v
|
||||
$(PKG)_DEPS := cc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://github.com/erincatto/Box2D/releases' | \
|
||||
$(SED) -n '/a href/ s_.*releases/tag/v\([0-9.]*\)".*_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(BUILD_DIR)' && $(TARGET)-cmake \
|
||||
-DBOX2D_INSTALL=ON \
|
||||
|
|
|
@ -88,3 +88,5 @@ define $(PKG)_BUILD
|
|||
'$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-cegui.exe' \
|
||||
`$(TARGET)-pkg-config --cflags --libs CEGUI-0-OPENGL`
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
|
|
|
@ -4,8 +4,8 @@ PKG := db
|
|||
$(PKG)_WEBSITE := https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html
|
||||
$(PKG)_DESCR := Oracle Berkeley DB
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 6.1.26
|
||||
$(PKG)_CHECKSUM := dd1417af5443f326ee3998e40986c3c60e2a7cfb5bfa25177ef7cadb2afb13a6
|
||||
$(PKG)_VERSION := 6.2.32
|
||||
$(PKG)_CHECKSUM := a9c5e2b004a5777aa03510cfe5cd766a4a3b777713406b02809c17c8e0e7a8fb
|
||||
$(PKG)_SUBDIR := db-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := db-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://download.oracle.com/berkeley-db/$($(PKG)_FILE)
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := dxflib
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2.5.0.0
|
||||
$(PKG)_CHECKSUM := 20ad9991eec6b0f7a3cc7c500c044481a32110cdc01b65efa7b20d5ff9caefa9
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)-1.src
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://qcad.org/archives/$(PKG)/$(PKG)-$($(PKG)_VERSION)-1.src.tar.gz
|
||||
$(PKG)_DEPS := gcc qt5
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://qcad.org/en/dxflib-downloads' | \
|
||||
$(SED) -n '/a href/ s,.*/archives/dxflib/dxflib-\([0-9.]*\)-src.tar.gz.*,\1,g;' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && $(PREFIX)/$(TARGET)/qt5/bin/qmake
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j 1 install
|
||||
|
||||
endef
|
|
@ -0,0 +1,27 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := edfbrowser
|
||||
$(PKG)_WEBSITE := https://www.teuniz.net/edfbrowser/
|
||||
$(PKG)_DESCR := EDFbrowser
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.75
|
||||
$(PKG)_CHECKSUM := 158d147d255ec19d7f206d929170ef099017ba16239f6960c1926feec75c813c
|
||||
$(PKG)_SUBDIR := edfbrowser_175_source
|
||||
$(PKG)_FILE := $($(PKG)_SUBDIR).tar.gz
|
||||
$(PKG)_URL := https://www.teuniz.net/edfbrowser/$($(PKG)_FILE)
|
||||
https://gitlab.com/Teuniz/EDFbrowser/releases
|
||||
$(PKG)_GH_CONF := Teuniz/EDFbrowser/releases v
|
||||
$(PKG)_QT_DIR := qt5
|
||||
$(PKG)_DEPS := cc qtbase
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && $(PREFIX)/$(TARGET)/$($(PKG)_QT_DIR)/bin/qmake
|
||||
|
||||
$(MAKE) -C '$(1)'
|
||||
|
||||
$(INSTALL) '$(1)/release/edfbrowser.exe' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
endef
|
||||
|
|
@ -3,8 +3,8 @@
|
|||
PKG := file
|
||||
$(PKG)_WEBSITE := https://www.darwinsys.com/file/
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 5.24
|
||||
$(PKG)_CHECKSUM := 802cb3de2e49e88ef97cdcb52cd507a0f25458112752e398445cea102bc750ce
|
||||
$(PKG)_VERSION := 5.32
|
||||
$(PKG)_CHECKSUM := 8639dc4d1b21e232285cd483604afc4a6ee810710e00e579dbe9591681722b50
|
||||
$(PKG)_SUBDIR := file-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := file-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://astron.com/pub/file/$($(PKG)_FILE)
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := freecad
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0.13.1830
|
||||
$(PKG)_CHECKSUM := 82d58b91a28a4cd5d138666d2ed0f36bf18c0255
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://downloads.sourceforge.net/project/free-cad/FreeCAD%20Source/freecad-0.13.1830.tar.gz
|
||||
https://github.com/$(PKG)/$(PKG)/archive/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc boost eigen freetype python qt
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://sourceforge.net/projects/free-cad/?source=dlp' | \
|
||||
$(SED) 's,.*freecad-\([0-9\.]\).tar.gz .*,\1,g;' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && $(PREFIX)/$(TARGET)/qt5/bin/qmake
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j 1 install
|
||||
|
||||
endef
|
|
@ -0,0 +1,36 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := gawk
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 4.1.4
|
||||
$(PKG)_CHECKSUM := 53e184e2d0f90def9207860531802456322be091c7b48f23fdc79cda65adc266
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := gawk-$($(PKG)_VERSION).tar.xz
|
||||
$(PKG)_URL := http://ftp.gnu.org/gnu/$(PKG)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- "https://ftp.gnu.org/gnu/gawk/?C=M;O=D" | \
|
||||
$(SED) -n 's,.*a href="gawk-\([0-9.]*\).tar.gz.*,\1,p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1).build'
|
||||
cd '$(1).build' && '$(1)/configure' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--prefix='$(PREFIX)/$(TARGET)'
|
||||
|
||||
$(MAKE) -C '$(1).build' -j '$(JOBS)'
|
||||
|
||||
$(INSTALL) '$(1).build'/gawk '$(PREFIX)/$(TARGET)/bin/gawk.exe'
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_i686-pc-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := gcab
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0.4
|
||||
$(PKG)_CHECKSUM := d81dfe35125e611e3a94c0d4def37ebf62b9187c
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz
|
||||
$(PKG)_URL := http://ftp.gnome.org/pub/gnome/sources/$(PKG)/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := glib zlib
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://git.gnome.org/browse/$(PKG)/refs/tags' | \
|
||||
$(SED) -n "s,.*tag/?id=\([0-9]\+\.[0-9]*[02468]\.[^']*\).*,\1,p" | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1)/.build'
|
||||
cd '$(1)/.build' && '$(1)/configure' \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--enable-static
|
||||
|
||||
$(MAKE) -C '$(1)/.build' -j '$(JOBS)'
|
||||
$(MAKE) -C '$(1)/.build' -j 1 install
|
||||
endef
|
|
@ -0,0 +1,53 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := gdcm
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2.8.2
|
||||
$(PKG)_CHECKSUM := 5462c7859e01e5d5d0fb86a19a6c775484a6c44abd8545ea71180d4c41bf0f89
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)%202.x/GDCM%20$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := expat zlib
|
||||
|
||||
$(PKG)_CMAKE_OPTS :=
|
||||
ifeq ($(MXE_NATIVE_MINGW_BUILD),yes)
|
||||
ifeq ($(MXE_SYSTEM),mingw)
|
||||
$(PKG)_CMAKE_OPTS := -G "MSYS Makefiles"
|
||||
endif
|
||||
endif
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'https://sourceforge.net/projects/gdcm/files/gdcm%202.x/' | \
|
||||
sed -n 's_.*Download gdcm-\([0-9\.]*\)\.tar\.gz.*_\1_ip'
|
||||
endef
|
||||
|
||||
ifeq ($(MXE_SYSTEM),msvc)
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1)/../.build'
|
||||
cd '$(1)/../.build' && cmake \
|
||||
-G "NMake Makefiles" \
|
||||
-DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
|
||||
-DGDCM_BUILD_SHARED_LIBS:BOOL=TRUE \
|
||||
-DGDCM_USE_SYSTEM_ZLIB:BOOL=TRUE \
|
||||
-DGDCM_USE_SYSTEM_EXPAT:BOOL=TRUE \
|
||||
-DGDCM_BUILD_DOCBOOK_MANPAGES:BOOL=OFF \
|
||||
../$($(PKG)_SUBDIR)
|
||||
cd '$(1)/../.build' && \
|
||||
env -u MAKE -u MAKEFLAGS nmake && \
|
||||
env -u MAKE -u MAKEFLAGS nmake install
|
||||
endef
|
||||
else
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1)/../.build'
|
||||
cd '$(1)/../.build' && cmake \
|
||||
$($(PKG)_CMAKE_OPTS) \
|
||||
-DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
|
||||
-DGDCM_BUILD_SHARED_LIBS:BOOL=TRUE \
|
||||
-DGDCM_BUILD_DOCBOOK_MANPAGES:BOOL=OFF \
|
||||
../$($(PKG)_SUBDIR)
|
||||
make -C $(1)/../.build -j $(JOBS)
|
||||
make -C $(1)/../.build -j 1 install
|
||||
endef
|
||||
|
||||
endif
|
|
@ -155,56 +155,6 @@ Date: Fri, 15 Jun 2012 15:29:06 +0200
|
|||
Subject: [PATCH 05/10] Link with dnsapi
|
||||
|
||||
|
||||
diff --git a/gio-2.0.pc.in b/gio-2.0.pc.in
|
||||
index 1111111..2222222 100644
|
||||
--- a/gio-2.0.pc.in
|
||||
+++ b/gio-2.0.pc.in
|
||||
@@ -13,6 +13,6 @@ Description: glib I/O library
|
||||
Version: @VERSION@
|
||||
Requires: glib-2.0 gobject-2.0
|
||||
Requires.private: gmodule-no-export-2.0
|
||||
-Libs: -L${libdir} -lgio-2.0
|
||||
+Libs: -L${libdir} -lgio-2.0 -ldnsapi -liphlpapi
|
||||
Libs.private: @ZLIB_LIBS@ @NETWORK_LIBS@ @SELINUX_LIBS@ @COCOA_LIBS@ @CARBON_LIBS@
|
||||
Cflags:
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Hans Petter Jansson <hpj@cl.no>
|
||||
Date: Fri, 15 Jun 2012 15:29:38 +0200
|
||||
Subject: [PATCH 06/10] Ensure globals are initialized even when DllMain is not
|
||||
being run
|
||||
|
||||
|
||||
diff --git a/glib/gmain.c b/glib/gmain.c
|
||||
index 1111111..2222222 100644
|
||||
--- a/glib/gmain.c
|
||||
+++ b/glib/gmain.c
|
||||
@@ -2657,12 +2657,15 @@ g_get_real_time (void)
|
||||
#if defined (G_OS_WIN32)
|
||||
static ULONGLONG (*g_GetTickCount64) (void) = NULL;
|
||||
static guint32 g_win32_tick_epoch = 0;
|
||||
+static gboolean g_win32_clock_is_initialized;
|
||||
|
||||
void
|
||||
g_clock_win32_init (void)
|
||||
{
|
||||
HMODULE kernel32;
|
||||
|
||||
+ g_win32_clock_is_initialized = TRUE;
|
||||
+
|
||||
g_GetTickCount64 = NULL;
|
||||
kernel32 = GetModuleHandle ("KERNEL32.DLL");
|
||||
if (kernel32 != NULL)
|
||||
@@ -2721,6 +2724,9 @@ g_get_monotonic_time (void)
|
||||
* timeBeginPeriod() to increase it as much as they want
|
||||
*/
|
||||
|
||||
+ if (!g_win32_clock_is_initialized)
|
||||
+ g_clock_win32_init ();
|
||||
+
|
||||
if (g_GetTickCount64 != NULL)
|
||||
{
|
||||
guint32 ticks_as_32bit;
|
||||
diff --git a/glib/gthread-win32.c b/glib/gthread-win32.c
|
||||
index 1111111..2222222 100644
|
||||
--- a/glib/gthread-win32.c
|
||||
|
@ -602,67 +552,6 @@ Date: Mon, 26 Feb 2018 16:09:53 +1100
|
|||
Subject: [PATCH 09/10] darwin: disable g_cocoa_notification_backend
|
||||
|
||||
|
||||
diff --git a/gio/Makefile.am b/gio/Makefile.am
|
||||
index 1111111..2222222 100644
|
||||
--- a/gio/Makefile.am
|
||||
+++ b/gio/Makefile.am
|
||||
@@ -279,10 +279,6 @@ unix_sources = \
|
||||
|
||||
appinfo_sources += $(unix_appinfo_sources)
|
||||
|
||||
-if OS_COCOA
|
||||
-unix_sources += gcocoanotificationbackend.c
|
||||
-endif
|
||||
-
|
||||
giounixincludedir=$(includedir)/gio-unix-2.0/gio
|
||||
giounixinclude_HEADERS = \
|
||||
gdesktopappinfo.h \
|
||||
diff --git a/gio/giomodule.c b/gio/giomodule.c
|
||||
index 1111111..2222222 100644
|
||||
--- a/gio/giomodule.c
|
||||
+++ b/gio/giomodule.c
|
||||
@@ -918,9 +918,6 @@ extern GType g_proxy_resolver_portal_get_type (void);
|
||||
extern GType g_network_monitor_portal_get_type (void);
|
||||
#endif
|
||||
|
||||
-#ifdef HAVE_COCOA
|
||||
-extern GType g_cocoa_notification_backend_get_type (void);
|
||||
-#endif
|
||||
|
||||
#ifdef G_PLATFORM_WIN32
|
||||
|
||||
@@ -1117,9 +1114,6 @@ _g_io_modules_ensure_loaded (void)
|
||||
g_type_ensure (g_network_monitor_portal_get_type ());
|
||||
g_type_ensure (g_proxy_resolver_portal_get_type ());
|
||||
#endif
|
||||
-#ifdef HAVE_COCOA
|
||||
- g_type_ensure (g_cocoa_notification_backend_get_type ());
|
||||
-#endif
|
||||
#ifdef G_OS_WIN32
|
||||
g_type_ensure (_g_winhttp_vfs_get_type ());
|
||||
#endif
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Ernestas Kulik <ekulik@redhat.com>
|
||||
Date: Tue, 29 Jan 2019 09:50:46 +0100
|
||||
Subject: [PATCH 10/10] gdbus: Avoid printing null strings
|
||||
|
||||
This mostly affects the 2.56 branch, but, given that GCC 9 is being
|
||||
stricter about passing null string pointers to printf-like functions, it
|
||||
might make sense to proactively fix such calls.
|
||||
|
||||
gdbusauth.c: In function '_g_dbus_auth_run_server':
|
||||
gdbusauth.c:1302:11: error: '%s' directive argument is null
|
||||
[-Werror=format-overflow=]
|
||||
1302 | debug_print ("SERVER: WaitingForBegin, read '%s'",
|
||||
line);
|
||||
|
|
||||
|
||||
gdbusmessage.c: In function ‘g_dbus_message_to_blob’:
|
||||
gdbusmessage.c:2730:30: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
|
||||
2730 | tupled_signature_str = g_strdup_printf ("(%s)", signature_str);
|
||||
|
|
||||
|
||||
diff --git a/gio/gdbusauth.c b/gio/gdbusauth.c
|
||||
index 1111111..2222222 100644
|
||||
--- a/gio/gdbusauth.c
|
||||
|
|
|
@ -4,8 +4,8 @@ PKG := glib
|
|||
$(PKG)_WEBSITE := https://gtk.org/
|
||||
$(PKG)_DESCR := GLib
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2.50.2
|
||||
$(PKG)_CHECKSUM := be68737c1f268c05493e503b3b654d2b7f43d7d0b8c5556f7e4651b870acfbf5
|
||||
$(PKG)_VERSION := 2.54.0
|
||||
$(PKG)_CHECKSUM := fe22998ff0394ec31e6e5511c379b74011bee61a4421bca7fcab223dfbe0fc6a
|
||||
$(PKG)_SUBDIR := glib-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := glib-$($(PKG)_VERSION).tar.xz
|
||||
$(PKG)_URL := https://download.gnome.org/sources/glib/$(call SHORT_PKG_VERSION,$(PKG))/$($(PKG)_FILE)
|
||||
|
@ -88,7 +88,7 @@ endef
|
|||
|
||||
define $(PKG)_BUILD
|
||||
# other packages expect glib-tools in $(TARGET)/bin
|
||||
rm -f '$(PREFIX)/$(TARGET)/bin/glib-*'
|
||||
rm -f '$(PREFIX)/$(TARGET)/bin/glib-*'
|
||||
ln -sf '$(PREFIX)/$(BUILD)/bin/glib-genmarshal' '$(PREFIX)/$(TARGET)/bin/'
|
||||
ln -sf '$(PREFIX)/$(BUILD)/bin/glib-compile-schemas' '$(PREFIX)/$(TARGET)/bin/'
|
||||
ln -sf '$(PREFIX)/$(BUILD)/bin/glib-compile-resources' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
|
|
@ -4,7 +4,7 @@ PKG := glibmm
|
|||
$(PKG)_WEBSITE := https://www.gtkmm.org/
|
||||
$(PKG)_DESCR := GLibmm
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2.42.0
|
||||
$(PKG)_VERSION := 2.54.1
|
||||
$(PKG)_CHECKSUM := 985083d97378d234da27a7243587cc0d186897a4b2d3c1286f794089be1a3397
|
||||
$(PKG)_SUBDIR := glibmm-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := glibmm-$($(PKG)_VERSION).tar.xz
|
||||
|
|
|
@ -0,0 +1,138 @@
|
|||
--- a/config/mingw/Makefile 2012-11-30 16:52:35.622821917 -0500
|
||||
+++ b/config/mingw/Makefile 2012-11-30 16:52:23.071255685 -0500
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
# Use more modern HTML help instead of no longer supported Windows help system
|
||||
# Please update the HHWPATH below if necessary.
|
||||
-HTML_HELP=1
|
||||
+#HTML_HELP=1
|
||||
|
||||
# GIF, PNG, JPEG device drivers
|
||||
# Requires gd library. There are two possibilities how to configure these
|
||||
@@ -127,29 +127,29 @@
|
||||
# -mpentiumpro means optimize for Pentium II and Pro procesors
|
||||
#CFLAGS +=
|
||||
|
||||
-ifdef HTML_HELP
|
||||
-
|
||||
-# To compile the .chm file you need the Microsoft HTML Help 1.4 SDK
|
||||
-# It can be obtained here:
|
||||
-# http://go.microsoft.com/fwlink/?LinkId=154968
|
||||
-# We need to explicitly set the correct path here since we also need
|
||||
-# adjust the include and linrary paths.
|
||||
-HHWPATH = "$(PROGRAMFILES)/HTML Help Workshop/"
|
||||
-HHC = $(HHWPATH)hhc
|
||||
+# ifdef HTML_HELP
|
||||
|
||||
-else
|
||||
+# # To compile the .chm file you need the Microsoft HTML Help 1.4 SDK
|
||||
+# # It can be obtained here:
|
||||
+# # http://go.microsoft.com/fwlink/?LinkId=154968
|
||||
+# # We need to explicitly set the correct path here since we also need
|
||||
+# # adjust the include and linrary paths.
|
||||
+# HHWPATH = "$(PROGRAMFILES)/HTML Help Workshop/"
|
||||
+# HHC = $(HHWPATH)hhc
|
||||
+
|
||||
+# else
|
||||
+
|
||||
+# # To compile the .hlp file you need hcw either out of Microsoft SDK or MS Help
|
||||
+# # Workshop. The latter can be obtained from either of
|
||||
+# # ftp://ftp.microsoft.com/softlib/mslfiles/hcwsetup.exe
|
||||
+# # http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=34D35502-4DE9-4676-952C-34CC7F64F098
|
||||
+# # Put the path to hcw here unless it is already in PATH:
|
||||
+# HCWPATH = "$(PROGRAMFILES)/Help\ Workshop/"
|
||||
+# HCW = $(HCWPATH)hcw
|
||||
+# # Switches are for HCW 4.03:
|
||||
+# HCWFLAG =
|
||||
|
||||
-# To compile the .hlp file you need hcw either out of Microsoft SDK or MS Help
|
||||
-# Workshop. The latter can be obtained from either of
|
||||
-# ftp://ftp.microsoft.com/softlib/mslfiles/hcwsetup.exe
|
||||
-# http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=34D35502-4DE9-4676-952C-34CC7F64F098
|
||||
-# Put the path to hcw here unless it is already in PATH:
|
||||
-HCWPATH = "$(PROGRAMFILES)/Help\ Workshop/"
|
||||
-HCW = $(HCWPATH)hcw
|
||||
-# Switches are for HCW 4.03:
|
||||
-HCWFLAG =
|
||||
-
|
||||
-endif
|
||||
+# endif
|
||||
|
||||
# Choose which windres/rc do you want to use (GNU windres or MS RC):
|
||||
GNU_RC = 1
|
||||
@@ -397,7 +397,7 @@
|
||||
RES2COFF = res2coff -i wgnuplot.res -o wgplt_res.$(O)
|
||||
endif
|
||||
|
||||
-default: $(TARGET) $(MENUFILE) support
|
||||
+default: $(TARGET) $(MENUFILE) # support
|
||||
|
||||
console:
|
||||
$(MAKE) TARGET=gnuplot.exe gnuplot.exe
|
||||
@@ -453,7 +453,7 @@
|
||||
LDFLAGS2 += -L$(HHWPATH)lib
|
||||
endif
|
||||
|
||||
-$(TARGET): $(OBJS) $(WINOBJS) wgplt_res.$(O) texticon.ico grpicon.ico
|
||||
+$(TARGET): $(OBJS) $(WINOBJS) wgplt_res.$(O) TEXTICON.ico GRPICON.ico
|
||||
$(LDX) $(LDFLAGS) $(LDFLAGS2) -o $@ $(OBJS) $(WINOBJS) wgplt_res.$(O) $(LDLIBS)\
|
||||
$(TERMLIBS) $(WX_LIBS) $(PANGOCAIRO_LIBS)
|
||||
|
||||
@@ -462,7 +462,7 @@
|
||||
|
||||
# rules
|
||||
|
||||
-wgplt_res.$(O): $(W)/wgnuplot.rc $(W)/wgnuplib.rc $(W)/wresourc.h texticon.ico grpicon.ico
|
||||
+wgplt_res.$(O): $(W)/wgnuplot.rc $(W)/wgnuplib.rc $(W)/wresourc.h TEXTICON.ico GRPICON.ico
|
||||
$(RC) $(RCFLAGS) $< $(RCOUT)
|
||||
$(RES2COFF)
|
||||
|
||||
@@ -521,13 +521,13 @@
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# extract icons from wgnuplot.rc
|
||||
-texticon.ico: grpicon.ico
|
||||
+TEXTICON.ico: GRPICON.ico
|
||||
|
||||
-grpicon.ico: geticon.exe $(W)/wgnuplot.rc
|
||||
+GRPICON.ico: geticon $(W)/wgnuplot.rc
|
||||
./geticon $(W)/wgnuplot.rc
|
||||
|
||||
-geticon.exe: $(W)/geticon.c
|
||||
- $(LD) $(LDFLAGS) -o $@ $<
|
||||
+geticon: $(W)/geticon.c
|
||||
+ gcc -o $@ $<
|
||||
|
||||
ifdef HTML_HELP
|
||||
# convert gnuplot.doc to windows/wgnuplot.html
|
||||
@@ -730,7 +730,7 @@
|
||||
$(RM) config.h wgnuplot.map wgnuplot.res $(W)/gnuplot.rtf
|
||||
$(RM) *.$(O) *.po *.o *.co
|
||||
$(RM) doc2*.exe $(W)/wgnuplib.res wgnuplib.map wgnuplot.lib
|
||||
- $(RM) $(M)bf_test.exe *.ico geticon.exe allterm.h allterm.c
|
||||
+ $(RM) $(M)bf_test.exe *.ico geticon allterm.h allterm.c
|
||||
$(RM) *.aux *.log *.dvi *.toc
|
||||
$(RM) gnuplot.tex gnuplot-figures.tex pdffigures.tex figure_*.pdf
|
||||
$(RM) titlepag.tex toc_entr.sty VERSION
|
||||
@@ -829,7 +829,7 @@
|
||||
|
||||
installer:
|
||||
$(MAKE) DESTDIR=./dist install
|
||||
- cp -p grpicon.ico ./dist/bin/
|
||||
+ cp -p GRPICON.ico ./dist/bin/
|
||||
cp -p $(TOP)/win/*.iss ./dist
|
||||
(cd ./dist; $(ISCC) gnuplot.iss)
|
||||
mv ./dist/gp*-setup.exe .
|
||||
--- a/src/win/wgnuplot.rc 2011-05-13 14:32:22.000000000 -0400
|
||||
+++ b/src/win/wgnuplot.rc 2012-11-30 16:53:59.407926642 -0500
|
||||
@@ -15,8 +15,8 @@
|
||||
* rc -30 -k -dMSRC win\wgnuplot.rc wgnuplot.exe
|
||||
*/
|
||||
|
||||
-GRPICON ICON "grpicon.ico"
|
||||
-TEXTICON ICON "texticon.ico"
|
||||
+GRPICON ICON "GRPICON.ico"
|
||||
+TEXTICON ICON "TEXTICON.ico"
|
||||
|
||||
#else
|
||||
/* using Borland BRC.EXE */
|
|
@ -0,0 +1,32 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := gnuplot
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 5.2.0
|
||||
$(PKG)_CHECKSUM := 7dfe6425a1a6b9349b1fb42dae46b2e52833b13e807a78a613024d6a99541e43
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://sourceforge.net/projects/gnuplot/files/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc libiconv
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- http://www.gnuplot.info/index.html | \
|
||||
$(SED) -n 's_.*Release.*announce[_\.]([0-9]\.[0-9].\[0-9]).*gnuplot.*_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
make -C '$(1)/config/mingw' CC='$(TARGET)-gcc' CXX='$(TARGET)-g++' RC='$(TARGET)-windres' -j '$(JOBS)' TARGET=gnuplot.exe gnuplot.exe
|
||||
make -C '$(1)/config/mingw' CC='$(TARGET)-gcc' CXX='$(TARGET)-g++' RC='$(TARGET)-windres' -j '$(JOBS)' TARGET=wgnuplot.exe wgnuplot.exe
|
||||
make -C '$(1)/config/mingw' CC='$(TARGET)-gcc' CXX='$(TARGET)-g++' RC='$(TARGET)-windres' -j '$(JOBS)' wgnuplot.mnu
|
||||
|
||||
$(INSTALL) -d '$(PREFIX)/$(TARGET)/bin'
|
||||
$(INSTALL) -m755 '$(1)/config/mingw/gnuplot.exe' '$(PREFIX)/$(TARGET)/bin/'
|
||||
$(INSTALL) -m755 '$(1)/config/mingw/wgnuplot.exe' '$(PREFIX)/$(TARGET)/bin/'
|
||||
$(INSTALL) -m644 '$(1)/src/win/wgnuplot.mnu' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
|
@ -1,8 +1,7 @@
|
|||
# This file is part of MXE. See LICENSE.md for licensing information.
|
||||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := graphicsmagick
|
||||
$(PKG)_WEBSITE := http://www.graphicsmagick.org/
|
||||
$(PKG)_DESCR := GraphicsMagick
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.3.33
|
||||
$(PKG)_CHECKSUM := ae86f749815d3039ac431caf9fc4b65acf32bfd140d1817644d3463b6ba9d51c
|
||||
|
@ -42,6 +41,7 @@ define $(PKG)_BUILD
|
|||
--with-xml \
|
||||
--with-zlib \
|
||||
--without-x \
|
||||
--with-quantum-depth=16 \
|
||||
ac_cv_prog_xml2_config='$(PREFIX)/$(TARGET)/bin/xml2-config' \
|
||||
ac_cv_path_xml2_config='$(PREFIX)/$(TARGET)/bin/xml2-config' \
|
||||
LIBS='-lgomp -fopenmp' \
|
||||
|
@ -49,8 +49,7 @@ define $(PKG)_BUILD
|
|||
$(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' bin_PROGRAMS=
|
||||
$(MAKE) -C '$(BUILD_DIR)' -j 1 install bin_PROGRAMS=
|
||||
|
||||
'$(TARGET)-g++' \
|
||||
-W -Wall -Werror -pedantic -std=gnu++0x \
|
||||
'$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-graphicsmagick.exe' \
|
||||
`'$(TARGET)-pkg-config' GraphicsMagick++ --cflags --libs` -llzma
|
||||
if [ "$(ENABLE_DEP_DOCS)" == "no" ]; then \
|
||||
rm -rf "$(3)$(PREFIX)/$(TARGET)/share/doc/GraphicsMagick"; \
|
||||
fi
|
||||
endef
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
/*
|
||||
* This file is part of MXE.
|
||||
* See index.html for further information.
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <hdf5.h>
|
||||
#if H5_VERS_MINOR > 6
|
||||
#include <hdf5_hl.h>
|
||||
#else
|
||||
#include <H5TA.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
#include <cmath>
|
||||
*/
|
||||
#include <sstream>
|
||||
/*
|
||||
#include <iostream>
|
||||
*/
|
||||
|
||||
const static unsigned int DATELEN = 128;
|
||||
const static unsigned int TIMELEN = 128;
|
||||
const static unsigned int UNITLEN = 16;
|
||||
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
(void)argc;
|
||||
(void)argv;
|
||||
|
||||
typedef struct rt {
|
||||
int channels;
|
||||
char date[DATELEN];
|
||||
char time[TIMELEN];
|
||||
} rt;
|
||||
|
||||
// H5Fis_hdf5("/dev/null");
|
||||
|
||||
/*
|
||||
* Create a new file using H5ACC_TRUNC access,
|
||||
* default file creation properties, and default file
|
||||
* access properties.
|
||||
* Then close the file.
|
||||
*/
|
||||
|
||||
const int NRECORDS = 1;
|
||||
const int NFIELDS = 3;
|
||||
char fName[] = "tmp.h5";
|
||||
|
||||
/* Calculate the size and the offsets of our struct members in memory */
|
||||
size_t rt_offset[NFIELDS] = { HOFFSET( rt, channels ),
|
||||
HOFFSET( rt, date ),
|
||||
HOFFSET( rt, time )};
|
||||
|
||||
rt p_data;
|
||||
p_data.channels = 1;
|
||||
strcpy( p_data.date, "1234-Dec-31");
|
||||
strcpy( p_data.time, "12:34:56");
|
||||
|
||||
|
||||
hid_t file_id = H5Fcreate(fName, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
|
||||
|
||||
|
||||
/* Define field information */
|
||||
const char *field_names[NFIELDS] = { "channels", "date", "time" };
|
||||
hid_t field_type[NFIELDS];
|
||||
|
||||
/* Initialize the field field_type */
|
||||
hid_t string_type1 = H5Tcopy( H5T_C_S1 );
|
||||
hid_t string_type2 = H5Tcopy( H5T_C_S1 );
|
||||
H5Tset_size( string_type1, strlen(p_data.date));
|
||||
H5Tset_size( string_type2, strlen(p_data.time));
|
||||
field_type[0] = H5T_NATIVE_INT;
|
||||
field_type[1] = string_type1;
|
||||
field_type[2] = string_type2;
|
||||
|
||||
std::ostringstream desc;
|
||||
desc << "Description of " << fName;
|
||||
|
||||
herr_t status = H5TBmake_table( desc.str().c_str(), file_id, "description", (hsize_t)NFIELDS, (hsize_t)NRECORDS, sizeof(rt),
|
||||
field_names, rt_offset, field_type, 10, NULL, 0, &p_data );
|
||||
|
||||
if (status < 0) {
|
||||
perror("Exception while writing description in stfio::exportHDF5File");
|
||||
H5Fclose(file_id);
|
||||
H5close();
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
H5Fclose(file_id);
|
||||
|
||||
return(0);
|
||||
}
|
||||
|
|
@ -4,8 +4,8 @@ PKG := isl
|
|||
$(PKG)_WEBSITE := https://isl.gforge.inria.fr/
|
||||
$(PKG)_DESCR := Integer Set Library
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0.15
|
||||
$(PKG)_CHECKSUM := 8ceebbf4d9a81afa2b4449113cee4b7cb14a687d7a549a963deb5e2a41458b6b
|
||||
$(PKG)_VERSION := 0.18
|
||||
$(PKG)_CHECKSUM := 6b8b0fd7f81d0a957beb3679c81bbb34ccc7568d5682844d8924424a0dadcb1b
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := https://isl.gforge.inria.fr/$($(PKG)_FILE)
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := itstool
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.2.0
|
||||
$(PKG)_CHECKSUM := dc6b766c2acec32d3c5d016b0a33e9268d274f63
|
||||
$(PKG)_SUBDIR := itstool-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := itstool-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := http://files.itstool.org/itstool/$(PKG)-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_DEPS :=
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://itstool.org/download/' | \
|
||||
$(SED) -n 's,.*itstool-\([0-9][^"]*\)\.tar.*,\1,p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
ifeq ($(MXE_SYSTEM),msvc)
|
||||
$(PKG)_PREFIX := $(HOST_PREFIX_NATIVE)
|
||||
else
|
||||
$(PKG)_PREFIX := $(HOST_PREFIX)
|
||||
endif
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(1)' && ./configure \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--enable-static
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)' install
|
||||
endef
|
|
@ -0,0 +1,28 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := libb64
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.2.1
|
||||
$(PKG)_CHECKSUM := 20106f0ba95cfd9c35a13c71206643e3fb3e46512df3e2efb2fdbf87116314b2
|
||||
$(PKG)_SUBDIR := libb64-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).zip
|
||||
$(PKG)_URL := https://sourceforge.net/projects/$(PKG)/files/$(PKG)/$(PKG)/$($(PKG)_FILE)
|
||||
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://sourceforge.net/projects/libb64/files/' | \
|
||||
$(SED) -n 's_.*libb64-\([0-9]\.[0-9]\.[0-9]\).*zip_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
CC=$(TARGET)-gcc CXX=$(TARGET)-g++ PKG_CONFIG=$(TARGET)-pkg_config AR=$(TARGET)-ar $(MAKE) -C '$(1)/src'
|
||||
|
||||
cp -r '$(1)/include/b64' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) '$(1)/src/libb64.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
|
||||
endef
|
||||
|
|
@ -0,0 +1,131 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := libbiosig
|
||||
$(PKG)_WEBSITE := http://biosig.sf.net/
|
||||
$(PKG)_DESCR := libbiosig
|
||||
$(PKG)_VERSION := 2.0.2
|
||||
$(PKG)_CHECKSUM := e94e6b4843d17b59eb5f2bb6d8508c63a2ab29ef6a712b8df5e2a6c3e3ed2db8
|
||||
$(PKG)_SUBDIR := biosig4c++-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := biosig4c++-$($(PKG)_VERSION).src.tar.gz
|
||||
$(PKG)_URL := http://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := cc suitesparse zlib libiberty libiconv libb64 lapack dcmtk tinyxml
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://biosig.sourceforge.io/download.html' | \
|
||||
$(GREP) biosig4c | \
|
||||
$(SED) -n 's_.*>v\([0-9]\.[0-9]\.[0-9]\)<.*_\1_p' | \
|
||||
$(SORT) -V | \
|
||||
tail -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_PRE
|
||||
|
||||
echo $(MXE_CONFIGURE_OPTS)
|
||||
|
||||
cd '$(1)' && ./configure \
|
||||
ac_cv_func_malloc_0_nonnull=yes \
|
||||
ac_cv_func_realloc_0_nonnull=yes \
|
||||
$(MXE_CONFIGURE_OPTS)
|
||||
|
||||
# make sure NDEBUG is defined
|
||||
$(SED) -i '/NDEBUG/ s|#||g' '$(1)'/Makefile
|
||||
|
||||
### disables declaration of sopen from io.h (imported through unistd.h)
|
||||
|
||||
$(SED) -i '/ sopen/ s|^/*|//|g' $(PREFIX)/$(TARGET)/include/io.h
|
||||
|
||||
TARGET='$(TARGET)' $(MAKE) -C '$(1)' clean
|
||||
TARGET='$(TARGET)' $(MAKE) -C '$(1)' -j '$(JOBS)' \
|
||||
libbiosig.a libgdf.a libphysicalunits.a \
|
||||
libbiosig.dll libgdf.dll libphysicalunits.dll
|
||||
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_POST
|
||||
|
||||
$(INSTALL) -m644 '$(1)/biosig.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/biosig2.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/gdftime.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/biosig-dev.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/libbiosig.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libbiosig.def' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libbiosig.dll.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libbiosig.dll' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/libgdf.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libgdf.def' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libgdf.dll.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libgdf.dll' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
|
||||
$(INSTALL) -m644 '$(1)/physicalunits.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) -m644 '$(1)/libphysicalunits.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libphysicalunits.def' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libphysicalunits.dll.a' '$(PREFIX)/$(TARGET)/lib/'
|
||||
$(INSTALL) -m644 '$(1)/libphysicalunits.dll' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
$(INSTALL) -m644 '$(1)/libbiosig.pc' '$(PREFIX)/$(TARGET)/lib/pkgconfig/'
|
||||
|
||||
### make release file
|
||||
rm -f $(PREFIX)/$($(PKG)_SUBDIR).$(TARGET).zip
|
||||
cd $(PREFIX)/$(TARGET) && zip $(PREFIX)/$($(PKG)_SUBDIR).$(TARGET).zip \
|
||||
include/biosig.h include/biosig-dev.h include/biosig2.h include/gdftime.h \
|
||||
lib/libbiosig.a lib/libbiosig.def bin/libbiosig.dll lib/libbiosig.dll.a \
|
||||
lib/libgdf.a lib/libgdf.def bin/libgdf.dll lib/libgdf.dll.a \
|
||||
lib/libz.a lib/libcholmod.a lib/liblapack.a lib/libiconv.a lib/libiberty.a \
|
||||
include/libiberty/*.h include/iconv.h \
|
||||
include/physicalunits.h \
|
||||
lib/libphysicalunits.a lib/libphysicalunits.def bin/libphysicalunits.dll lib/libphysicalunits.dll.a
|
||||
|
||||
mkdir -p $(PREFIX)/release/$(TARGET)/include/
|
||||
cd $(PREFIX)/$(TARGET) && cp -r \
|
||||
include/biosig.h include/biosig-dev.h include/biosig2.h include/gdftime.h \
|
||||
include/libiberty include/iconv.h \
|
||||
include/physicalunits.h \
|
||||
$(PREFIX)/release/$(TARGET)/include/
|
||||
|
||||
mkdir -p $(PREFIX)/release/$(TARGET)/lib/
|
||||
cd $(PREFIX)/$(TARGET) && cp -r \
|
||||
lib/libbiosig.a lib/libbiosig.def bin/libbiosig.dll lib/libbiosig.dll.a \
|
||||
lib/libgdf.a lib/libgdf.def bin/libgdf.dll lib/libgdf.dll.a \
|
||||
lib/libz.a lib/libcholmod.a lib/liblapack.a lib/libiconv.a lib/libiberty.a \
|
||||
lib/libphysicalunits.a lib/libphysicalunits.def bin/libphysicalunits.dll lib/libphysicalunits.dll.a \
|
||||
$(PREFIX)/release/$(TARGET)/lib/
|
||||
|
||||
mkdir -p $(PREFIX)/release/$(TARGET)/bin/
|
||||
-cp $(PREFIX)/$(TARGET)/bin/save2gdf.exe $(PREFIX)/release/$(TARGET)/bin/
|
||||
|
||||
mkdir -p $(PREFIX)/release/matlab/
|
||||
-cp $(1)/mex/mex* $(PREFIX)/release/matlab/
|
||||
|
||||
cd '$(1)/win32' && zip $(PREFIX)/$($(PKG)_SUBDIR).$(TARGET).zip *.bat README
|
||||
|
||||
#exit -1
|
||||
### these cause problems when compiling stimfit
|
||||
rm -rf '$(PREFIX)/$(TARGET)/lib/libphysicalunits.dll.a' \
|
||||
'$(PREFIX)/$(TARGET)/lib/libbiosig.dll.a' \
|
||||
'$(PREFIX)/$(TARGET)/lib/libgdf.dll.a'
|
||||
|
||||
endef
|
||||
|
||||
|
||||
define $(PKG)_BUILD_i686-pc-mingw32
|
||||
$($(PKG)_BUILD_PRE)
|
||||
#HOME=/home/as TARGET=$(TARGET) $(MAKE) -C '$(1)' mexw32
|
||||
$($(PKG)_BUILD_POST)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_i686-w64-mingw32
|
||||
$($(PKG)_BUILD_PRE)
|
||||
#TARGET=$(TARGET) $(MAKE) -C '$(1)' mexw32
|
||||
$($(PKG)_BUILD_POST)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD_x86_64-w64-mingw32
|
||||
$($(PKG)_BUILD_PRE)
|
||||
#TARGET=$(TARGET) $(MAKE) -C '$(1)' mexw64
|
||||
$($(PKG)_BUILD_POST)
|
||||
endef
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
--- libEMF-1.0.7/configure.ac 2012-11-07 12:21:39.000000000 +0100
|
||||
+++ libEMF-1.0.7/configure.ac 2013-04-16 10:35:17.000000000 +0200
|
||||
@@ -91,7 +91,7 @@
|
||||
AM_CONDITIONAL(HAVE_THREADS, test $have_threads = yes)
|
||||
AM_CONDITIONAL(ENABLE_EDITING, test $enable_editing = no)
|
||||
|
||||
-AC_CONFIG_FILES([Makefile include/Makefile include/libEMF/Makefile libemf/Makefile \
|
||||
+AC_CONFIG_FILES([Makefile include/Makefile libemf/Makefile \
|
||||
src/Makefile doc/Makefile tests/Makefile])
|
||||
|
||||
AC_OUTPUT
|
|
@ -0,0 +1,36 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := libemf
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.0.7
|
||||
$(PKG)_CHECKSUM := ef61f8d73b6e68785b973cbbe8c449138f40b740
|
||||
$(PKG)_SUBDIR := libEMF-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).src.tar.gz
|
||||
$(PKG)_URL := http://sourceforge.net/projects/libemf/files/latest/download
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://sourceforge.net/projects/libemf/files/' | \
|
||||
$(SED) -n 's_.*libEMF-\([0-9]\.[0-9]\.[0-9]\).*tar.gz_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
rm -rf '$(1)/include/libEMF' '$(1)'/include/libEMF/Makefile*
|
||||
|
||||
# configure
|
||||
cd '$(1)' && autoreconf && './configure' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--enable-static --disable-shared
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' install
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
|
@ -0,0 +1,30 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := libgd
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2.1.0
|
||||
$(PKG)_CHECKSUM := 66c56fc07246b66ba649c83e996fd2085ea2f9e2
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.xz
|
||||
$(PKG)_URL := https://bitbucket.org/libgd/gd-libgd/downloads/$(PKG)-$($(PKG)_VERSION).tar.xz
|
||||
$(PKG)_DEPS := fontconfig freetype libpng jpeg pthreads tiff zlib
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
echo 'Warning: Updates are temporarily disabled for package libgd.' >&2;
|
||||
echo $(gd_VERSION)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && libtoolize && autoreconf -i;
|
||||
|
||||
cd '$(1)' && ./configure \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
PKG_CONFIG_PATH='$(PREFIX)/$(TARGET)/lib/pkgconfig'
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)' install
|
||||
endef
|
|
@ -4,8 +4,8 @@ PKG := libmikmod
|
|||
$(PKG)_WEBSITE := http://mikmod.raphnet.net/
|
||||
$(PKG)_DESCR := libMikMod
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.3.7
|
||||
$(PKG)_CHECKSUM := 4cf41040a9af99cb960580210ba900c0a519f73ab97b503c780e82428b9bd9a2
|
||||
$(PKG)_VERSION := 3.3.11.1
|
||||
$(PKG)_CHECKSUM := ad9d64dfc8f83684876419ea7cd4ff4a41d8bcd8c23ef37ecb3a200a16b46d19
|
||||
$(PKG)_SUBDIR := libmikmod-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := libmikmod-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://$(SOURCEFORGE_MIRROR)/project/mikmod/outdated_versions/libmikmod/$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := libming
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_CHECKSUM := e803b3b94a00a361e3415105f26112cf6f7bac81
|
||||
$(PKG)_SUBDIR := ming-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := ming-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/projects/$(PKG)/Releases/($(PKG)_FILE)
|
||||
$(PKG)_URL_2 := http://sourceforge.net/projects/ming/files/Releases/ming-0.4.4.tar.bz2/download
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://www.libming.org/Releases' | \
|
||||
$(SED) -n 's_.ming-\([0-9]\.[0-9]\.[0-9]\).*tar.bz2_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(1)' && sh autogen.sh
|
||||
|
||||
cd '$(1)' && ./configure \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--prefix='$(PREFIX)/$(TARGET)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' install
|
||||
|
||||
endef
|
|
@ -3,16 +3,16 @@
|
|||
PKG := libsvm
|
||||
$(PKG)_WEBSITE := https://www.csie.ntu.edu.tw/~cjlin/libsvm
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.22
|
||||
$(PKG)_CHECKSUM := 6d81c67d3b13073eb5a25aa77188f141b242ec328518fad95367ede253d0a77d
|
||||
$(PKG)_VERSION := 322
|
||||
$(PKG)_CHECKSUM := a3469436f795bb3f8b1e65ea761e14e5599ec7ee941c001d771c07b7da318ac6
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://www.csie.ntu.edu.tw/~cjlin/$(PKG)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := cc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'https://www.csie.ntu.edu.tw/~cjlin/libsvm/' | \
|
||||
$(SED) -n 's,.*>v\([0-9][^<]*\)<.*,\1,p' | \
|
||||
$(WGET) -q -O- 'https://github.com/cjlin1/libsvm/releases' | \
|
||||
$(SED) -n '/a href/ s_.*releases/tag/v\([0-9.]*\)".*_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := libxdf
|
||||
$(PKG)_WEBSITE :=
|
||||
$(PKG)_DESCR := libxdf
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0.99
|
||||
$(PKG)_CHECKSUM := af66f6c1be5d9342fa33bc2a3b34c5a962db37d10623df57d352a213fe5201d1
|
||||
$(PKG)_SUBDIR := libxdf-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := libxdf-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://github.com/xdf-modules/libxdf/archive/v$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_DEPS := cc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
# wget -q -O- 'http://biosig.sourceforge.net/download.html' | \
|
||||
# $(SED) -n 's_.*>libbiosig, version \([0-9]\.[0-9]\.[0-9]\).*tar.gz_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1)/native_build'
|
||||
cd '$(1)/native_build' && $(TARGET)-cmake \
|
||||
-DCMAKE_BUILD_TYPE="Release" \
|
||||
-DSHARED_LIBS=$(if $(BUILD_STATIC),OFF,ON) \
|
||||
'$(1)'
|
||||
|
||||
$(MAKE) -C '$(1)/native_build'
|
||||
|
||||
$(INSTALL) '$(1)/xdf.h' '$(PREFIX)/$(TARGET)/include/'
|
||||
$(INSTALL) '$(1)'/native_build/libxdf.$(if $(BUILD_STATIC),"a","dll*") '$(PREFIX)/$(TARGET)/lib/'
|
||||
endef
|
|
@ -0,0 +1,31 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := luckybackup
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0.4.7
|
||||
$(PKG)_CHECKSUM := 7a436c29a636e359991cd131a5a966e3d4755372
|
||||
$(PKG)_SUBDIR := luckybackup-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://downloads.sourceforge.net/project/$(PKG)/$($(PKG)_VERSION)/source/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc qt
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
# wget -q -O- 'http://luckybackup.sourceforge.net' | \
|
||||
# $(SED) -n 's_.*current stable version.*>\([0-9]\.[0-9]\.[0-9]\)<.*_\1_ip' \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && \
|
||||
$(PREFIX)/$(TARGET)/qt/bin/qmake && \
|
||||
$(MAKE) && \
|
||||
rm -rf $(PREFIX)/$(TARGET)/bin/manual $(PREFIX)/$(TARGET)/bin/translations && \
|
||||
mv -f release/luckybackup.exe manual translations $(PREFIX)/$(TARGET)/bin/
|
||||
|
||||
cd $(PREFIX)/$(TARGET)/bin && \
|
||||
rm ../luckybackup.zip && \
|
||||
zip -r ../luckybackup.zip luckybackup.exe manual translations
|
||||
|
||||
endef
|
|
@ -0,0 +1,26 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := matplotlib
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_CHECKSUM := 1d0c319b2bc545f1a7002f56768e5730fe573518
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://downloads.sourceforge.net/project/matplotlib/matplotlib/$($(PKG)_SUBDIR)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc python libpng freetype wxpython numpy
|
||||
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://matplotlib.org/downloads.html' | \
|
||||
$(SED) -n 's_.*">matplotlib.\([0-9].[0-9].[0-9]\).tar.gz</a>.*_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)'
|
||||
|
||||
exit -1
|
||||
|
||||
endef
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
# Qwt - Qt widgets for technical applications
|
||||
PKG := minitube
|
||||
$(PKG)_CHECKSUM := 6d33a52367f7a82498ba27812bec4e15de005534
|
||||
$(PKG)_SUBDIR := $(PKG)
|
||||
$(PKG)_FILE := $(PKG).tar.gz
|
||||
$(PKG)_WEBSITE := http://flavio.tordini.org/
|
||||
$(PKG)_URL := http://flavio.tordini.org/files/$(PKG)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc qt phonon-backend-vlc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
# $(WGET) -q -O- 'http://sourceforge.net/projects/qwt/files/qwt/' | \
|
||||
# $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \
|
||||
# head -1
|
||||
echo 1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && $(PREFIX)/bin/$(TARGET)-qmake
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)' install
|
||||
|
||||
endef
|
|
@ -0,0 +1,10 @@
|
|||
--- a/src/memacs/buffer.c 2011-11-22 23:00:11.000000000 +0100
|
||||
+++ b/src/memacs/buffer.c 2013-02-21 21:58:53.000000000 +0100
|
||||
@@ -30,6 +30,7 @@
|
||||
* for the display system.
|
||||
*/
|
||||
#include <stdio.h>
|
||||
+#include <windows.h>
|
||||
#include "estruct.h"
|
||||
#include "edef.h"
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
--- a/src/ivoc/ivocwin.cpp 2012-07-24 14:59:05.000000000 +0200
|
||||
+++ b/src/ivoc/ivocwin.cpp 2013-02-26 19:48:35.000000000 +0100
|
||||
@@ -163,7 +163,7 @@
|
||||
int ivoc_vector_size(Object*) {return 0;}
|
||||
#endif
|
||||
|
||||
-#ifdef MINGW
|
||||
+#if 1
|
||||
IOHandler::IOHandler(){}
|
||||
IOHandler::~IOHandler(){}
|
||||
int IOHandler::inputReady(int){return 0;}
|
||||
@@ -173,7 +173,7 @@
|
||||
void IOHandler::childStatus(pid_t, int){}
|
||||
#endif // MINGW
|
||||
|
||||
-#ifdef MINGW
|
||||
+#if 1
|
||||
extern "C" {
|
||||
int stdin_event_ready();
|
||||
}
|
|
@ -0,0 +1,53 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := neuron
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 7.3
|
||||
$(PKG)_CHECKSUM := d79124f228135775769e661e1d57303476740ef6
|
||||
$(PKG)_SUBDIR := nrn-7.3
|
||||
$(PKG)_FILE := nrn-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://www.neuron.yale.edu/ftp/neuron/versions/v7.3/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc readline nrniv pthreads termcap
|
||||
|
||||
|
||||
PATH_TO_HOST_NEURON := $(PREFIX)/share/$($(PKG)_SUBDIR)
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://www.neuron.yale.edu/neuron/download/getstd' | \
|
||||
$(SED) -n 's_.*>[0-9]\./nrn-\([0-9]\.[0-9]\.[0-9]\).*tar.gz">_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
### This is neeeded because nmodl/nocmodl needs to run on host
|
||||
if [[ ! -d $(PATH_TO_HOST_NEURON) ]] ; then \
|
||||
echo "Built host neuron and nocmodl in $(PATH_TO_HOST_NEURON)"; \
|
||||
( cd $$(dirname $(PATH_TO_HOST_NEURON)) && tar xf $(PWD)/pkg/$($(PKG)_FILE) ); \
|
||||
( cd $(PATH_TO_HOST_NEURON) && \
|
||||
./configure --with-nmodl-only --without-x && \
|
||||
$(MAKE) ) ; \
|
||||
fi
|
||||
|
||||
## http://stackoverflow.com/questions/5212454/allegro-question-how-can-i-get-rid-of-the-cmd-window
|
||||
## ‐Wl,‐‐subsystem,windows
|
||||
cd '$(1)' CXXFLAGS=-mwindows LDFLAGS=‐‐subsystem=windows && ./configure \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--host='$(TARGET)' \
|
||||
--with-iv='$(PREFIX)/$(TARGET)' \
|
||||
--disable-shared \
|
||||
--enable-static
|
||||
|
||||
### nocmodl of host (not the target one) ###
|
||||
$(SED) -i 's#^NMODL = ../nmodl/nocmodl#NMODL = $(PATH_TO_HOST_NEURON)/src/nmodl/nocmodl#' '$(1)'/src/nrnoc/Makefile
|
||||
#$(SED) -i '/^am_ivoc_OBJECTS/ s#\\$$# ivocwin.$$\(OBJEXT\) \\#' '$(1)'/src/ivoc/Makefile
|
||||
$(SED) -i 's#^\tg++ #\t$$\(CXX\) #g' '$(1)'/src/nrniv/Makefile
|
||||
|
||||
$(MAKE) -C '$(1)'
|
||||
$(MAKE) -C '$(1)' install
|
||||
|
||||
endef
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := npp
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 6.2.3
|
||||
$(PKG)_CHECKSUM := e246ebb89c10b71ed483b866ea90385a661092e6
|
||||
$(PKG)_SUBDIR := unicode
|
||||
$(PKG)_FILE := $(PKG).$($(PKG)_VERSION).bin.zip
|
||||
$(PKG)_URL := http://download.tuxfamily.org/notepadplus/$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS :=
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
echo 'Warning: Updates are temporarily disabled for package Notepad++.' >&2;
|
||||
echo $($(PKG)_VERSION)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
#NOTEPAD_BASE_DIR := "$(PREFIX)/../notepad++/"
|
||||
mkdir -p '$(PREFIX)/notepad++'
|
||||
cd '$(1)' && tar cf - . | ( cd '$(PREFIX)/notepad++'; tar xpf - )
|
||||
endef
|
|
@ -0,0 +1,35 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := nrniv
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 7.3
|
||||
$(PKG)_CHECKSUM := d5bea5d6eeb02a30ceb1af1f3d354729b00bc774
|
||||
$(PKG)_SUBDIR := iv-18
|
||||
$(PKG)_FILE := iv-18.tar.gz
|
||||
$(PKG)_URL := http://www.neuron.yale.edu/ftp/neuron/versions/v7.3/$($(PKG)_FILE)
|
||||
# http://www.neuron.yale.edu/ftp/neuron/versions/v$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://www.neuron.yale.edu/neuron/download/getstd' | \
|
||||
$(SED) -n 's_.*>[0-9]\./iv-\([0-9\.]\)*\.tar.gz">_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
## http://stackoverflow.com/questions/5212454/allegro-question-how-can-i-get-rid-of-the-cmd-window
|
||||
## ‐Wl,‐‐subsystem,windows
|
||||
|
||||
cd '$(1)' && ./configure \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--enable-static
|
||||
|
||||
$(MAKE) -C '$(1)'
|
||||
$(MAKE) -C '$(1)' install
|
||||
|
||||
endef
|
|
@ -0,0 +1,30 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := numpy
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.6.2
|
||||
$(PKG)_CHECKSUM := c36c471f44cf914abdf37137d158bf3ffa460141
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://sourceforge.net/projects/numpy/files/NumPy/$($(PKG)_VERSION)/$($(PKG)_FILE)/download
|
||||
$(PKG)_DEPS := gcc python
|
||||
|
||||
PATH_TO_HOST_PYTHON := $(PREFIX)/share/$($(PKG)_SUBDIR)
|
||||
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://sourceforge.net/projects/numpy/files/NumPy/' | \
|
||||
$(SED) -n 's_.*/numpy.\([0-9].[0-9].[0-9]\).tar.gz.*_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)'
|
||||
|
||||
|
||||
|
||||
|
||||
endef
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := octave
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.6.4
|
||||
$(PKG)_CHECKSUM := 3cc9366b6dbbd336eaf90fe70ad16e63705d82c4
|
||||
$(PKG)_SUBDIR := octave-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := octave-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := ftp://ftp.gnu.org/gnu/$(PKG)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := arpack blas curl fftw fltk fontconfig freetype gcc glpk gnuplot graphicsmagick hdf5 lapack libgomp ncurses pcre pthreads qhull qrupdate readline suitesparse termcap texinfo zlib
|
||||
## pstoedit qscintilla qt ### FIXME: these are dependencies for Octave, but do not build yet
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://ftp.gnu.org/gnu/octave/?C=M;O=D' | \
|
||||
$(SED) -n 's,.*<a href="octave-\([0-9][^"]*\)\.tar\.gz".*,\1,p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
|
||||
define $(PKG)_BUILD
|
||||
if [ $(BUILD_SHARED) = yes ]; then \
|
||||
$(INSTALL) -d '$(PREFIX)/$(TARGET)/bin'; \
|
||||
$(MAKE_SHARED_FROM_STATIC) --ar '$(TARGET)-ar' --ld '$(TARGET)-gcc' '$(PREFIX)/$(TARGET)/lib/libuuid.a'; \
|
||||
$(INSTALL) -m755 '$(PREFIX)/$(TARGET)/lib/libuuid.dll.a' '$(PREFIX)/$(TARGET)/lib/libuuid.dll.a'; \
|
||||
$(INSTALL) -m755 '$(PREFIX)/$(TARGET)/lib/libuuid.dll' '$(PREFIX)/$(TARGET)/bin/libuuid.dll'; \
|
||||
rm -f '$(PREFIX)/$(TARGET)/lib/libuuid.dll'; \
|
||||
fi
|
||||
|
||||
mkdir '$(1)/.build'
|
||||
cd '$(1)' && autoreconf --force -W none
|
||||
|
||||
### make sure pcre-config of host is used
|
||||
$(SED) -i 's,pcre-config,$(PREFIX)/$(TARGET)/bin/pcre-config,g' '$(1)/configure'
|
||||
|
||||
# configure
|
||||
cd '$(1)/.build' && '../configure' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--enable-openmp \
|
||||
FLTK_CONFIG="$(PREFIX)/bin/$(TARGET)-fltk-config" \
|
||||
PKG_CONFIG="$(TARGET)-pkg-config" \
|
||||
LIBS='-lsuitesparseconfig -lumfpack -lamd' \
|
||||
BUILD_CC=g++ \
|
||||
gl_cv_func_gettimeofday_clobber=no
|
||||
|
||||
#BUILD_CXX="g++" \
|
||||
|
||||
## We want both of these install steps so that we install in the
|
||||
## location set by the configure --prefix option, and the other
|
||||
## in a directory tree that will have just Octave files.
|
||||
$(MAKE_SHARED_FROM_STATIC) --ar '$(TARGET)-ar' --ld '$(TARGET)-g++' -C '$(1)/.build' -j '$(JOBS)' install
|
||||
|
||||
$(MAKE) -C '$(1)/.build' -j '$(JOBS)' DESTDIR=$(PREFIX)/../octave install
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_i686-pc-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
|
@ -0,0 +1,64 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := opencv3
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.1.0
|
||||
$(PKG)_CHECKSUM := 1f6990249fdb82804fff40e96fa6d99949023ab0e3277eae4bd459b374e622a4
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := opencv-$($(PKG)_VERSION).zip
|
||||
$(PKG)_URL := https://github.com/Itseez/opencv/archive/$($(PKG)_VERSION).zip
|
||||
$(PKG)_DEPS := gcc eigen ffmpeg jasper jpeg lcms1 libpng openexr tiff xz zlib
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/' | \
|
||||
$(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
# build
|
||||
mkdir '$(1).build'
|
||||
cd '$(1).build' && cmake \
|
||||
-DWITH_QT=OFF \
|
||||
-DWITH_OPENGL=ON \
|
||||
-DWITH_GSTREAMER=OFF \
|
||||
-DWITH_GTK=OFF \
|
||||
-DWITH_VIDEOINPUT=ON \
|
||||
-DWITH_XINE=OFF \
|
||||
-DBUILD_SHARED_LIBS=$(if $(BUILD_STATIC),OFF,ON) \
|
||||
-DBUILD_opencv_apps=OFF \
|
||||
-DBUILD_DOCS=OFF \
|
||||
-DBUILD_EXAMPLES=OFF \
|
||||
-DBUILD_PACKAGE=OFF \
|
||||
-DBUILD_PERF_TESTS=OFF \
|
||||
-DBUILD_TESTS=OFF \
|
||||
-DBUILD_WITH_DEBUG_INFO=OFF \
|
||||
-DBUILD_FAT_JAVA_LIB=OFF \
|
||||
-DBUILD_ZLIB=OFF \
|
||||
-DBUILD_TIFF=OFF \
|
||||
-DBUILD_JASPER=OFF \
|
||||
-DBUILD_JPEG=OFF \
|
||||
-DBUILD_PNG=OFF \
|
||||
-DBUILD_OPENEXR=OFF \
|
||||
-DCMAKE_VERBOSE=ON \
|
||||
-DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
|
||||
-DCMAKE_CXX_FLAGS='-D_WIN32_WINNT=0x0500' \
|
||||
'$(1)'
|
||||
|
||||
# install
|
||||
$(MAKE) -C '$(1).build' -j '$(JOBS)' install VERBOSE=1
|
||||
|
||||
# fixup and install pkg-config file
|
||||
# openexr isn't available on x86_64-w64-mingw32
|
||||
# opencv builds it's own libIlmImf.a
|
||||
$(if $(findstring x86_64-w64-mingw32,$(TARGET)),\
|
||||
$(SED) -i 's/OpenEXR//' '$(1).build/unix-install/opencv.pc')
|
||||
$(SED) -i 's,share/OpenCV/3rdparty/,,g' '$(1).build/unix-install/opencv.pc'
|
||||
$(INSTALL) -m755 '$(1).build/unix-install/opencv.pc' '$(PREFIX)/$(TARGET)/lib/pkgconfig'
|
||||
|
||||
'$(TARGET)-g++' \
|
||||
-W -Wall -Werror -ansi -pedantic \
|
||||
'$(1)/samples/c/fback_c.c' -o '$(PREFIX)/$(TARGET)/bin/test-opencv.exe' \
|
||||
`'$(TARGET)-pkg-config' opencv --cflags --libs`
|
||||
endef
|
|
@ -66,3 +66,5 @@ define $(PKG)_BUILD
|
|||
'$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-openexr.exe' \
|
||||
`'$(TARGET)-pkg-config' OpenEXR --cflags --libs`
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
|
|
|
@ -0,0 +1,196 @@
|
|||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/contrib/vt/wrappers/mpic++-vt-wrapper-data.txt
|
||||
--- a/ompi/contrib/vt/wrappers/mpic++-vt-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/contrib/vt/wrappers/mpic++-vt-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -13,9 +13,9 @@
|
||||
compiler=vtcxx
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi_cxx -lmpi -lopen-rte -lopen-pal -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
+libs=-lmpi_cxx -lmpi -lopen-rte -lopen-pal -lm -lgdi32 -Wl,--export-all-symbols
|
||||
required_file=
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/contrib/vt/wrappers/mpicc-vt-wrapper-data.txt
|
||||
--- a/ompi/contrib/vt/wrappers/mpicc-vt-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/contrib/vt/wrappers/mpicc-vt-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -13,9 +13,9 @@
|
||||
compiler=vtcc
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi -lopen-rte -lopen-pal -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
+libs=-lmpi -lopen-rte -lopen-pal -lm -lgdi32 -Wl,--export-all-symbols
|
||||
required_file=
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/contrib/vt/wrappers/mpif77-vt-wrapper-data.txt
|
||||
--- a/ompi/contrib/vt/wrappers/mpif77-vt-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/contrib/vt/wrappers/mpif77-vt-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -13,9 +13,9 @@
|
||||
compiler=vtf77
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
-required_file=
|
||||
+libs=-lmpi_f77 -lmpi -lopen-rte -lopen-pal -lm -lgdi32 -Wl,--export-all-symbols
|
||||
+required_file=not supported
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/contrib/vt/wrappers/mpif90-vt-wrapper-data.txt
|
||||
--- a/ompi/contrib/vt/wrappers/mpif90-vt-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/contrib/vt/wrappers/mpif90-vt-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,12 +11,12 @@
|
||||
language=Fortran 90
|
||||
compiler_flags_env=FCFLAGS
|
||||
compiler=vtf90
|
||||
-module_option=-I
|
||||
+module_option=
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi_f90 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
-required_file=
|
||||
+libs=-lmpi_f90 -lmpi_f77 -lmpi -lopen-rte -lopen-pal -lm -lgdi32 -Wl,--export-all-symbols
|
||||
+required_file=not supported
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/tools/wrappers/mpic++-wrapper-data.txt
|
||||
--- a/ompi/tools/wrappers/mpic++-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/tools/wrappers/mpic++-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,12 +11,12 @@
|
||||
language=C++
|
||||
compiler_env=CXX
|
||||
compiler_flags_env=CXXFLAGS
|
||||
-compiler=g++
|
||||
+compiler=i686-pc-mingw32-g++
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi_cxx -lmpi -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
+libs=-lmpi_cxx -lmpi -lm -lgdi32 -Wl,--export-all-symbols
|
||||
required_file=
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/tools/wrappers/mpicc-wrapper-data.txt
|
||||
--- a/ompi/tools/wrappers/mpicc-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/tools/wrappers/mpicc-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,12 +11,12 @@
|
||||
language=C
|
||||
compiler_env=CC
|
||||
compiler_flags_env=CFLAGS
|
||||
-compiler=gcc
|
||||
+compiler=i686-pc-mingw32-gcc
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
+libs=-lmpi -lm -lgdi32 -Wl,--export-all-symbols
|
||||
required_file=
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/tools/wrappers/mpif77-wrapper-data.txt
|
||||
--- a/ompi/tools/wrappers/mpif77-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/tools/wrappers/mpif77-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,12 +11,12 @@
|
||||
language=Fortran 77
|
||||
compiler_env=F77
|
||||
compiler_flags_env=FFLAGS
|
||||
-compiler=gfortran
|
||||
+compiler=no
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi_f77 -lmpi -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
-required_file=
|
||||
+libs=-lmpi_f77 -lmpi -lm -lgdi32 -Wl,--export-all-symbols
|
||||
+required_file=not supported
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 ompi/tools/wrappers/mpif90-wrapper-data.txt
|
||||
--- a/ompi/tools/wrappers/mpif90-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/ompi/tools/wrappers/mpif90-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,13 +11,13 @@
|
||||
language=Fortran 90
|
||||
compiler_env=FC
|
||||
compiler_flags_env=FCFLAGS
|
||||
-compiler=gfortran
|
||||
-module_option=-I
|
||||
+compiler=no
|
||||
+module_option=
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lmpi_f90 -lmpi_f77 -lmpi -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
-required_file=
|
||||
+libs=-lmpi_f90 -lmpi_f77 -lmpi -lm -lgdi32 -Wl,--export-all-symbols
|
||||
+required_file=not supported
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 opal/win32/win_compat.h
|
||||
--- a/opal/win32/win_compat.h Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/opal/win32/win_compat.h Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -90,7 +90,7 @@
|
||||
#define STDOUT_FILENO 1
|
||||
#define STDERR_FILENO 2
|
||||
typedef unsigned short mode_t;
|
||||
-typedef long ssize_t;
|
||||
+//typedef long ssize_t;
|
||||
typedef DWORD in_port_t;
|
||||
typedef char* caddr_t;
|
||||
typedef unsigned int uint;
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 orte/tools/wrappers/ortec++-wrapper-data.txt
|
||||
--- a/orte/tools/wrappers/ortec++-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/orte/tools/wrappers/ortec++-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,12 +11,12 @@
|
||||
language=C++
|
||||
compiler_env=CXX
|
||||
compiler_flags_env=CXXFLAGS
|
||||
-compiler=g++
|
||||
+compiler=i686-pc-mingw32-g++
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lopen-rte -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
+libs=-lopen-rte -lm -lgdi32 -Wl,--export-all-symbols
|
||||
required_file=
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
||||
diff -r 9f0c2f2016d0 -r 0f169b655bd4 orte/tools/wrappers/ortecc-wrapper-data.txt
|
||||
--- a/orte/tools/wrappers/ortecc-wrapper-data.txt Thu Mar 07 19:12:09 2013 -0500
|
||||
+++ b/orte/tools/wrappers/ortecc-wrapper-data.txt Thu Mar 07 19:22:38 2013 -0500
|
||||
@@ -11,12 +11,12 @@
|
||||
language=C
|
||||
compiler_env=CC
|
||||
compiler_flags_env=CFLAGS
|
||||
-compiler=gcc
|
||||
+compiler=i686-pc-mingw32-gcc
|
||||
extra_includes=
|
||||
preprocessor_flags=
|
||||
-compiler_flags=-pthread
|
||||
+compiler_flags=
|
||||
linker_flags=
|
||||
-libs=-lopen-rte -ldl -lm -lnuma -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
|
||||
+libs=-lopen-rte -lm -lgdi32 -Wl,--export-all-symbols
|
||||
required_file=
|
||||
includedir=${includedir}
|
||||
libdir=${libdir}
|
|
@ -0,0 +1,11 @@
|
|||
--- a/opal/win32/win_compat.h 2013-03-13 19:13:16.000000000 +0100
|
||||
+++ b/opal/win32/win_compat.h 2013-03-13 19:23:28.000000000 +0100
|
||||
@@ -172,7 +172,7 @@
|
||||
|
||||
#define MAXPATHLEN _MAX_PATH
|
||||
#define MAXHOSTNAMELEN _MAX_PATH
|
||||
-#define PATH_MAX _MAX_PATH
|
||||
+// #define PATH_MAX _MAX_PATH
|
||||
#define WTERMSIG(EXIT_CODE) (1)
|
||||
#define WIFEXITED(EXIT_CODE) (1)
|
||||
#define WEXITSTATUS(EXIT_CODE) (EXIT_CODE)
|
|
@ -0,0 +1,13 @@
|
|||
--- a/opal/win32/win_compat.h 2013-03-13 19:26:27.000000000 +0100
|
||||
+++ b/opal/win32/win_compat.h 2013-03-13 19:36:35.000000000 +0100
|
||||
@@ -317,8 +317,8 @@
|
||||
#define LOG_DEBUG 7
|
||||
|
||||
/* hwloc support is not ready on Windows,
|
||||
- will remove this lines when it's done. */
|
||||
-#define OPAL_HAVE_HWLOC 0
|
||||
+ remove this lines when it's done. */
|
||||
+// #define OPAL_HAVE_HWLOC 0
|
||||
|
||||
/*
|
||||
* Mask these to Windows equivalents
|
|
@ -0,0 +1,19 @@
|
|||
--- a/opal/include/opal_config_bottom.h 2012-04-03 16:29:45.000000000 +0200
|
||||
+++ b/opal/include/opal_config_bottom.h 2013-03-13 19:40:00.000000000 +0100
|
||||
@@ -556,13 +556,13 @@
|
||||
#define AF_UNSPEC 0
|
||||
#endif
|
||||
#if !HAVE_DECL_PF_UNSPEC
|
||||
-#define PF_UNSPEC 0
|
||||
+//#define PF_UNSPEC 0
|
||||
#endif
|
||||
#if !HAVE_DECL_AF_INET6
|
||||
-#define AF_INET6 AF_UNSPEC
|
||||
+//#define AF_INET6 AF_UNSPEC
|
||||
#endif
|
||||
#if !HAVE_DECL_PF_INET6
|
||||
-#define PF_INET6 PF_UNSPEC
|
||||
+//#define PF_INET6 PF_UNSPEC
|
||||
#endif
|
||||
|
||||
#if defined(__APPLE__) && defined(HAVE_INTTYPES_H)
|
|
@ -0,0 +1,14 @@
|
|||
--- a/opal/util/output.h 2012-04-03 16:29:52.000000000 +0200
|
||||
+++ b/opal/util/output.h 2013-03-13 23:22:28.000000000 +0100
|
||||
@@ -72,9 +72,9 @@
|
||||
* For C++, we should not need the file, anyhow.
|
||||
* Circumentvent problems in C++ compilers.
|
||||
*/
|
||||
-#if defined(HAVE_STDBOOL_H) && !(defined(c_plusplus) || defined(__cplusplus))
|
||||
+//#if defined(HAVE_STDBOOL_H) && !(defined(c_plusplus) || defined(__cplusplus))
|
||||
#include <stdbool.h>
|
||||
-#endif
|
||||
+//#endif
|
||||
|
||||
#include "opal/class/opal_object.h"
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := openmpi
|
||||
$(PKG)_VERSION := 1.6.5
|
||||
$(PKG)_CHECKSUM := 93859d515b33dd9a0ee6081db285a2d1dffe21ce
|
||||
$(PKG)_SUBDIR := openmpi-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := openmpi-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := http://www.open-mpi.org/software/ompi/v1.6/downloads/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://www.open-mpi.org/software/ompi/' | \
|
||||
$(SED) -n 's,.*<TITLE>Open MPI: Version \([0-9\.]{1-6}\)</TITLE>.*,\1,p' | \
|
||||
head -1 | echo
|
||||
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)' && ./autogen.sh
|
||||
|
||||
cd '$(1)' && CPPAS=$(TARGET)-gcc ./configure \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--disable-shared \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--disable-mpi-f77 \
|
||||
--disable-mpi-f90
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)' install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS=
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_i686-pc-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
|
@ -0,0 +1,29 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
# Qwt - Qt widgets for technical applications
|
||||
PKG := phonon-backend-vlc
|
||||
$(PKG)_VERSION := 0.6.2
|
||||
$(PKG)_CHECKSUM := 6d33a52367f7a82498ba27812bec4e15de005534
|
||||
$(PKG)_SUBDIR := $(PKG)
|
||||
$(PKG)_FILE := $(PKG).tar.gz
|
||||
$(PKG)_WEBSITE := http://flavio.tordini.org/
|
||||
$(PKG)_URL := http://flavio.tordini.org/files/$(PKG)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc vlc phonon
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
# $(WGET) -q -O- 'http://sourceforge.net/projects/qwt/files/qwt/' | \
|
||||
# $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \
|
||||
# head -1
|
||||
echo 1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && $(PREFIX)/bin/$(TARGET)-qmake
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)' install
|
||||
|
||||
endef
|
|
@ -0,0 +1,37 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
# Qwt - Qt widgets for technical applications
|
||||
PKG := phonon
|
||||
$(PKG)_VERSION := 4.6.0
|
||||
$(PKG)_CHECKSUM := d8dbc188b58c6dd9c6a73d3742a25291e647bb95
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $($(PKG)_SUBDIR).tar.xz
|
||||
$(PKG)_WEBSITE := http://www.kde.org/
|
||||
$(PKG)_URL := http://download.kde.org/stable/phonon/$($(PKG)_VERSION)/src/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc glib automoc4
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
# $(WGET) -q -O- 'http://sourceforge.net/projects/qwt/files/qwt/' | \
|
||||
# $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \
|
||||
# head -1
|
||||
echo 1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
mkdir '$(1)/build'
|
||||
|
||||
cd '$(1)' && cmake ./cmake -DCMAKE_INSTALL_PREFIX=$(PREFIX)/$(TARGET)/qt \
|
||||
-DPHONON_INSTALL_QT_EXTENSIONS_INTO_SYSTEM_QT=TRUE \
|
||||
-DDBUS_INTERFACES_INSTALL_DIR=$(PREFIX)/$(TARGET)/share/dbus-1/interfaces
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)' install
|
||||
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_i686-pc-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
|
@ -31,3 +31,6 @@ define $(PKG)_BUILD
|
|||
LDFLAGS=-no-undefined
|
||||
AR='$(TARGET)-ar'
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
|
|
|
@ -25,3 +25,5 @@ define $(PKG)_BUILD
|
|||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
$(MAKE) -C '$(1)' -j 1 install
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-static-mingw32 =
|
||||
|
|
|
@ -44,3 +44,6 @@ define $(PKG)_BUILD
|
|||
'$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-portmidi.exe' \
|
||||
-lportmidi -lwinmm
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
diff -uNr e/othersrc/gsdllinc/wgsver.c f/othersrc/gsdllinc/wgsver.c
|
||||
--- e/othersrc/gsdllinc/wgsver.c 2010-12-27 10:09:35.000000000 -0500
|
||||
+++ f/othersrc/gsdllinc/wgsver.c 2013-01-08 22:23:09.775545031 -0500
|
||||
@@ -39,6 +39,10 @@
|
||||
#include <stdlib.h>
|
||||
#include "wgsver.h"
|
||||
|
||||
+#ifndef KEY_WOW64_64KEY
|
||||
+#define KEY_WOW64_64KEY 0x0100
|
||||
+#endif
|
||||
+
|
||||
/* Ghostscript may be known in the Windows Registry by
|
||||
* the following names.
|
||||
*/
|
||||
diff -uNr e/src/cbstream.cpp f/src/cbstream.cpp
|
||||
--- e/src/cbstream.cpp 2012-08-28 09:52:28.000000000 -0400
|
||||
+++ f/src/cbstream.cpp 2013-01-08 22:15:04.575971765 -0500
|
||||
@@ -33,6 +33,8 @@
|
||||
// this code is only needed under WIN32
|
||||
// ...and under OS/2
|
||||
|
||||
+#include <cstdio>
|
||||
+
|
||||
#include "cppcomp.h"
|
||||
|
||||
#include "cbstream.h"
|
||||
diff -uNr e/src/Makefile.am f/src/Makefile.am
|
||||
--- e/src/Makefile.am 2010-08-22 09:54:28.000000000 -0400
|
||||
+++ f/src/Makefile.am 2013-01-08 22:28:40.596345408 -0500
|
||||
@@ -133,7 +133,8 @@
|
||||
genericints.h \
|
||||
version.h
|
||||
|
||||
-libpstoedit_la_LIBADD = ${CXX_STD_LIB} ${CXX_RUNTIME_LIB} -ldl -lm
|
||||
+libpstoedit_la_LIBADD = ${CXX_STD_LIB} ${CXX_RUNTIME_LIB} -lm
|
||||
+libpstoedit_la_CPPFLAGS = -I$(top_srcdir)/othersrc/gsdllinc
|
||||
libpstoedit_la_LDFLAGS = -no-undefined
|
||||
|
||||
pstoedit_SOURCES = cmdmain.cpp
|
|
@ -0,0 +1,11 @@
|
|||
--- pstoedit-3.61/configure.ac 2012-08-28 12:46:41.000000000 +0200
|
||||
+++ pstoedit-3.61/configure.ac 2013-04-18 22:56:10.000000000 +0200
|
||||
@@ -235,7 +235,7 @@
|
||||
else
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
AC_MSG_CHECKING(ImageMagick flags through pkg-config)
|
||||
- PKG_CHECK_MODULES(LIBMAGICK, ImageMagick++,
|
||||
+ PKG_CHECK_MODULES(LIBMAGICK, ImageMagick,
|
||||
HAVE_LIBMAGICK=yes
|
||||
LIBMAGICK_CFLAGS="-DHAVE_MAGIC $LIBMAGICK_CFLAGS"
|
||||
LIBMAGICK_LDFLAGS="$LIBMAGICK_LIBS" ,
|
|
@ -0,0 +1,42 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := pstoedit
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.61
|
||||
$(PKG)_CHECKSUM := 426f3746ecb441caa0db401d5880e1ac04a399d5
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := https://sourceforge.net/projects/pstoedit/files/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE)/download
|
||||
$(PKG)_DEPS := gcc
|
||||
### libemf libming ###
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
echo 'Warning: Updates are temporarily disabled for package pstoedit.' >&2;
|
||||
echo $(pstoedit_VERSION)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
#cd '$(1)' && tar xvf '$(1)'/../../pkg/libemf-1.0.7.src.tar.gz
|
||||
|
||||
cd '$(1)' && autoreconf
|
||||
mkdir '$(1)/.build'
|
||||
|
||||
cd '$(1)/.build' && '../configure' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--enable-static --disable-shared \
|
||||
--without-emf
|
||||
|
||||
#--without-libplot --without-swf --without-magick
|
||||
|
||||
#--with-libemf-src=DIR \
|
||||
#--with-libemf-src=DIR
|
||||
|
||||
|
||||
$(MAKE) -C '$(1)/.build' -j '$(JOBS)' install
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
||||
|
|
@ -0,0 +1,157 @@
|
|||
diff -urN a-3.3.0/Makefile.pre.in b-3.3.0/Makefile.pre.in
|
||||
--- a-3.3.0/Makefile.pre.in Sat Sep 29 09:00:41 2012
|
||||
+++ b-3.3.0/Makefile.pre.in Fri Nov 16 14:22:51 2012
|
||||
@@ -1113,6 +1113,8 @@
|
||||
# Substitution happens here, as the completely-expanded BINDIR
|
||||
# is not available in configure
|
||||
sed -e "s,@EXENAME@,$(BINDIR)/python$(LDVERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config
|
||||
+ # Replace makefile compat. variable references with shell script compat. ones; $(VAR) -> ${VAR}
|
||||
+ sed -e "s,\$$(\([A-Za-z0-9_]*\)),\$$\{\1\},g" < Misc/python-config.sh >python-config.sh
|
||||
|
||||
# Install the include files
|
||||
INCLDIRSTOMAKE=$(INCLUDEDIR) $(CONFINCLUDEDIR) $(INCLUDEPY) $(CONFINCLUDEPY)
|
||||
@@ -1171,6 +1173,7 @@
|
||||
$(INSTALL_SCRIPT) $(srcdir)/Modules/makesetup $(DESTDIR)$(LIBPL)/makesetup
|
||||
$(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh
|
||||
$(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(LDVERSION)-config
|
||||
+ $(INSTALL_SCRIPT) python-config.sh $(DESTDIR)$(BINDIR)/python-config.sh
|
||||
rm python-config
|
||||
@if [ -s Modules/python.exp -a \
|
||||
"`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \
|
||||
diff -urN a-3.3.0/Misc/python-config.sh.in b-3.3.0/Misc/python-config.sh.in
|
||||
--- a-3.3.0/Misc/python-config.sh.in Thu Jan 1 00:00:00 1970
|
||||
+++ b-3.3.0/Misc/python-config.sh.in Fri Nov 16 14:22:51 2012
|
||||
@@ -0,0 +1,97 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+exit_with_usage ()
|
||||
+{
|
||||
+ echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--help|--abiflags"
|
||||
+ exit 1
|
||||
+}
|
||||
+
|
||||
+if [ "$1" = "" ] ; then
|
||||
+ exit_with_usage
|
||||
+fi
|
||||
+
|
||||
+# Returns the actual prefix where this script was installed to.
|
||||
+installed_prefix ()
|
||||
+{
|
||||
+ local RESULT=$(dirname $(cd $(dirname "$1") && pwd -P))
|
||||
+ if [ $(which readlink) ] ; then
|
||||
+ RESULT=$(readlink -f "$RESULT")
|
||||
+ fi
|
||||
+ echo $RESULT
|
||||
+}
|
||||
+
|
||||
+prefix_build="@prefix@"
|
||||
+prefix_real=$(installed_prefix "$0")
|
||||
+
|
||||
+# Use sed to fix paths from their built to locations to their installed to locations.
|
||||
+prefix=$(echo "$prefix_build" | sed "s#$prefix_build#$prefix_real#")
|
||||
+exec_prefix_build="@exec_prefix@"
|
||||
+exec_prefix=$(echo "$exec_prefix_build" | sed "s#$exec_prefix_build#$prefix_real#")
|
||||
+includedir=$(echo "@includedir@" | sed "s#$prefix_build#$prefix_real#")
|
||||
+libdir=$(echo "@libdir@" | sed "s#$prefix_build#$prefix_real#")
|
||||
+CFLAGS=$(echo "@CFLAGS@" | sed "s#$prefix_build#$prefix_real#")
|
||||
+VERSION="@VERSION@"
|
||||
+LIBM="@LIBM@"
|
||||
+LIBC="@LIBC@"
|
||||
+SYSLIBS="$LIBM $LIBC"
|
||||
+ABIFLAGS="@ABIFLAGS@"
|
||||
+# Protect against lack of substitution.
|
||||
+if [ "$ABIFLAGS" = "@ABIFLAGS@" ] ; then
|
||||
+ ABIFLAGS=
|
||||
+fi
|
||||
+LIBS="@LIBS@ $SYSLIBS -lpython${VERSION}${ABIFLAGS}"
|
||||
+BASECFLAGS="@BASECFLAGS@"
|
||||
+LDLIBRARY="@LDLIBRARY@"
|
||||
+LINKFORSHARED="@LINKFORSHARED@"
|
||||
+OPT="@OPT@"
|
||||
+PY_ENABLE_SHARED="@PY_ENABLE_SHARED@"
|
||||
+LDVERSION="@LDVERSION@"
|
||||
+LIBDEST=${prefix}/lib/python${VERSION}
|
||||
+LIBPL=${LIBDEST}/config-${LDVERSION}
|
||||
+INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}"
|
||||
+
|
||||
+# Scan for --help or unknown argument.
|
||||
+for ARG in $*
|
||||
+do
|
||||
+ case $ARG in
|
||||
+ --help)
|
||||
+ exit_with_usage
|
||||
+ ;;
|
||||
+ --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--abiflags)
|
||||
+ ;;
|
||||
+ *)
|
||||
+ exit_with_usage
|
||||
+ ;;
|
||||
+ esac
|
||||
+done
|
||||
+
|
||||
+for ARG in $*
|
||||
+do
|
||||
+ case $ARG in
|
||||
+ --prefix)
|
||||
+ echo "$prefix"
|
||||
+ ;;
|
||||
+ --exec-prefix)
|
||||
+ echo "$exec_prefix"
|
||||
+ ;;
|
||||
+ --includes)
|
||||
+ echo "$INCDIR"
|
||||
+ ;;
|
||||
+ --cflags)
|
||||
+ echo "$INCDIR $BASECFLAGS $CFLAGS $OPT"
|
||||
+ ;;
|
||||
+ --libs)
|
||||
+ echo "$LIBS"
|
||||
+ ;;
|
||||
+ --ldflags)
|
||||
+ LIBPLUSED=
|
||||
+ if [ "$PY_ENABLE_SHARED" = "0" ] ; then
|
||||
+ LIBPLUSED="-L$LIBPL"
|
||||
+ fi
|
||||
+ echo "$LIBPLUSED -L$libdir $LIBS $LINKFORSHARED"
|
||||
+ ;;
|
||||
+ --abiflags)
|
||||
+ echo "$ABIFLAGS"
|
||||
+ ;;
|
||||
+esac
|
||||
+done
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Sat Sep 29 09:00:50 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 14:22:51 2012
|
||||
@@ -894,6 +894,7 @@
|
||||
|
||||
# Other platforms follow
|
||||
if test $enable_shared = "yes"; then
|
||||
+ PY_ENABLE_SHARED=1
|
||||
AC_DEFINE(Py_ENABLE_SHARED, 1, [Defined if Python is built as a shared library.])
|
||||
case $ac_sys_system in
|
||||
CYGWIN*)
|
||||
@@ -949,6 +950,7 @@
|
||||
|
||||
esac
|
||||
else # shared is disabled
|
||||
+ PY_ENABLE_SHARED=0
|
||||
case $ac_sys_system in
|
||||
CYGWIN*)
|
||||
BLDLIBRARY='$(LIBRARY)'
|
||||
@@ -956,6 +958,7 @@
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
+AC_SUBST(PY_ENABLE_SHARED)
|
||||
|
||||
if test "$cross_compiling" = yes; then
|
||||
RUNSHARED=
|
||||
@@ -4597,7 +4600,7 @@
|
||||
fi
|
||||
|
||||
# generate output files
|
||||
-AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc)
|
||||
+AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh)
|
||||
AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix])
|
||||
AC_OUTPUT
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 13:01:05 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 13:03:37 2012
|
||||
@@ -49,7 +49,7 @@
|
||||
AC_MSG_ERROR([python$PACKAGE_VERSION interpreter not found])
|
||||
fi
|
||||
AC_MSG_RESULT($interp)
|
||||
- PYTHON_FOR_BUILD="_PYTHON_PROJECT_BASE=$srcdir"' _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(srcdir)/Lib:$(srcdir)/Lib/plat-$(MACHDEP) '$interp
|
||||
+ PYTHON_FOR_BUILD="_PYTHON_PROJECT_BASE=`pwd`"' _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(srcdir)/Lib:$(srcdir)/Lib/plat-$(MACHDEP) '$interp
|
||||
fi
|
||||
else
|
||||
PYTHON_FOR_BUILD='./$(BUILDPYTHON) -E'
|
||||
@@ -334,9 +334,9 @@
|
||||
then
|
||||
# avoid using uname for cross builds
|
||||
if test "$cross_compiling" = yes; then
|
||||
- # ac_sys_system and ac_sys_release are only used for setting
|
||||
- # `define_xopen_source' in the case statement below. For the
|
||||
- # current supported cross builds, this macro is not adjusted.
|
||||
+ # ac_sys_system and ac_sys_release are used for setting
|
||||
+ # a lot of different things including 'define_xopen_source'
|
||||
+ # in the case statement below.
|
||||
case "$host" in
|
||||
*-*-linux*)
|
||||
ac_sys_system=Linux
|
||||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Fri Nov 16 13:01:18 2012
|
||||
+++ b-3.3.0/setup.py Fri Nov 16 13:03:37 2012
|
||||
@@ -520,6 +520,9 @@
|
||||
'/lib', '/usr/lib',
|
||||
]
|
||||
inc_dirs = self.compiler.include_dirs + ['/usr/include']
|
||||
+ else:
|
||||
+ lib_dirs = self.compiler.library_dirs
|
||||
+ inc_dirs = self.compiler.include_dirs
|
||||
exts = []
|
||||
missing = []
|
||||
|
|
@ -0,0 +1,118 @@
|
|||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 13:10:30 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 13:10:49 2012
|
||||
@@ -334,6 +334,7 @@
|
||||
then
|
||||
# avoid using uname for cross builds
|
||||
if test "$cross_compiling" = yes; then
|
||||
+ ac_sys_release=
|
||||
# ac_sys_system and ac_sys_release are used for setting
|
||||
# a lot of different things including 'define_xopen_source'
|
||||
# in the case statement below.
|
||||
@@ -344,12 +345,32 @@
|
||||
*-*-cygwin*)
|
||||
ac_sys_system=Cygwin
|
||||
;;
|
||||
+ *-*-darwin*)
|
||||
+ ac_sys_system=Darwin
|
||||
+ ac_sys_release=$(echo $host | sed -n 's/.*-[^0-9]\+\([0-9]\+\)/\1/p')
|
||||
+ if test -z "$ac_sys_release"; then
|
||||
+ # A reasonable default.
|
||||
+ ac_sys_release=11
|
||||
+ fi
|
||||
+ # Use the last released version number for old versions.
|
||||
+ if test "$ac_sys_release" = "9" ; then
|
||||
+ ac_sys_release=9.8
|
||||
+ elif test "$ac_sys_release" = "10" ; then
|
||||
+ ac_sys_release=10.8
|
||||
+ elif test "$ac_sys_release" = "11" ; then
|
||||
+ ac_sys_release=11.4.0
|
||||
+ elif test "$ac_sys_release" = "12" ; then
|
||||
+ ac_sys_release=12.0.0
|
||||
+ else
|
||||
+ # ..and .0.0 for unknown versions.
|
||||
+ ac_sys_release=${ac_sys_release}.0.0
|
||||
+ fi
|
||||
+ ;;
|
||||
*)
|
||||
# for now, limit cross builds to known configurations
|
||||
MACHDEP="unknown"
|
||||
AC_MSG_ERROR([cross build not supported for $host])
|
||||
esac
|
||||
- ac_sys_release=
|
||||
else
|
||||
ac_sys_system=`uname -s`
|
||||
if test "$ac_sys_system" = "AIX" \
|
||||
@@ -389,6 +410,9 @@
|
||||
*-*-cygwin*)
|
||||
_host_cpu=
|
||||
;;
|
||||
+ *-*-darwin*)
|
||||
+ _host_cpu=
|
||||
+ ;;
|
||||
*)
|
||||
# for now, limit cross builds to known configurations
|
||||
MACHDEP="unknown"
|
||||
@@ -1098,6 +1122,26 @@
|
||||
|
||||
AC_SUBST(BASECFLAGS)
|
||||
|
||||
+if test "x$cross_compiling" = xyes; then
|
||||
+ function cross_arch
|
||||
+ {
|
||||
+ case $host in
|
||||
+ x86_64*darwin*)
|
||||
+ echo i386
|
||||
+ ;;
|
||||
+ x86_64*)
|
||||
+ echo x86_64
|
||||
+ ;;
|
||||
+ *)
|
||||
+ echo i386
|
||||
+ ;;
|
||||
+ esac
|
||||
+ }
|
||||
+ ARCH_PROG=cross_arch
|
||||
+else
|
||||
+ ARCH_PROG=/usr/bin/arch
|
||||
+fi
|
||||
+
|
||||
# The -arch flags for universal builds on OSX
|
||||
UNIVERSAL_ARCH_FLAGS=
|
||||
AC_SUBST(UNIVERSAL_ARCH_FLAGS)
|
||||
@@ -1261,7 +1305,7 @@
|
||||
cur_target='10.5'
|
||||
fi
|
||||
else
|
||||
- if test `/usr/bin/arch` = "i386"; then
|
||||
+ if test "$($ARCH_PROG)" = "i386"; then
|
||||
# On Intel macs default to a deployment
|
||||
# target of 10.4, that's the first OSX
|
||||
# release with Intel support.
|
||||
@@ -1762,7 +1806,7 @@
|
||||
if test "${enable_universalsdk}"; then
|
||||
:
|
||||
else
|
||||
- LIBTOOL_CRUFT="${LIBTOOL_CRUFT} -arch_only `/usr/bin/arch`"
|
||||
+ LIBTOOL_CRUFT="${LIBTOOL_CRUFT} -arch_only $($ARCH_PROG)"
|
||||
fi
|
||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
||||
@@ -1787,7 +1831,7 @@
|
||||
]])],[ac_osx_32bit=yes],[ac_osx_32bit=no],[ac_osx_32bit=yes])
|
||||
|
||||
if test "${ac_osx_32bit}" = "yes"; then
|
||||
- case `/usr/bin/arch` in
|
||||
+ case $($ARCH_PROG) in
|
||||
i386)
|
||||
MACOSX_DEFAULT_ARCH="i386"
|
||||
;;
|
||||
@@ -1799,7 +1843,7 @@
|
||||
;;
|
||||
esac
|
||||
else
|
||||
- case `/usr/bin/arch` in
|
||||
+ case $($ARCH_PROG) in
|
||||
i386)
|
||||
MACOSX_DEFAULT_ARCH="x86_64"
|
||||
;;
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,249 @@
|
|||
diff -urN a-3.3.0/Modules/_multiprocessing/multiprocessing.c b-3.3.0/Modules/_multiprocessing/multiprocessing.c
|
||||
--- a-3.3.0/Modules/_multiprocessing/multiprocessing.c Fri Nov 16 23:02:08 2012
|
||||
+++ b-3.3.0/Modules/_multiprocessing/multiprocessing.c Fri Nov 16 22:55:22 2012
|
||||
@@ -200,12 +200,6 @@
|
||||
Py_DECREF(temp); Py_DECREF(value); return NULL; } \
|
||||
Py_DECREF(value)
|
||||
|
||||
-#ifndef MS_WINDOWS
|
||||
-/* GCC(mingw) 4.4+ require and use posix threads(pthreads-w32)
|
||||
- * Also system may contain installed pthreads-w32.
|
||||
- * As multiprocessing is based on windows methods we must
|
||||
- * comment all those flags
|
||||
- */
|
||||
#if defined(HAVE_SEM_OPEN) && !defined(POSIX_SEMAPHORES_NOT_ENABLED)
|
||||
ADD_FLAG(HAVE_SEM_OPEN);
|
||||
#endif
|
||||
@@ -216,10 +210,8 @@
|
||||
ADD_FLAG(HAVE_BROKEN_SEM_GETVALUE);
|
||||
#endif
|
||||
#ifdef HAVE_BROKEN_SEM_UNLINK
|
||||
-/* FIXME: why use this? Note before was for cygwin and darwin ? */
|
||||
ADD_FLAG(HAVE_BROKEN_SEM_UNLINK);
|
||||
#endif
|
||||
-#endif /*ndef MS_WINDOWS*/
|
||||
|
||||
if (PyModule_AddObject(module, "flags", temp) < 0)
|
||||
return NULL;
|
||||
diff -urN a-3.3.0/Modules/signalmodule.c b-3.3.0/Modules/signalmodule.c
|
||||
--- a-3.3.0/Modules/signalmodule.c Fri Nov 16 23:02:08 2012
|
||||
+++ b-3.3.0/Modules/signalmodule.c Fri Nov 16 22:55:53 2012
|
||||
@@ -5,17 +5,6 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
-#ifdef __MINGW32__
|
||||
-/* GCC 4.4+ (mingw) support posix threads!
|
||||
- Note: macro __MINGW_GCC is defined for GCC 4.4+ but
|
||||
- not for GCC 3.4.5 (last stable from 3.x )
|
||||
- Instead to use __MINGW_GCC we will use more common
|
||||
- __MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
- envirionment is installed posix thread package.
|
||||
- */
|
||||
-# undef HAVE_PTHREAD_KILL
|
||||
-#endif
|
||||
-
|
||||
#if defined(__CYGWIN__)
|
||||
/* Type siginfo_t is different on cygwin. For instance si_band is not
|
||||
* a member of structure, so until fill_siginfo(siginfo_t *si) is
|
||||
diff -urN a-3.3.0/Python/ceval.c b-3.3.0/Python/ceval.c
|
||||
--- a-3.3.0/Python/ceval.c Fri Nov 16 23:02:08 2012
|
||||
+++ b-3.3.0/Python/ceval.c Fri Nov 16 22:55:24 2012
|
||||
@@ -11,17 +11,6 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
-#ifdef __MINGW32__
|
||||
-/* GCC 4.4+ (mingw) support posix threads!
|
||||
- Note: macro __MINGW_GCC is defined for GCC 4.4+ but
|
||||
- not for GCC 3.4.5 (last stable from 3.x )
|
||||
- Instead to use __MINGW_GCC we will use more common
|
||||
- __MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
- envirionment is installed posix thread package.
|
||||
- */
|
||||
-# undef HAVE_PTHREAD_H
|
||||
-#endif
|
||||
-
|
||||
#include "code.h"
|
||||
#include "frameobject.h"
|
||||
#include "opcode.h"
|
||||
diff -urN a-3.3.0/Python/thread.c b-3.3.0/Python/thread.c
|
||||
--- a-3.3.0/Python/thread.c Fri Nov 16 23:02:08 2012
|
||||
+++ b-3.3.0/Python/thread.c Fri Nov 16 22:55:24 2012
|
||||
@@ -7,17 +7,6 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
-#ifdef __MINGW32__
|
||||
-/* GCC 4.4+ (mingw) support posix threads!
|
||||
- Note: macro __MINGW_GCC is defined for GCC 4.4+ but
|
||||
- not for GCC 3.4.5 (last stable from 3.x )
|
||||
- Instead to use __MINGW_GCC we will use more common
|
||||
- __MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
- envirionment is installed posix thread package.
|
||||
- */
|
||||
-# undef HAVE_PTHREAD_H
|
||||
-#endif
|
||||
-
|
||||
#ifndef _POSIX_THREADS
|
||||
/* This means pthreads are not implemented in libc headers, hence the macro
|
||||
not present in unistd.h. But they still can be implemented as an external
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 23:02:08 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 22:55:53 2012
|
||||
@@ -1582,19 +1582,6 @@
|
||||
AC_MSG_RESULT($ac_cv_pthread)
|
||||
fi
|
||||
|
||||
-if test "x$ac_cv_kpthread" = xno && \
|
||||
- test "x$ac_cv_kthread" = xno && \
|
||||
- test "x$ac_cv_pthread" = xno && \
|
||||
- test "x$ac_cv_pthread_is_default" = xno
|
||||
-then
|
||||
- AC_MSG_CHECKING(for NT threads)
|
||||
- AC_CACHE_VAL(ac_cv_ntthread,
|
||||
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[_beginthread(0, 0, 0);]])],
|
||||
- ac_cv_ntthread=yes,
|
||||
- ac_cv_ntthread=no)])
|
||||
- AC_MSG_RESULT([$ac_cv_ntthread])
|
||||
-fi
|
||||
-
|
||||
# If we have set a CC compiler flag for thread support then
|
||||
# check if it works for CXX, too.
|
||||
ac_cv_cxx_thread=no
|
||||
@@ -1615,9 +1602,6 @@
|
||||
then
|
||||
CXX="$CXX -pthread"
|
||||
ac_cv_cxx_thread=yes
|
||||
-elif test "x$ac_cv_ntthread" = xyes
|
||||
-then
|
||||
- ac_cv_cxx_thread=always
|
||||
fi
|
||||
|
||||
if test $ac_cv_cxx_thread = yes
|
||||
@@ -1648,13 +1632,6 @@
|
||||
|
||||
# checks for header files
|
||||
AC_HEADER_STDC
|
||||
-case $host in
|
||||
- *-*-mingw*)
|
||||
- # TODO: not yet
|
||||
- # NOTE: header is defined in Pthreads-w32
|
||||
- ac_cv_header_sched_h=ignore
|
||||
- ;;
|
||||
-esac
|
||||
ac_save_cppflags="$CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
|
||||
AC_CHECK_HEADERS(asm/types.h conio.h curses.h direct.h dlfcn.h errno.h \
|
||||
@@ -2308,20 +2285,11 @@
|
||||
AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX
|
||||
|
||||
# only check for sem_init if thread support is requested
|
||||
-case $host in
|
||||
- *-*-mingw*)
|
||||
- dnl windows build don't use pthread and we don't like configure
|
||||
- dnl to add pthread library if found
|
||||
- :
|
||||
- ;;
|
||||
- *)
|
||||
if test "$with_threads" = "yes" -o -z "$with_threads"; then
|
||||
AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris
|
||||
# posix4 on Solaris 2.6
|
||||
# pthread (first!) on Linux
|
||||
fi
|
||||
- ;;
|
||||
-esac
|
||||
|
||||
# check if we need libintl for locale functions
|
||||
case $host in
|
||||
@@ -2518,13 +2486,6 @@
|
||||
AC_DEFINE(WITH_THREAD)
|
||||
posix_threads=yes
|
||||
THREADOBJ="Python/thread.o"
|
||||
-elif test "x$ac_cv_ntthread" = xyes
|
||||
-then
|
||||
- AC_DEFINE(WITH_THREAD)
|
||||
- posix_threads=no
|
||||
- THREADOBJ="Python/thread.o"
|
||||
- AC_DEFINE(NT_THREADS, 1,
|
||||
- [Define to 1 if you want to use native NT threads])
|
||||
else
|
||||
if test ! -z "$with_threads" -a -d "$with_threads"
|
||||
then LDFLAGS="$LDFLAGS -L$with_threads"
|
||||
@@ -2975,13 +2936,6 @@
|
||||
fi
|
||||
|
||||
# checks for library functions
|
||||
-case $host in
|
||||
- *-*-mingw*)
|
||||
- # TODO: not yet
|
||||
- # NOTE: function is defined in Pthreads-w32
|
||||
- ac_cv_func_sched_setscheduler=ignore
|
||||
- ;;
|
||||
-esac
|
||||
AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \
|
||||
clock confstr ctermid execv faccessat fchmod fchmodat fchown fchownat \
|
||||
fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \
|
||||
@@ -4053,13 +4007,6 @@
|
||||
# the kernel module that provides POSIX semaphores
|
||||
# isn't loaded by default, so an attempt to call
|
||||
# sem_open results in a 'Signal 12' error.
|
||||
-if test $ac_cv_func_sem_open = yes; then
|
||||
-case $host in
|
||||
- *-*-mingw*)
|
||||
- # GCC 4.4+ (mingw) support posix threads(!)
|
||||
- # bug we won't use them on windows platform.
|
||||
- ac_cv_posix_semaphores_enabled=no;;
|
||||
-esac
|
||||
AC_MSG_CHECKING(whether POSIX semaphores are enabled)
|
||||
AC_CACHE_VAL(ac_cv_posix_semaphores_enabled,
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||
@@ -4085,9 +4032,6 @@
|
||||
[ac_cv_posix_semaphores_enabled=yes])
|
||||
)
|
||||
AC_MSG_RESULT($ac_cv_posix_semaphores_enabled)
|
||||
-else
|
||||
- ac_cv_posix_semaphores_enabled=no
|
||||
-fi
|
||||
if test $ac_cv_posix_semaphores_enabled = no
|
||||
then
|
||||
AC_DEFINE(POSIX_SEMAPHORES_NOT_ENABLED, 1,
|
||||
@@ -4096,16 +4040,6 @@
|
||||
|
||||
# Multiprocessing check for broken sem_getvalue
|
||||
AC_MSG_CHECKING(for broken sem_getvalue)
|
||||
-case $host in
|
||||
- *-*-mingw*)
|
||||
- # GCC(mingw) 4.4+ require and use posix threads(pthreads-w32)
|
||||
- # Also system may contain installed pthreads-w32.
|
||||
- # NOTE the test case below don't work for pthreads-w32:
|
||||
- # - SEM_FAILED is not defined;
|
||||
- # - sem_open is stub;
|
||||
- # - sem_getvalue work(!).
|
||||
- ac_cv_broken_sem_getvalue=no;;
|
||||
-esac
|
||||
AC_CACHE_VAL(ac_cv_broken_sem_getvalue,
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||
#include <unistd.h>
|
||||
@@ -5023,7 +4957,7 @@
|
||||
|
||||
# generate output files
|
||||
AC_CONFIG_FILES([setup_info])
|
||||
-AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh)
|
||||
+AC_CONFIG_FILES([Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh])
|
||||
AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix])
|
||||
AC_OUTPUT
|
||||
|
||||
diff -urN a-3.3.0/pyconfig.h.in b-3.3.0/pyconfig.h.in
|
||||
--- a-3.3.0/pyconfig.h.in Fri Nov 16 23:02:08 2012
|
||||
+++ b-3.3.0/pyconfig.h.in Fri Nov 16 22:55:53 2012
|
||||
@@ -1139,9 +1139,6 @@
|
||||
/* Define if mvwdelch in curses.h is an expression. */
|
||||
#undef MVWDELCH_IS_EXPRESSION
|
||||
|
||||
-/* Define to 1 if you want to use native NT threads */
|
||||
-#undef NT_THREADS
|
||||
-
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
|
@ -0,0 +1,227 @@
|
|||
diff -urN a-3.3.0/Python/ceval.c b-3.3.0/Python/ceval.c
|
||||
--- a-3.3.0/Python/ceval.c Fri Nov 16 16:37:52 2012
|
||||
+++ b-3.3.0/Python/ceval.c Fri Nov 16 15:41:35 2012
|
||||
@@ -11,6 +11,17 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
+#ifdef __MINGW32__
|
||||
+/* GCC 4.4+ (mingw) support posix threads!
|
||||
+ Note: macro __MINGW_GCC is defined for GCC 4.4+ but
|
||||
+ not for GCC 3.4.5 (last stable from 3.x )
|
||||
+ Instead to use __MINGW_GCC we will use more common
|
||||
+ __MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
+ envirionment is installed posix thread package.
|
||||
+ */
|
||||
+# undef HAVE_PTHREAD_H
|
||||
+#endif
|
||||
+
|
||||
#include "code.h"
|
||||
#include "frameobject.h"
|
||||
#include "opcode.h"
|
||||
diff -urN a-3.3.0/Python/thread.c b-3.3.0/Python/thread.c
|
||||
--- a-3.3.0/Python/thread.c Fri Nov 16 16:37:14 2012
|
||||
+++ b-3.3.0/Python/thread.c Fri Nov 16 15:41:35 2012
|
||||
@@ -7,6 +7,17 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
+#ifdef __MINGW32__
|
||||
+/* GCC 4.4+ (mingw) support posix threads!
|
||||
+ Note: macro __MINGW_GCC is defined for GCC 4.4+ but
|
||||
+ not for GCC 3.4.5 (last stable from 3.x )
|
||||
+ Instead to use __MINGW_GCC we will use more common
|
||||
+ __MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
+ envirionment is installed posix thread package.
|
||||
+ */
|
||||
+# undef HAVE_PTHREAD_H
|
||||
+#endif
|
||||
+
|
||||
#ifndef _POSIX_THREADS
|
||||
/* This means pthreads are not implemented in libc headers, hence the macro
|
||||
not present in unistd.h. But they still can be implemented as an external
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 16:34:58 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 15:41:27 2012
|
||||
@@ -1582,6 +1582,19 @@
|
||||
AC_MSG_RESULT($ac_cv_pthread)
|
||||
fi
|
||||
|
||||
+if test "x$ac_cv_kpthread" = xno && \
|
||||
+ test "x$ac_cv_kthread" = xno && \
|
||||
+ test "x$ac_cv_pthread" = xno && \
|
||||
+ test "x$ac_cv_pthread_is_default" = xno
|
||||
+then
|
||||
+ AC_MSG_CHECKING(for NT threads)
|
||||
+ AC_CACHE_VAL(ac_cv_ntthread,
|
||||
+ [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[_beginthread(0, 0, 0);]])],
|
||||
+ ac_cv_ntthread=yes,
|
||||
+ ac_cv_ntthread=no)])
|
||||
+ AC_MSG_RESULT([$ac_cv_ntthread])
|
||||
+fi
|
||||
+
|
||||
# If we have set a CC compiler flag for thread support then
|
||||
# check if it works for CXX, too.
|
||||
ac_cv_cxx_thread=no
|
||||
@@ -1602,6 +1615,9 @@
|
||||
then
|
||||
CXX="$CXX -pthread"
|
||||
ac_cv_cxx_thread=yes
|
||||
+elif test "x$ac_cv_ntthread" = xyes
|
||||
+then
|
||||
+ ac_cv_cxx_thread=always
|
||||
fi
|
||||
|
||||
if test $ac_cv_cxx_thread = yes
|
||||
@@ -1632,6 +1648,13 @@
|
||||
|
||||
# checks for header files
|
||||
AC_HEADER_STDC
|
||||
+case $host in
|
||||
+ *-*-mingw*)
|
||||
+ # TODO: not yet
|
||||
+ # NOTE: header is defined in Pthreads-w32
|
||||
+ ac_cv_header_sched_h=ignore
|
||||
+ ;;
|
||||
+esac
|
||||
ac_save_cppflags="$CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
|
||||
AC_CHECK_HEADERS(asm/types.h conio.h curses.h direct.h dlfcn.h errno.h \
|
||||
@@ -2285,11 +2308,20 @@
|
||||
AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX
|
||||
|
||||
# only check for sem_init if thread support is requested
|
||||
+case $host in
|
||||
+ *-*-mingw*)
|
||||
+ dnl windows build don't use pthread and we don't like configure
|
||||
+ dnl to add pthread library if found
|
||||
+ :
|
||||
+ ;;
|
||||
+ *)
|
||||
if test "$with_threads" = "yes" -o -z "$with_threads"; then
|
||||
AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris
|
||||
# posix4 on Solaris 2.6
|
||||
# pthread (first!) on Linux
|
||||
fi
|
||||
+ ;;
|
||||
+esac
|
||||
|
||||
# check if we need libintl for locale functions
|
||||
case $host in
|
||||
@@ -2486,6 +2518,13 @@
|
||||
AC_DEFINE(WITH_THREAD)
|
||||
posix_threads=yes
|
||||
THREADOBJ="Python/thread.o"
|
||||
+elif test "x$ac_cv_ntthread" = xyes
|
||||
+then
|
||||
+ AC_DEFINE(WITH_THREAD)
|
||||
+ posix_threads=no
|
||||
+ THREADOBJ="Python/thread.o"
|
||||
+ AC_DEFINE(NT_THREADS, 1,
|
||||
+ [Define to 1 if you want to use native NT threads])
|
||||
else
|
||||
if test ! -z "$with_threads" -a -d "$with_threads"
|
||||
then LDFLAGS="$LDFLAGS -L$with_threads"
|
||||
@@ -2936,6 +2975,13 @@
|
||||
fi
|
||||
|
||||
# checks for library functions
|
||||
+case $host in
|
||||
+ *-*-mingw*)
|
||||
+ # TODO: not yet
|
||||
+ # NOTE: function is defined in Pthreads-w32
|
||||
+ ac_cv_func_sched_setscheduler=ignore
|
||||
+ ;;
|
||||
+esac
|
||||
AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \
|
||||
clock confstr ctermid execv faccessat fchmod fchmodat fchown fchownat \
|
||||
fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \
|
||||
@@ -4007,6 +4053,13 @@
|
||||
# the kernel module that provides POSIX semaphores
|
||||
# isn't loaded by default, so an attempt to call
|
||||
# sem_open results in a 'Signal 12' error.
|
||||
+if test $ac_cv_func_sem_open = yes; then
|
||||
+case $host in
|
||||
+ *-*-mingw*)
|
||||
+ # GCC 4.4+ (mingw) support posix threads(!)
|
||||
+ # bug we won't use them on windows platform.
|
||||
+ ac_cv_posix_semaphores_enabled=no;;
|
||||
+esac
|
||||
AC_MSG_CHECKING(whether POSIX semaphores are enabled)
|
||||
AC_CACHE_VAL(ac_cv_posix_semaphores_enabled,
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||
@@ -4032,6 +4085,9 @@
|
||||
[ac_cv_posix_semaphores_enabled=yes])
|
||||
)
|
||||
AC_MSG_RESULT($ac_cv_posix_semaphores_enabled)
|
||||
+else
|
||||
+ ac_cv_posix_semaphores_enabled=no
|
||||
+fi
|
||||
if test $ac_cv_posix_semaphores_enabled = no
|
||||
then
|
||||
AC_DEFINE(POSIX_SEMAPHORES_NOT_ENABLED, 1,
|
||||
@@ -4040,6 +4096,16 @@
|
||||
|
||||
# Multiprocessing check for broken sem_getvalue
|
||||
AC_MSG_CHECKING(for broken sem_getvalue)
|
||||
+case $host in
|
||||
+ *-*-mingw*)
|
||||
+ # GCC(mingw) 4.4+ require and use posix threads(pthreads-w32)
|
||||
+ # Also system may contain installed pthreads-w32.
|
||||
+ # NOTE the test case below don't work for pthreads-w32:
|
||||
+ # - SEM_FAILED is not defined;
|
||||
+ # - sem_open is stub;
|
||||
+ # - sem_getvalue work(!).
|
||||
+ ac_cv_broken_sem_getvalue=no;;
|
||||
+esac
|
||||
AC_CACHE_VAL(ac_cv_broken_sem_getvalue,
|
||||
AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||
#include <unistd.h>
|
||||
diff -urN a-3.3.0/Modules/_multiprocessing/multiprocessing.c b-3.3.0/Modules/_multiprocessing/multiprocessing.c
|
||||
--- a-3.3.0/Modules/_multiprocessing/multiprocessing.c Fri Nov 16 23:42:12 2012
|
||||
+++ b-3.3.0/Modules/_multiprocessing/multiprocessing.c Fri Nov 16 23:52:12 2012
|
||||
@@ -200,6 +200,12 @@
|
||||
Py_DECREF(temp); Py_DECREF(value); return NULL; } \
|
||||
Py_DECREF(value)
|
||||
|
||||
+#ifndef MS_WINDOWS
|
||||
+/* GCC(mingw) 4.4+ require and use posix threads(pthreads-w32)
|
||||
+ * Also system may contain installed pthreads-w32.
|
||||
+ * As multiprocessing is based on windows methods we must
|
||||
+ * comment all those flags
|
||||
+ */
|
||||
#if defined(HAVE_SEM_OPEN) && !defined(POSIX_SEMAPHORES_NOT_ENABLED)
|
||||
ADD_FLAG(HAVE_SEM_OPEN);
|
||||
#endif
|
||||
@@ -210,8 +216,10 @@
|
||||
ADD_FLAG(HAVE_BROKEN_SEM_GETVALUE);
|
||||
#endif
|
||||
#ifdef HAVE_BROKEN_SEM_UNLINK
|
||||
+/* FIXME: why use this? Note before was for cygwin and darwin ? */
|
||||
ADD_FLAG(HAVE_BROKEN_SEM_UNLINK);
|
||||
#endif
|
||||
+#endif /*ndef MS_WINDOWS*/
|
||||
|
||||
if (PyModule_AddObject(module, "flags", temp) < 0)
|
||||
return NULL;
|
||||
diff -urN a-3.3.0/Modules/signalmodule.c b-3.3.0/Modules/signalmodule.c
|
||||
--- a-3.3.0/Modules/signalmodule.c Fri Nov 16 23:42:12 2012
|
||||
+++ b-3.3.0/Modules/signalmodule.c Fri Nov 16 23:52:12 2012
|
||||
@@ -5,6 +5,17 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
+#ifdef __MINGW32__
|
||||
+/* GCC 4.4+ (mingw) support posix threads!
|
||||
+ Note: macro __MINGW_GCC is defined for GCC 4.4+ but
|
||||
+ not for GCC 3.4.5 (last stable from 3.x )
|
||||
+ Instead to use __MINGW_GCC we will use more common
|
||||
+ __MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
+ envirionment is installed posix thread package.
|
||||
+ */
|
||||
+# undef HAVE_PTHREAD_KILL
|
||||
+#endif
|
||||
+
|
||||
#if defined(__CYGWIN__)
|
||||
/* Type siginfo_t is different on cygwin. For instance si_band is not
|
||||
* a member of structure, so until fill_siginfo(siginfo_t *si) is
|
|
@ -0,0 +1,107 @@
|
|||
diff -urN a-3.3.0/Python/condvar.h b-3.3.0/Python/condvar.h
|
||||
--- a-3.3.0/Python/condvar.h Fri Nov 16 15:41:35 2012
|
||||
+++ b-3.3.0/Python/condvar.h Fri Nov 16 17:11:23 2012
|
||||
@@ -42,6 +42,12 @@
|
||||
|
||||
#include "Python.h"
|
||||
|
||||
+#ifdef __MINGW32__
|
||||
+# if !defined(HAVE_PTHREAD_H) || defined(NT_THREADS)
|
||||
+# undef _POSIX_THREADS
|
||||
+# endif
|
||||
+#endif
|
||||
+
|
||||
#ifndef _POSIX_THREADS
|
||||
/* This means pthreads are not implemented in libc headers, hence the macro
|
||||
not present in unistd.h. But they still can be implemented as an external
|
||||
diff -urN a-3.3.0/Python/thread.c b-3.3.0/Python/thread.c
|
||||
--- a-3.3.0/Python/thread.c Fri Nov 16 15:41:35 2012
|
||||
+++ b-3.3.0/Python/thread.c Fri Nov 16 17:11:23 2012
|
||||
@@ -15,7 +15,9 @@
|
||||
__MINGW32__ to prevent case when in GCC 3.4.5 build
|
||||
envirionment is installed posix thread package.
|
||||
*/
|
||||
-# undef HAVE_PTHREAD_H
|
||||
+# if !defined(HAVE_PTHREAD_H) || defined(NT_THREADS)
|
||||
+# undef _POSIX_THREADS
|
||||
+# endif
|
||||
#endif
|
||||
|
||||
#ifndef _POSIX_THREADS
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 15:41:27 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 17:11:23 2012
|
||||
@@ -1468,6 +1468,16 @@
|
||||
CFLAGS=$save_CFLAGS
|
||||
fi
|
||||
|
||||
+AC_MSG_CHECKING(for NT threads)
|
||||
+AC_CACHE_VAL(ac_cv_ntthread,
|
||||
+[AC_LINK_IFELSE([
|
||||
+ AC_LANG_PROGRAM([], [_beginthread(0, 0, 0);])],
|
||||
+ac_cv_ntthread=yes,
|
||||
+ac_cv_ntthread=no)])
|
||||
+AC_MSG_RESULT([$ac_cv_ntthread])
|
||||
+
|
||||
+if test $ac_cv_ntthread = no
|
||||
+then
|
||||
# On some compilers, pthreads are available without further options
|
||||
# (e.g. MacOS X). On some of these systems, the compiler will not
|
||||
# complain if unaccepted options are passed (e.g. gcc on Mac OS X).
|
||||
@@ -1582,17 +1592,6 @@
|
||||
AC_MSG_RESULT($ac_cv_pthread)
|
||||
fi
|
||||
|
||||
-if test "x$ac_cv_kpthread" = xno && \
|
||||
- test "x$ac_cv_kthread" = xno && \
|
||||
- test "x$ac_cv_pthread" = xno && \
|
||||
- test "x$ac_cv_pthread_is_default" = xno
|
||||
-then
|
||||
- AC_MSG_CHECKING(for NT threads)
|
||||
- AC_CACHE_VAL(ac_cv_ntthread,
|
||||
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[_beginthread(0, 0, 0);]])],
|
||||
- ac_cv_ntthread=yes,
|
||||
- ac_cv_ntthread=no)])
|
||||
- AC_MSG_RESULT([$ac_cv_ntthread])
|
||||
fi
|
||||
|
||||
# If we have set a CC compiler flag for thread support then
|
||||
@@ -1659,7 +1658,7 @@
|
||||
CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
|
||||
AC_CHECK_HEADERS(asm/types.h conio.h curses.h direct.h dlfcn.h errno.h \
|
||||
fcntl.h grp.h \
|
||||
-ieeefp.h io.h langinfo.h libintl.h ncurses.h process.h pthread.h \
|
||||
+ieeefp.h io.h langinfo.h libintl.h ncurses.h process.h \
|
||||
sched.h shadow.h signal.h stdint.h stropts.h termios.h \
|
||||
unistd.h utime.h \
|
||||
poll.h sys/devpoll.h sys/epoll.h sys/poll.h \
|
||||
@@ -1691,6 +1690,14 @@
|
||||
])
|
||||
|
||||
|
||||
+# If using nt threads, don't look for pthread.h or thread.h
|
||||
+if test "x$ac_cv_ntthread" = xno ; then
|
||||
+AC_HEADER_STDC
|
||||
+AC_CHECK_HEADERS(pthread.h thread.h)
|
||||
+AC_HEADER_DIRENT
|
||||
+AC_HEADER_MAJOR
|
||||
+fi
|
||||
+
|
||||
# On Solaris, term.h requires curses.h
|
||||
AC_CHECK_HEADERS(term.h,,,[
|
||||
#ifdef HAVE_CURSES_H
|
||||
@@ -2316,9 +2323,11 @@
|
||||
;;
|
||||
*)
|
||||
if test "$with_threads" = "yes" -o -z "$with_threads"; then
|
||||
- AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris
|
||||
- # posix4 on Solaris 2.6
|
||||
- # pthread (first!) on Linux
|
||||
+ if test "$ac_cv_ntthread" = "no" -o -z "$ac_cv_ntthread"; then
|
||||
+ AC_SEARCH_LIBS(sem_init, pthread rt posix4) # 'Real Time' functions on Solaris
|
||||
+ # posix4 on Solaris 2.6
|
||||
+ # pthread (first!) on Linux
|
||||
+ fi
|
||||
fi
|
||||
;;
|
||||
esac
|
|
@ -0,0 +1,248 @@
|
|||
diff -urN a-3.3.0/Lib/ctypes/test/test_as_parameter.py b-3.3.0/Lib/ctypes/test/test_as_parameter.py
|
||||
--- a-3.3.0/Lib/ctypes/test/test_as_parameter.py Fri Nov 16 22:55:53 2012
|
||||
+++ b-3.3.0/Lib/ctypes/test/test_as_parameter.py Fri Nov 16 23:20:49 2012
|
||||
@@ -1,7 +1,6 @@
|
||||
import unittest
|
||||
from ctypes import *
|
||||
import _ctypes_test
|
||||
-import sys
|
||||
|
||||
dll = CDLL(_ctypes_test.__file__)
|
||||
|
||||
@@ -172,10 +171,6 @@
|
||||
s2h = dll.ret_2h_func(self.wrap(inp))
|
||||
self.assertEqual((s2h.x, s2h.y), (99*2, 88*3))
|
||||
|
||||
- # This is known cdecl incompatibility between GCC
|
||||
- # and MSVC. It is addressed in GCC issue #36834.
|
||||
- # Python libffi detect it and complain.
|
||||
- @unittest.skipIf(sys.platform == "win32" and sys.version.find("GCC") >= 0, 'XFAIL GCC(mingw)')
|
||||
def test_struct_return_8H(self):
|
||||
class S8I(Structure):
|
||||
_fields_ = [("a", c_int),
|
||||
diff -urN a-3.3.0/Lib/ctypes/test/test_functions.py b-3.3.0/Lib/ctypes/test/test_functions.py
|
||||
--- a-3.3.0/Lib/ctypes/test/test_functions.py Fri Nov 16 22:55:53 2012
|
||||
+++ b-3.3.0/Lib/ctypes/test/test_functions.py Fri Nov 16 23:21:17 2012
|
||||
@@ -359,10 +359,6 @@
|
||||
s2h = windll.s_ret_2h_func(S2H(99, 88))
|
||||
self.assertEqual((s2h.x, s2h.y), (99*2, 88*3))
|
||||
|
||||
- # This is known cdecl incompatibility between GCC
|
||||
- # and MSVC. It is addressed in GCC issue #36834.
|
||||
- # Python libffi detect it and complain.
|
||||
- @unittest.skipIf(sys.platform == "win32" and sys.version.find("GCC") >= 0, 'XFAIL GCC(mingw)')
|
||||
def test_struct_return_8H(self):
|
||||
class S8I(Structure):
|
||||
_fields_ = [("a", c_int),
|
||||
diff -urN a-3.3.0/Modules/_ctypes/libffi_msvc/win32.S b-3.3.0/Modules/_ctypes/libffi_msvc/win32.S
|
||||
--- a-3.3.0/Modules/_ctypes/libffi_msvc/win32.S Fri Nov 16 22:55:53 2012
|
||||
+++ b-3.3.0/Modules/_ctypes/libffi_msvc/win32.S Thu Jan 1 00:00:00 1970
|
||||
@@ -1,154 +0,0 @@
|
||||
-/* -----------------------------------------------------------------------
|
||||
- win32.S - Copyright (c) 1996, 1998, 2001, 2002 Red Hat, Inc.
|
||||
- Copyright (c) 2001 John Beniton
|
||||
- Copyright (c) 2002 Ranjit Mathew
|
||||
-
|
||||
-
|
||||
- X86 Foreign Function Interface
|
||||
-
|
||||
- Permission is hereby granted, free of charge, to any person obtaining
|
||||
- a copy of this software and associated documentation files (the
|
||||
- ``Software''), to deal in the Software without restriction, including
|
||||
- without limitation the rights to use, copy, modify, merge, publish,
|
||||
- distribute, sublicense, and/or sell copies of the Software, and to
|
||||
- permit persons to whom the Software is furnished to do so, subject to
|
||||
- the following conditions:
|
||||
-
|
||||
- The above copyright notice and this permission notice shall be included
|
||||
- in all copies or substantial portions of the Software.
|
||||
-
|
||||
- THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
- IN NO EVENT SHALL CYGNUS SOLUTIONS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
- OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
- OTHER DEALINGS IN THE SOFTWARE.
|
||||
- ----------------------------------------------------------------------- */
|
||||
-
|
||||
-#define LIBFFI_ASM
|
||||
-#include <fficonfig.h>
|
||||
-#include <ffi.h>
|
||||
-
|
||||
-.text
|
||||
-
|
||||
-.globl ffi_prep_args
|
||||
-
|
||||
- # This assumes we are using gas.
|
||||
- .balign 16
|
||||
-.globl _ffi_call_x86
|
||||
-
|
||||
-_ffi_call_x86:
|
||||
- pushl %ebp
|
||||
- movl %esp,%ebp
|
||||
-
|
||||
- #THe: save previous %esi, and store the current stack pointer in %esi
|
||||
- pushl %esi
|
||||
- movl %esp,%esi
|
||||
-
|
||||
- # Make room for all of the new args.
|
||||
- movl 16(%ebp),%ecx
|
||||
- subl %ecx,%esp
|
||||
-
|
||||
- movl %esp,%eax
|
||||
-
|
||||
- # Place all of the ffi_prep_args in position
|
||||
- pushl 12(%ebp)
|
||||
- pushl %eax
|
||||
- call *8(%ebp)
|
||||
-
|
||||
- # Return stack to previous state and call the function
|
||||
- addl $8,%esp
|
||||
-
|
||||
- # FIXME: Align the stack to a 128-bit boundary to avoid
|
||||
- # potential performance hits.
|
||||
-
|
||||
- call *28(%ebp)
|
||||
-
|
||||
- # Load ecif->cif->abi
|
||||
-#masm# mov ecx, [ebp + 12]
|
||||
- movl 12(%ebp),%ecx
|
||||
-#masm# mov ecx, [ecx]ecif.cif
|
||||
- movl (%ecx),%ecx
|
||||
-#masm# mov ecx, [ecx]ecif.cif.abi
|
||||
- movl (%ecx),%ecx
|
||||
-#masm# cmp ecx, FFI_STDCALL
|
||||
- cmpl $2,%ecx
|
||||
- je noclean
|
||||
-
|
||||
- # STDCALL: Remove the space we pushed for the args
|
||||
- movl 16(%ebp),%ecx
|
||||
- addl %ecx,%esp
|
||||
-
|
||||
- # CDECL: Caller has already cleaned the stack
|
||||
-noclean:
|
||||
- # Check that esp has the same value as before!
|
||||
- sub %esp,%esi # calculate stack pointer difference
|
||||
-
|
||||
- # Load %ecx with the return type code
|
||||
- movl 20(%ebp),%ecx
|
||||
-
|
||||
- # If the return value pointer is NULL, assume no return value.
|
||||
- cmpl $0,24(%ebp)
|
||||
- jne retint
|
||||
-
|
||||
- # Even if there is no space for the return value, we are
|
||||
- # obliged to handle floating-point values.
|
||||
- cmpl $FFI_TYPE_FLOAT,%ecx
|
||||
- jne noretval
|
||||
- fstp %st(0)
|
||||
-
|
||||
- jmp epilogue
|
||||
-
|
||||
-retint:
|
||||
- cmpl $FFI_TYPE_INT,%ecx
|
||||
- jne retfloat
|
||||
- # Load %ecx with the pointer to storage for the return value
|
||||
- movl 24(%ebp),%ecx
|
||||
- movl %eax,0(%ecx)
|
||||
- jmp epilogue
|
||||
-
|
||||
-retfloat:
|
||||
- cmpl $FFI_TYPE_FLOAT,%ecx
|
||||
- jne retdouble
|
||||
- # Load %ecx with the pointer to storage for the return value
|
||||
- movl 24(%ebp),%ecx
|
||||
- fstps (%ecx)
|
||||
- jmp epilogue
|
||||
-
|
||||
-retdouble:
|
||||
- cmpl $FFI_TYPE_DOUBLE,%ecx
|
||||
- jne retlongdouble
|
||||
- # Load %ecx with the pointer to storage for the return value
|
||||
- movl 24(%ebp),%ecx
|
||||
- fstpl (%ecx)
|
||||
- jmp epilogue
|
||||
-
|
||||
-retlongdouble:
|
||||
- cmpl $FFI_TYPE_LONGDOUBLE,%ecx
|
||||
- jne retint64
|
||||
- # Load %ecx with the pointer to storage for the return value
|
||||
- movl 24(%ebp),%ecx
|
||||
- fstpt (%ecx)
|
||||
- jmp epilogue
|
||||
-
|
||||
-retint64:
|
||||
- cmpl $FFI_TYPE_SINT64,%ecx
|
||||
- jne retstruct
|
||||
- # Load %ecx with the pointer to storage for the return value
|
||||
- movl 24(%ebp),%ecx
|
||||
- movl %eax,0(%ecx)
|
||||
- movl %edx,4(%ecx)
|
||||
-
|
||||
-retstruct:
|
||||
- # Nothing to do!
|
||||
-
|
||||
-noretval:
|
||||
-epilogue:
|
||||
- movl %esi,%eax # return the stack pointer detlta in %eax
|
||||
- popl %esi # restore previous %esi
|
||||
- movl %ebp,%esp
|
||||
- popl %ebp
|
||||
- ret
|
||||
-
|
||||
-.ffi_call_x86_end:
|
||||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Fri Nov 16 23:10:10 2012
|
||||
+++ b-3.3.0/setup.py Fri Nov 16 23:26:44 2012
|
||||
@@ -1903,38 +1903,6 @@
|
||||
return True
|
||||
|
||||
def configure_ctypes(self, ext):
|
||||
- if host_platform in ['mingw', 'win32']:
|
||||
- # win32 platform use own sources and includes
|
||||
- # from Modules/_ctypes/libffi_msvc/
|
||||
- srcdir = sysconfig.get_config_var('srcdir')
|
||||
-
|
||||
- ffi_srcdir = os.path.abspath(os.path.join(srcdir, 'Modules',
|
||||
- '_ctypes'))
|
||||
- sources = [os.path.join(ffi_srcdir, p)
|
||||
- for p in ['malloc_closure.c',
|
||||
- ]]
|
||||
- ext.sources.extend(sources)
|
||||
-
|
||||
- ffi_srcdir = os.path.abspath(os.path.join(srcdir, 'Modules',
|
||||
- '_ctypes', 'libffi_msvc'))
|
||||
- #FIXME: _ctypes/libffi_msvc/win64.asm ?
|
||||
- sources = [os.path.join(ffi_srcdir, p)
|
||||
- for p in ['ffi.c',
|
||||
- 'prep_cif.c',
|
||||
- 'win32.S',
|
||||
- ]]
|
||||
- # NOTE: issue2942 don't resolve problem with assembler code.
|
||||
- # It seems to me that python refuse to build an extension
|
||||
- # if exist a source with unknown suffix.
|
||||
- self.compiler.src_extensions.append('.s')
|
||||
- self.compiler.src_extensions.append('.S')
|
||||
- ext.include_dirs.append(ffi_srcdir)
|
||||
- ext.sources.extend(sources)
|
||||
- ext.libraries.extend(['ole32', 'oleaut32', 'uuid'])
|
||||
- #AdditionalOptions="/EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE"
|
||||
- ext.export_symbols.extend(['DllGetClassObject PRIVATE',
|
||||
- 'DllCanUnloadNow PRIVATE'])
|
||||
- return True
|
||||
if not self.use_system_libffi:
|
||||
if host_platform == 'darwin':
|
||||
return self.configure_ctypes_darwin(ext)
|
||||
@@ -1983,11 +1951,6 @@
|
||||
fficonfig['ffi_sources'])
|
||||
ext.include_dirs.extend(include_dirs)
|
||||
ext.extra_compile_args.extend(extra_compile_args)
|
||||
- if host_platform in ['mingw', 'win32']:
|
||||
- ext.libraries.extend(['ole32', 'oleaut32', 'uuid'])
|
||||
- #AdditionalOptions="/EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE"
|
||||
- ext.export_symbols.extend(['DllGetClassObject PRIVATE',
|
||||
- 'DllCanUnloadNow PRIVATE'])
|
||||
return True
|
||||
|
||||
def detect_ctypes(self, inc_dirs, lib_dirs):
|
|
@ -0,0 +1,218 @@
|
|||
diff -urN a-3.3.0/Lib/ctypes/test/test_as_parameter.py b-3.3.0/Lib/ctypes/test/test_as_parameter.py
|
||||
--- a-3.3.0/Lib/ctypes/test/test_as_parameter.py Fri Nov 16 23:45:23 2012
|
||||
+++ b-3.3.0/Lib/ctypes/test/test_as_parameter.py Fri Nov 16 23:52:12 2012
|
||||
@@ -1,6 +1,7 @@
|
||||
import unittest
|
||||
from ctypes import *
|
||||
import _ctypes_test
|
||||
+import sys
|
||||
|
||||
dll = CDLL(_ctypes_test.__file__)
|
||||
|
||||
@@ -171,6 +172,10 @@
|
||||
s2h = dll.ret_2h_func(self.wrap(inp))
|
||||
self.assertEqual((s2h.x, s2h.y), (99*2, 88*3))
|
||||
|
||||
+ # This is known cdecl incompatibility between GCC
|
||||
+ # and MSVC. It is addressed in GCC issue #36834.
|
||||
+ # Python libffi detect it and complain.
|
||||
+ @unittest.skipIf(sys.platform == "win32" and sys.version.find("GCC") >= 0, 'XFAIL GCC(mingw)')
|
||||
def test_struct_return_8H(self):
|
||||
class S8I(Structure):
|
||||
_fields_ = [("a", c_int),
|
||||
diff -urN a-3.3.0/Lib/ctypes/test/test_functions.py b-3.3.0/Lib/ctypes/test/test_functions.py
|
||||
--- a-3.3.0/Lib/ctypes/test/test_functions.py Fri Nov 16 23:45:23 2012
|
||||
+++ b-3.3.0/Lib/ctypes/test/test_functions.py Fri Nov 16 23:52:12 2012
|
||||
@@ -359,6 +359,10 @@
|
||||
s2h = windll.s_ret_2h_func(S2H(99, 88))
|
||||
self.assertEqual((s2h.x, s2h.y), (99*2, 88*3))
|
||||
|
||||
+ # This is known cdecl incompatibility between GCC
|
||||
+ # and MSVC. It is addressed in GCC issue #36834.
|
||||
+ # Python libffi detect it and complain.
|
||||
+ @unittest.skipIf(sys.platform == "win32" and sys.version.find("GCC") >= 0, 'XFAIL GCC(mingw)')
|
||||
def test_struct_return_8H(self):
|
||||
class S8I(Structure):
|
||||
_fields_ = [("a", c_int),
|
||||
diff -urN a-3.3.0/Lib/distutils/sysconfig.py.rej b-3.3.0/Lib/distutils/sysconfig.py.rej
|
||||
--- a-3.3.0/Lib/distutils/sysconfig.py.rej Thu Jan 1 00:00:00 1970
|
||||
+++ b-3.3.0/Lib/distutils/sysconfig.py.rej Fri Nov 16 23:52:12 2012
|
||||
@@ -0,0 +1,17 @@
|
||||
+***************
|
||||
+*** 553,559 ****
|
||||
+ # Normally it is relative to the build directory. However, during
|
||||
+ # testing, for example, we might be running a non-installed python
|
||||
+ # from a different directory.
|
||||
+- if python_build and os.name == "posix":
|
||||
+ base = project_base
|
||||
+ if (not os.path.isabs(_config_vars['srcdir']) and
|
||||
+ base != os.getcwd()):
|
||||
+--- 575,581 ----
|
||||
+ # Normally it is relative to the build directory. However, during
|
||||
+ # testing, for example, we might be running a non-installed python
|
||||
+ # from a different directory.
|
||||
++ if python_build and posix_build:
|
||||
+ base = project_base
|
||||
+ if (not os.path.isabs(_config_vars['srcdir']) and
|
||||
+ base != os.getcwd()):
|
||||
diff -urN a-3.3.0/Makefile.pre.in b-3.3.0/Makefile.pre.in
|
||||
--- a-3.3.0/Makefile.pre.in Fri Nov 16 23:41:50 2012
|
||||
+++ b-3.3.0/Makefile.pre.in Fri Nov 16 23:54:02 2012
|
||||
@@ -474,6 +474,10 @@
|
||||
$(RUNSHARED) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars
|
||||
|
||||
# Build the shared modules
|
||||
+# The current py-code in case of cross-compilation (mingw on linux) will create
|
||||
+# modules with .so suffix and SO environment variable cannot help as
|
||||
+# the modules are linked with gcc instead *-mingw*-gcc.
|
||||
+# FIXME: in cross-compilation environment how to select correct compiler/linker ?
|
||||
sharedmods: $(BUILDPYTHON) $(SYSCONFIGDATA)
|
||||
case $$MAKEFLAGS in *s*) quiet=-q; esac; \
|
||||
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||
diff -urN a-3.3.0/Modules/_ctypes/callproc.c b-3.3.0/Modules/_ctypes/callproc.c
|
||||
--- a-3.3.0/Modules/_ctypes/callproc.c Fri Nov 16 23:41:50 2012
|
||||
+++ b-3.3.0/Modules/_ctypes/callproc.c Fri Nov 16 23:52:13 2012
|
||||
@@ -795,8 +795,10 @@
|
||||
#ifndef DONT_USE_SEH
|
||||
__try {
|
||||
#endif
|
||||
+#ifndef __MINGW32__
|
||||
delta =
|
||||
#endif
|
||||
+#endif
|
||||
ffi_call(&cif, (void *)pProc, resmem, avalues);
|
||||
#ifdef MS_WIN32
|
||||
#ifndef DONT_USE_SEH
|
||||
@@ -829,6 +831,7 @@
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
+#ifndef __MINGW32__
|
||||
#ifdef MS_WIN64
|
||||
if (delta != 0) {
|
||||
PyErr_Format(PyExc_RuntimeError,
|
||||
@@ -857,6 +860,7 @@
|
||||
delta);
|
||||
return -1;
|
||||
}
|
||||
+#endif
|
||||
#endif
|
||||
#endif
|
||||
if ((flags & FUNCFLAG_PYTHONAPI) && PyErr_Occurred())
|
||||
diff -urN a-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in b-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in
|
||||
--- a-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in Fri Nov 16 23:41:50 2012
|
||||
+++ b-3.3.0/Modules/_ctypes/libffi/fficonfig.py.in Fri Nov 16 23:52:13 2012
|
||||
@@ -1,7 +1,6 @@
|
||||
ffi_sources = """
|
||||
src/prep_cif.c
|
||||
src/closures.c
|
||||
-src/dlmalloc.c
|
||||
""".split()
|
||||
|
||||
ffi_platforms = {
|
||||
@@ -23,6 +22,7 @@
|
||||
'FRV': ['src/frv/eabi.S', 'src/frv/ffi.c'],
|
||||
'S390': ['src/s390/sysv.S', 'src/s390/ffi.c'],
|
||||
'X86_64': ['src/x86/ffi64.c', 'src/x86/unix64.S', 'src/x86/ffi.c', 'src/x86/sysv.S'],
|
||||
+ 'X86_WIN64': ['src/x86/ffi.c', 'src/x86/win64.S'],
|
||||
'SH': ['src/sh/sysv.S', 'src/sh/ffi.c'],
|
||||
'SH64': ['src/sh64/sysv.S', 'src/sh64/ffi.c'],
|
||||
'PA': ['src/pa/linux.S', 'src/pa/ffi.c'],
|
||||
@@ -30,6 +30,9 @@
|
||||
'PA_HPUX': ['src/pa/hpux32.S', 'src/pa/ffi.c'],
|
||||
}
|
||||
|
||||
+ffi_target = '@TARGET@'
|
||||
+if ffi_target not in ['X86_WIN32', 'X86_WIN64']:
|
||||
+ ffi_sources += 'src/dlmalloc.c'
|
||||
ffi_sources += ffi_platforms['@TARGET@']
|
||||
|
||||
ffi_cflags = '@CFLAGS@'
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 23:43:34 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 23:52:13 2012
|
||||
@@ -2395,14 +2395,32 @@
|
||||
[],
|
||||
[with_system_ffi="no"])
|
||||
|
||||
-if test "$with_system_ffi" = "yes" && test -n "$PKG_CONFIG"; then
|
||||
- LIBFFI_INCLUDEDIR="`"$PKG_CONFIG" libffi --cflags-only-I 2>/dev/null | sed -e 's/^-I//;s/ *$//'`"
|
||||
+if test "$with_system_ffi" = "yes"; then
|
||||
+ LIBFFI_INCLUDEDIR="$LIBFFI_INCLUDEDIR"
|
||||
+fi
|
||||
+AC_MSG_RESULT($with_system_ffi)
|
||||
+
|
||||
+ac_previous_cppflags=$CPPFLAGS
|
||||
+CPPFLAGS="-I$LIBFFI_INCLUDEDIR"
|
||||
+ac_previous_ldflags=$LDFLAGS
|
||||
+# check for ffi.h
|
||||
+AC_CHECK_HEADER(ffi.h, [
|
||||
+ AC_DEFINE(WITH_SYSTEM_LIBFFI, 1,
|
||||
+ [Define if we have external libffi.])
|
||||
+ ffi_h="yes"
|
||||
+],
|
||||
+ffi_h="no"
|
||||
+)
|
||||
+if test "$ffi_h" = "yes"; then
|
||||
+ LIBFFI_INCLUDEDIR="$LIBFFI_INCLUDEDIR"
|
||||
else
|
||||
LIBFFI_INCLUDEDIR=""
|
||||
fi
|
||||
+CPPFLAGS=$ac_previous_cppflags
|
||||
+LDFLAGS=$ac_previous_ldflags
|
||||
AC_SUBST(LIBFFI_INCLUDEDIR)
|
||||
|
||||
-AC_MSG_RESULT($with_system_ffi)
|
||||
+
|
||||
|
||||
# Check for use of the system libmpdec library
|
||||
AC_MSG_CHECKING(for --with-system-libmpdec)
|
||||
diff -urN a-3.3.0/pyconfig.h.in b-3.3.0/pyconfig.h.in
|
||||
--- a-3.3.0/pyconfig.h.in Fri Nov 16 23:42:12 2012
|
||||
+++ b-3.3.0/pyconfig.h.in Fri Nov 16 23:54:46 2012
|
||||
@@ -1139,6 +1139,9 @@
|
||||
/* Define if mvwdelch in curses.h is an expression. */
|
||||
#undef MVWDELCH_IS_EXPRESSION
|
||||
|
||||
+/* Define to 1 if you want to use native NT threads */
|
||||
+#undef NT_THREADS
|
||||
+
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
||||
@@ -1314,6 +1317,9 @@
|
||||
|
||||
/* Define if you want to compile in Python-specific mallocs */
|
||||
#undef WITH_PYMALLOC
|
||||
+
|
||||
+/* Define if we have external libffi. */
|
||||
+#undef WITH_SYSTEM_LIBFFI
|
||||
|
||||
/* Define if you want to compile in rudimentary thread support */
|
||||
#undef WITH_THREAD
|
||||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Fri Nov 16 23:45:23 2012
|
||||
+++ b-3.3.0/setup.py Fri Nov 16 23:52:13 2012
|
||||
@@ -1903,6 +1903,11 @@
|
||||
return True
|
||||
|
||||
def configure_ctypes(self, ext):
|
||||
+ if host_platform in ['mingw', 'win32']:
|
||||
+ ext.libraries.extend(['ole32', 'oleaut32', 'uuid'])
|
||||
+ #AdditionalOptions="/EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE"
|
||||
+ ext.export_symbols.extend(['DllGetClassObject PRIVATE',
|
||||
+ 'DllCanUnloadNow PRIVATE'])
|
||||
if not self.use_system_libffi:
|
||||
if host_platform == 'darwin':
|
||||
return self.configure_ctypes_darwin(ext)
|
||||
@@ -1925,6 +1930,10 @@
|
||||
config_args = [arg for arg in sysconfig.get_config_var("CONFIG_ARGS").split()
|
||||
if (('--host=' in arg) or ('--build=' in arg))]
|
||||
|
||||
+ if host_platform in ['mingw', 'win32']:
|
||||
+ table = str.maketrans('\\', '/')
|
||||
+ ffi_builddir = ffi_builddir.translate(table)
|
||||
+ ffi_srcdir = ffi_srcdir.translate(table)
|
||||
# Pass empty CFLAGS because we'll just append the resulting
|
||||
# CFLAGS to Python's; -g or -O2 is to be avoided.
|
||||
cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \
|
|
@ -0,0 +1,452 @@
|
|||
diff -urN a-3.3.0/Include/fileutils.h b-3.3.0/Include/fileutils.h
|
||||
--- a-3.3.0/Include/fileutils.h Sat Sep 29 09:00:25 2012
|
||||
+++ b-3.3.0/Include/fileutils.h Sat Nov 17 00:16:19 2012
|
||||
@@ -15,7 +15,7 @@
|
||||
const wchar_t *text,
|
||||
size_t *error_pos);
|
||||
|
||||
-#if defined(HAVE_STAT) && !defined(MS_WINDOWS)
|
||||
+#if defined(HAVE_STAT) && (!defined(MS_WINDOWS) || defined(__MINGW32__))
|
||||
PyAPI_FUNC(int) _Py_wstat(
|
||||
const wchar_t* path,
|
||||
struct stat *buf);
|
||||
diff -urN a-3.3.0/Include/osdefs.h b-3.3.0/Include/osdefs.h
|
||||
--- a-3.3.0/Include/osdefs.h Sat Nov 17 00:15:48 2012
|
||||
+++ b-3.3.0/Include/osdefs.h Sat Nov 17 00:16:19 2012
|
||||
@@ -10,7 +10,7 @@
|
||||
/* Mod by chrish: QNX has WATCOM, but isn't DOS */
|
||||
#if !defined(__QNX__)
|
||||
#if defined(MS_WINDOWS) || defined(__BORLANDC__) || defined(__WATCOMC__) || defined(__DJGPP__) || defined(PYOS_OS2)
|
||||
-#if defined(PYOS_OS2) && defined(PYCC_GCC)
|
||||
+#if (defined(PYOS_OS2) && defined(PYCC_GCC)) || defined(__MINGW32__)
|
||||
#define MAXPATHLEN 260
|
||||
#define SEP L'/'
|
||||
#define ALTSEP L'\\'
|
||||
@@ -22,6 +22,7 @@
|
||||
#endif
|
||||
#endif
|
||||
#define DELIM L';'
|
||||
+#define DELIMSTR ";"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -42,6 +43,7 @@
|
||||
/* Search path entry delimiter */
|
||||
#ifndef DELIM
|
||||
#define DELIM L':'
|
||||
+#define DELIMSTR ":"
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
diff -urN a-3.3.0/Lib/plat-generic/regen b-3.3.0/Lib/plat-generic/regen
|
||||
--- a-3.3.0/Lib/plat-generic/regen Sat Sep 29 09:00:31 2012
|
||||
+++ b-3.3.0/Lib/plat-generic/regen Sat Nov 17 00:16:19 2012
|
||||
@@ -1,3 +1,9 @@
|
||||
#! /bin/sh
|
||||
set -v
|
||||
-python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/netinet/in.h
|
||||
+if [ -n "$1" ]; then
|
||||
+ CCINSTALL=$($1 -print-search-dirs | head -1 | cut -d' ' -f2)
|
||||
+ REGENHEADER=$CCINSTALL/include/stddef.h
|
||||
+else
|
||||
+ REGENHEADER=/usr/include/netinet/in.h
|
||||
+fi
|
||||
+python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' $REGENHEADER
|
||||
diff -urN a-3.3.0/Makefile.pre.in b-3.3.0/Makefile.pre.in
|
||||
--- a-3.3.0/Makefile.pre.in Sat Nov 17 00:15:49 2012
|
||||
+++ b-3.3.0/Makefile.pre.in Sat Nov 17 00:16:19 2012
|
||||
@@ -27,6 +27,7 @@
|
||||
VERSION= @VERSION@
|
||||
srcdir= @srcdir@
|
||||
VPATH= @srcdir@
|
||||
+MSYSVPATH= @MSYSVPATH@
|
||||
|
||||
CC= @CC@
|
||||
CXX= @CXX@
|
||||
@@ -89,7 +90,8 @@
|
||||
# C flags used for building the interpreter object files
|
||||
PY_CORE_CFLAGS= $(PY_CFLAGS) $(PY_CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE
|
||||
|
||||
-
|
||||
+# ; on Windows otherwise :
|
||||
+DELIM= @DELIM@
|
||||
# Machine-dependent subdirectories
|
||||
MACHDEP= @MACHDEP@
|
||||
|
||||
@@ -625,7 +627,7 @@
|
||||
-DPREFIX='"$(prefix)"' \
|
||||
-DEXEC_PREFIX='"$(exec_prefix)"' \
|
||||
-DVERSION='"$(VERSION)"' \
|
||||
- -DVPATH='"$(VPATH)"' \
|
||||
+ -DVPATH='"$(MSYSVPATH)"' \
|
||||
-o $@ $(srcdir)/Modules/getpath.c
|
||||
|
||||
# default sys.path calculations for windows platforms
|
||||
@@ -930,6 +932,7 @@
|
||||
if test -f $(LDLIBRARY); then \
|
||||
if test -n "$(DLLLIBRARY)" ; then \
|
||||
$(INSTALL_SHARED) $(DLLLIBRARY) $(DESTDIR)$(BINDIR); \
|
||||
+ mkdir -p $(DESTDIR)$(LIBPL); $(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(LIBPL); \
|
||||
else \
|
||||
$(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(LIBDIR)/$(INSTSONAME); \
|
||||
if test $(LDLIBRARY) != $(INSTSONAME); then \
|
||||
@@ -1120,7 +1123,7 @@
|
||||
export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \
|
||||
export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \
|
||||
export EXE; EXE="$(BUILDEXE)"; \
|
||||
- cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen
|
||||
+ cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen "$(CC)"
|
||||
|
||||
python-config: $(srcdir)/Misc/python-config.in
|
||||
# Substitution happens here, as the completely-expanded BINDIR
|
||||
diff -urN a-3.3.0/Modules/Setup.config.in b-3.3.0/Modules/Setup.config.in
|
||||
--- a-3.3.0/Modules/Setup.config.in Sat Nov 17 00:15:48 2012
|
||||
+++ b-3.3.0/Modules/Setup.config.in Sat Nov 17 00:16:19 2012
|
||||
@@ -15,6 +15,8 @@
|
||||
# On win32 host(mingw build in MSYS environment) show that site.py
|
||||
# fail to load if some modules are not build-in:
|
||||
@BUILDIN_WIN32_MODULE@winreg ../PC/winreg.c
|
||||
+@BUILDIN_WIN32_MODULE@time timemodule.c
|
||||
+@BUILDIN_WIN32_MODULE@msvcrt ../PC/msvcrtmodule.c
|
||||
|
||||
|
||||
# The rest of the modules previously listed in this file are built
|
||||
diff -urN a-3.3.0/Modules/Setup.dist b-3.3.0/Modules/Setup.dist
|
||||
--- a-3.3.0/Modules/Setup.dist Sat Nov 17 00:15:48 2012
|
||||
+++ b-3.3.0/Modules/Setup.dist Sat Nov 17 00:16:19 2012
|
||||
@@ -84,14 +84,14 @@
|
||||
# Empty since this is now just the runtime prefix.
|
||||
DESTPATH=
|
||||
|
||||
-# Site specific path components -- should begin with : if non-empty
|
||||
+# Site specific path components -- should begin with $(DELIM) if non-empty
|
||||
SITEPATH=
|
||||
|
||||
# Standard path components for test modules
|
||||
TESTPATH=
|
||||
|
||||
# Path components for machine- or system-dependent modules and shared libraries
|
||||
-MACHDEPPATH=:plat-$(MACHDEP)
|
||||
+MACHDEPPATH=$(DELIM)plat-$(MACHDEP)
|
||||
EXTRAMACHDEPPATH=
|
||||
|
||||
COREPYTHONPATH=$(DESTPATH)$(SITEPATH)$(TESTPATH)$(MACHDEPPATH)$(EXTRAMACHDEPPATH)
|
||||
diff -urN a-3.3.0/Modules/getpath.c b-3.3.0/Modules/getpath.c
|
||||
--- a-3.3.0/Modules/getpath.c Sat Sep 29 09:00:45 2012
|
||||
+++ b-3.3.0/Modules/getpath.c Sat Nov 17 00:16:19 2012
|
||||
@@ -10,6 +10,10 @@
|
||||
#include <mach-o/dyld.h>
|
||||
#endif
|
||||
|
||||
+#ifdef MS_WINDOWS
|
||||
+#include <windows.h>
|
||||
+#endif
|
||||
+
|
||||
/* Search in some common locations for the associated Python libraries.
|
||||
*
|
||||
* Two directories must be found, the platform independent directory
|
||||
@@ -122,7 +126,7 @@
|
||||
#endif
|
||||
|
||||
#ifndef PYTHONPATH
|
||||
-#define PYTHONPATH PREFIX "/lib/python" VERSION ":" \
|
||||
+#define PYTHONPATH PREFIX "/lib/python" VERSION DELIMSTR \
|
||||
EXEC_PREFIX "/lib/python" VERSION "/lib-dynload"
|
||||
#endif
|
||||
|
||||
@@ -130,9 +134,17 @@
|
||||
#define LANDMARK L"os.py"
|
||||
#endif
|
||||
|
||||
+#ifdef __MINGW32__
|
||||
+#define wcstok(line, delim, pointer) wcstok(line, delim)
|
||||
+#endif
|
||||
+
|
||||
static wchar_t prefix[MAXPATHLEN+1];
|
||||
static wchar_t exec_prefix[MAXPATHLEN+1];
|
||||
static wchar_t progpath[MAXPATHLEN+1];
|
||||
+#ifdef MS_WINDOWS
|
||||
+static wchar_t dllpath[MAXPATHLEN+1];
|
||||
+extern HANDLE PyWin_DLLhModule;
|
||||
+#endif
|
||||
static wchar_t *module_search_path = NULL;
|
||||
static int module_search_path_malloced = 0;
|
||||
static wchar_t *lib_python = L"lib/python" VERSION;
|
||||
@@ -143,7 +155,7 @@
|
||||
size_t i = wcslen(dir);
|
||||
while (i > 0 && dir[i] != SEP)
|
||||
--i;
|
||||
- dir[i] = '\0';
|
||||
+ dir[i] = 0;
|
||||
}
|
||||
|
||||
static int
|
||||
@@ -213,7 +225,11 @@
|
||||
joinpath(wchar_t *buffer, wchar_t *stuff)
|
||||
{
|
||||
size_t n, k;
|
||||
+#ifdef MS_WINDOWS
|
||||
+ if (stuff[0] == SEP || (stuff[0] != 0 && stuff[1] == L':'))
|
||||
+#else
|
||||
if (stuff[0] == SEP)
|
||||
+#endif
|
||||
n = 0;
|
||||
else {
|
||||
n = wcslen(buffer);
|
||||
@@ -234,7 +250,11 @@
|
||||
static void
|
||||
copy_absolute(wchar_t *path, wchar_t *p, size_t pathlen)
|
||||
{
|
||||
+#ifdef MS_WINDOWS
|
||||
+ if (p[0] == SEP || (p[0] != 0 && p[1] == L':'))
|
||||
+#else
|
||||
if (p[0] == SEP)
|
||||
+#endif
|
||||
wcscpy(path, p);
|
||||
else {
|
||||
if (!_Py_wgetcwd(path, pathlen)) {
|
||||
@@ -254,7 +274,11 @@
|
||||
{
|
||||
wchar_t buffer[MAXPATHLEN+1];
|
||||
|
||||
+#ifdef MS_WINDOWS
|
||||
+ if (path[0] == SEP || (path[0] != 0 && path[1] == L':'))
|
||||
+#else
|
||||
if (path[0] == SEP)
|
||||
+#endif
|
||||
return;
|
||||
copy_absolute(buffer, path, MAXPATHLEN+1);
|
||||
wcscpy(path, buffer);
|
||||
@@ -451,6 +475,35 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
+#ifdef MS_WINDOWS
|
||||
+/* Calculates dllpath and progpath, replacing \\ with / */
|
||||
+int GetWindowsModulePaths()
|
||||
+{
|
||||
+ int result = 0;
|
||||
+ wchar_t* seps;
|
||||
+ result = GetModuleFileNameW(NULL, progpath, MAXPATHLEN);
|
||||
+ seps = wcschr(progpath, L'\\');
|
||||
+ while(seps) {
|
||||
+ *seps = L'/';
|
||||
+ seps = wcschr(seps, L'\\');
|
||||
+ }
|
||||
+ dllpath[0] = 0;
|
||||
+#ifdef Py_ENABLE_SHARED
|
||||
+ if (PyWin_DLLhModule) {
|
||||
+ if((GetModuleFileNameW(PyWin_DLLhModule, dllpath, MAXPATHLEN) > 0)) {
|
||||
+ result = 1;
|
||||
+ seps = wcschr(dllpath, L'\\');
|
||||
+ while(seps) {
|
||||
+ *seps = L'/';
|
||||
+ seps = wcschr(seps, L'\\');
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
+ return result;
|
||||
+}
|
||||
+#endif /* MS_WINDOWS */
|
||||
+
|
||||
static void
|
||||
calculate_path(void)
|
||||
{
|
||||
@@ -527,6 +580,10 @@
|
||||
}
|
||||
}
|
||||
#endif /* __APPLE__ */
|
||||
+#ifdef MS_WINDOWS
|
||||
+ else if(GetWindowsModulePaths()) {
|
||||
+ }
|
||||
+#endif /* MS_WINDOWS */
|
||||
else if (path) {
|
||||
while (1) {
|
||||
wchar_t *delim = wcschr(path, DELIM);
|
||||
@@ -556,7 +613,11 @@
|
||||
progpath[0] = '\0';
|
||||
if (path_buffer != NULL)
|
||||
PyMem_Free(path_buffer);
|
||||
+#ifdef MS_WINDOWS
|
||||
+ if (progpath[0] != '\0' && progpath[0] != SEP && progpath[1] != L':')
|
||||
+#else
|
||||
if (progpath[0] != SEP && progpath[0] != '\0')
|
||||
+#endif
|
||||
absolutize(progpath);
|
||||
wcsncpy(argv0_path, progpath, MAXPATHLEN);
|
||||
argv0_path[MAXPATHLEN] = '\0';
|
||||
@@ -873,7 +934,43 @@
|
||||
}
|
||||
|
||||
|
||||
-#ifdef __cplusplus
|
||||
+#ifdef MS_WINDOWS
|
||||
+/* Load python3.dll before loading any extension module that might refer
|
||||
+ to it. That way, we can be sure that always the python3.dll corresponding
|
||||
+ to this python DLL is loaded, not a python3.dll that might be on the path
|
||||
+ by chance.
|
||||
+ Return whether the DLL was found.
|
||||
+*/
|
||||
+static int python3_checked = 0;
|
||||
+static HANDLE hPython3;
|
||||
+int
|
||||
+_Py_CheckPython3()
|
||||
+{
|
||||
+ wchar_t py3path[MAXPATHLEN+1];
|
||||
+ wchar_t *s;
|
||||
+ if (python3_checked)
|
||||
+ return hPython3 != NULL;
|
||||
+ python3_checked = 1;
|
||||
+
|
||||
+ /* If there is a python3.dll next to the python3y.dll,
|
||||
+ assume this is a build tree; use that DLL */
|
||||
+ wcscpy(py3path, dllpath);
|
||||
+ s = wcsrchr(py3path, L'\\');
|
||||
+ if (!s)
|
||||
+ s = py3path;
|
||||
+ wcscpy(s, L"\\python3.dll");
|
||||
+ hPython3 = LoadLibraryExW(py3path, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
|
||||
+ if (hPython3 != NULL)
|
||||
+ return 1;
|
||||
+
|
||||
+ /* Check sys.prefix\DLLs\python3.dll */
|
||||
+ wcscpy(py3path, Py_GetPrefix());
|
||||
+ wcscat(py3path, L"\\DLLs\\python3.dll");
|
||||
+ hPython3 = LoadLibraryExW(py3path, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
|
||||
+ return hPython3 != NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
+#endif
|
||||
diff -urN a-3.3.0/Modules/posixmodule.c b-3.3.0/Modules/posixmodule.c
|
||||
--- a-3.3.0/Modules/posixmodule.c Sat Nov 17 00:15:48 2012
|
||||
+++ b-3.3.0/Modules/posixmodule.c Sat Nov 17 00:16:19 2012
|
||||
@@ -791,7 +791,7 @@
|
||||
}
|
||||
|
||||
/* A helper used by a number of POSIX-only functions */
|
||||
-#ifndef MS_WINDOWS
|
||||
+#if !defined(MS_WINDOWS) || defined(__MINGW32__)
|
||||
static int
|
||||
_parse_off_t(PyObject* arg, void* addr)
|
||||
{
|
||||
@@ -3430,7 +3430,7 @@
|
||||
Py_END_ALLOW_THREADS
|
||||
/* FindNextFile sets error to ERROR_NO_MORE_FILES if
|
||||
it got to the end of the directory. */
|
||||
- if (!result && GetLastError() != ERROR_NO_MORE_FILES) {
|
||||
+ if (!result && GetLastError() != 0 && GetLastError() != ERROR_NO_MORE_FILES) {
|
||||
Py_DECREF(list);
|
||||
list = win32_error_unicode("FindNextFileW", wnamebuf);
|
||||
goto exit;
|
||||
@@ -3485,7 +3485,7 @@
|
||||
Py_END_ALLOW_THREADS
|
||||
/* FindNextFile sets error to ERROR_NO_MORE_FILES if
|
||||
it got to the end of the directory. */
|
||||
- if (!result && GetLastError() != ERROR_NO_MORE_FILES) {
|
||||
+ if (!result && GetLastError() != 0 && GetLastError() != ERROR_NO_MORE_FILES) {
|
||||
Py_DECREF(list);
|
||||
list = win32_error("FindNextFile", namebuf);
|
||||
goto exit;
|
||||
diff -urN a-3.3.0/Python/fileutils.c b-3.3.0/Python/fileutils.c
|
||||
--- a-3.3.0/Python/fileutils.c Sat Sep 29 09:00:49 2012
|
||||
+++ b-3.3.0/Python/fileutils.c Sat Nov 17 00:16:19 2012
|
||||
@@ -251,7 +251,7 @@
|
||||
Not sure whether the MS_WINDOWS guards are necessary:
|
||||
perhaps for cygwin/mingw builds?
|
||||
*/
|
||||
-#if defined(HAVE_STAT) && !defined(MS_WINDOWS)
|
||||
+#if defined(HAVE_STAT) && (!defined(MS_WINDOWS) || defined(__MINGW32__))
|
||||
|
||||
/* Get file status. Encode the path to the locale encoding. */
|
||||
|
||||
diff -urN a-3.3.0/Python/pythonrun.c b-3.3.0/Python/pythonrun.c
|
||||
--- a-3.3.0/Python/pythonrun.c Sat Sep 29 09:00:49 2012
|
||||
+++ b-3.3.0/Python/pythonrun.c Sat Nov 17 00:16:19 2012
|
||||
@@ -787,6 +787,13 @@
|
||||
void
|
||||
Py_SetProgramName(wchar_t *pn)
|
||||
{
|
||||
+#ifdef __MINGW32__
|
||||
+ wchar_t* seps = wcschr(pn, ALTSEP);
|
||||
+ while(seps) {
|
||||
+ *seps = SEP;
|
||||
+ seps = wcschr(seps, ALTSEP);
|
||||
+ }
|
||||
+#endif
|
||||
if (pn && *pn)
|
||||
progname = pn;
|
||||
}
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Sat Nov 17 00:15:49 2012
|
||||
+++ b-3.3.0/configure.ac Sat Nov 17 00:16:19 2012
|
||||
@@ -576,6 +576,27 @@
|
||||
fi
|
||||
AC_MSG_RESULT($MACHDEP)
|
||||
|
||||
+# Windows uses ; to separate paths, everything else uses :
|
||||
+AC_MSG_CHECKING(DELIM)
|
||||
+DELIM=:
|
||||
+if test "$MACHDEP" = "win"
|
||||
+then
|
||||
+ DELIM=\;
|
||||
+fi
|
||||
+AC_MSG_RESULT([$DELIM])
|
||||
+AC_SUBST(DELIM)
|
||||
+
|
||||
+# MSYS make uses a 'virtual' VPATH, but getpath.c uses
|
||||
+# GetModuleFileNameW (replacing \ with /). This allows the user to
|
||||
+# define the 'actual 'real' value. Note, it should contain / not \,
|
||||
+# which is what is returned by "pwd -W".
|
||||
+AC_ARG_VAR(MSYSVPATH,
|
||||
+ For MSYS, allows specifying the real VPATH. Use / not \)
|
||||
+if test -z "$MSYSVPATH"; then
|
||||
+ MSYSVPATH=$srcdir
|
||||
+fi
|
||||
+AC_SUBST(MSYSVPATH)
|
||||
+
|
||||
AC_MSG_CHECKING([for init system calls])
|
||||
AC_SUBST(INITSYS)
|
||||
case $host in
|
||||
@@ -4253,6 +4274,28 @@
|
||||
# check for endianness
|
||||
AC_C_BIGENDIAN
|
||||
|
||||
+# REPARSE_DATA_BUFFER is in winnt.h on mingw32 and (unusably) ddk/ntifs.h on mingw64.
|
||||
+case $host in
|
||||
+ *-*-mingw*)
|
||||
+AC_CACHE_CHECK([if struct REPARSE_DATA_BUFFER is in winnt.h],
|
||||
+[ac_cv_struct_reparse_data_buffer_in_winnt_h],
|
||||
+ [AC_COMPILE_IFELSE(
|
||||
+ [AC_LANG_PROGRAM(
|
||||
+ [#include <windows.h>
|
||||
+ #include <winnt.h>],
|
||||
+ [REPARSE_DATA_BUFFER rdb],
|
||||
+ )],
|
||||
+ [ac_cv_struct_reparse_data_buffer_in_winnt_h=yes],
|
||||
+ [ac_cv_struct_reparse_data_buffer_in_winnt_h=no]
|
||||
+ )
|
||||
+])
|
||||
+if test "x${ac_cv_struct_reparse_data_buffer_in_winnt_h}" = xyes; then
|
||||
+ AC_DEFINE([REPARSE_DATA_BUFFER_IN_WINNT], [], [REPARSE_DATA_BUFFER in winnt.h])
|
||||
+ AC_SUBST(REPARSE_DATA_BUFFER_IN_WINNT)
|
||||
+fi
|
||||
+ ;;
|
||||
+esac
|
||||
+
|
||||
# ABI version string for Python extension modules. This appears between the
|
||||
# periods in shared library file names, e.g. foo.<SOABI>.so. It is calculated
|
||||
# from the following attributes which affect the ABI of this Python build (in
|
||||
@@ -4948,7 +4991,8 @@
|
||||
# FIXME: why windows builds don't use PC/frozen_dllmain.o ?
|
||||
PYTHON_OBJS_FROZENMAIN=""
|
||||
# default sys.path calculations for windows platforms
|
||||
- MODULE_GETPATH=PC/getpathp.o
|
||||
+ # MODULE_GETPATH=PC/getpathp.o
|
||||
+ MODULE_GETPATH=Modules/getpath.o
|
||||
;;
|
||||
esac
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
diff -urN a-3.3.0/Lib/distutils/sysconfig.py b-3.3.0/Lib/distutils/sysconfig.py
|
||||
--- a-3.3.0/Lib/distutils/sysconfig.py Fri Nov 16 17:23:38 2012
|
||||
+++ b-3.3.0/Lib/distutils/sysconfig.py Fri Nov 16 17:24:11 2012
|
||||
@@ -140,7 +140,7 @@
|
||||
else:
|
||||
prefix = plat_specific and EXEC_PREFIX or PREFIX
|
||||
|
||||
- if os.name == "posix":
|
||||
+ if os.name == "posix" or sys.version.find('GCC') >= 0:
|
||||
libpython = os.path.join(prefix,
|
||||
"lib", "python" + get_python_version())
|
||||
if standard_lib:
|
||||
diff -urN a-3.3.0/Lib/sysconfig.py b-3.3.0/Lib/sysconfig.py
|
||||
--- a-3.3.0/Lib/sysconfig.py Fri Nov 16 17:23:39 2012
|
||||
+++ b-3.3.0/Lib/sysconfig.py Fri Nov 16 17:24:11 2012
|
||||
@@ -43,13 +43,13 @@
|
||||
'data': '{base}',
|
||||
},
|
||||
'nt': {
|
||||
- 'stdlib': '{installed_base}/Lib',
|
||||
- 'platstdlib': '{base}/Lib',
|
||||
- 'purelib': '{base}/Lib/site-packages',
|
||||
- 'platlib': '{base}/Lib/site-packages',
|
||||
- 'include': '{installed_base}/Include',
|
||||
- 'platinclude': '{installed_base}/Include',
|
||||
- 'scripts': '{base}/Scripts',
|
||||
+ 'stdlib': '{installed_base}/lib/python{py_version_short}',
|
||||
+ 'platstdlib': '{base}/lib/python{py_version_short}',
|
||||
+ 'purelib': '{base}/lib/python{py_version_short}',
|
||||
+ 'platlib': '{base}/lib/python{py_version_short}',
|
||||
+ 'include': '{installed_base}/include/python{py_version_short}',
|
||||
+ 'platinclude': '{installed_base}/include/python{py_version_short}',
|
||||
+ 'scripts': '{base}/bin',
|
||||
'data': '{base}',
|
||||
},
|
||||
'os2': {
|
||||
@@ -72,12 +72,12 @@
|
||||
'data': '{userbase}',
|
||||
},
|
||||
'nt_user': {
|
||||
- 'stdlib': '{userbase}/Python{py_version_nodot}',
|
||||
- 'platstdlib': '{userbase}/Python{py_version_nodot}',
|
||||
- 'purelib': '{userbase}/Python{py_version_nodot}/site-packages',
|
||||
- 'platlib': '{userbase}/Python{py_version_nodot}/site-packages',
|
||||
- 'include': '{userbase}/Python{py_version_nodot}/Include',
|
||||
- 'scripts': '{userbase}/Scripts',
|
||||
+ 'stdlib': '{userbase}/lib/python{py_version_short}',
|
||||
+ 'platstdlib': '{userbase}/lib/python{py_version_short}',
|
||||
+ 'purelib': '{userbase}/lib/python{py_version_short}',
|
||||
+ 'platlib': '{userbase}/lib/python{py_version_short}',
|
||||
+ 'include': '{userbase}/include/python{py_version_short}',
|
||||
+ 'scripts': '{userbase}/bin',
|
||||
'data': '{userbase}',
|
||||
},
|
||||
'posix_user': {
|
||||
@@ -415,7 +415,7 @@
|
||||
vars['INCLUDEPY'] = get_path('include')
|
||||
vars['SO'] = '.pyd'
|
||||
vars['EXE'] = '.exe'
|
||||
- vars['VERSION'] = _PY_VERSION_SHORT_NO_DOT
|
||||
+ vars['VERSION'] = _PY_VERSION_SHORT
|
||||
vars['BINDIR'] = os.path.dirname(_safe_realpath(sys.executable))
|
||||
|
||||
#
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Fri Nov 16 17:23:36 2012
|
||||
+++ b-3.3.0/configure.ac Fri Nov 16 17:24:11 2012
|
||||
@@ -89,8 +89,8 @@
|
||||
AC_SUBST(VERSION)
|
||||
case $host in
|
||||
*-*-mingw*)
|
||||
- dnl To be compatible with MSVC build.
|
||||
-VERSION=`echo PYTHON_VERSION | sed -e 's|\.||g'`
|
||||
+ dnl To be *incompatible* with MSVC build!
|
||||
+VERSION=PYTHON_VERSION
|
||||
;;
|
||||
*)
|
||||
VERSION=PYTHON_VERSION
|
|
@ -0,0 +1,61 @@
|
|||
diff -urN a-3.3.0/Lib/distutils/cygwinccompiler.py b-3.3.0/Lib/distutils/cygwinccompiler.py
|
||||
--- a-3.3.0/Lib/distutils/cygwinccompiler.py Fri Nov 16 17:26:57 2012
|
||||
+++ b-3.3.0/Lib/distutils/cygwinccompiler.py Fri Nov 16 17:27:14 2012
|
||||
@@ -58,6 +58,7 @@
|
||||
from distutils import log
|
||||
from distutils.version import LooseVersion
|
||||
from distutils.spawn import find_executable
|
||||
+from subprocess import Popen, PIPE
|
||||
|
||||
def get_msvcr():
|
||||
"""Include the appropriate MSVC runtime library if Python was built
|
||||
@@ -395,7 +396,7 @@
|
||||
return (CONFIG_H_UNCERTAIN,
|
||||
"couldn't read '%s': %s" % (fn, exc.strerror))
|
||||
|
||||
-RE_VERSION = re.compile(b'(\d+\.\d+(\.\d+)*)')
|
||||
+RE_VERSION = re.compile(b'[\D\s]*(\d+\.\d+(\.\d+)*)[\D\s]*$')
|
||||
|
||||
def _find_exe_version(cmd):
|
||||
"""Find the version of an executable by running `cmd` in the shell.
|
||||
@@ -423,5 +424,14 @@
|
||||
|
||||
If not possible it returns None for it.
|
||||
"""
|
||||
- commands = ['gcc -dumpversion', 'ld -v', 'dllwrap --version']
|
||||
+ gcc = os.environ.get('CC') or 'gcc'
|
||||
+ ld = 'ld'
|
||||
+ out = Popen(gcc+' --print-prog-name ld', shell=True, stdout=PIPE).stdout
|
||||
+ try:
|
||||
+ ld = test=str(out.read(),encoding='utf-8').strip()
|
||||
+ finally:
|
||||
+ out.close()
|
||||
+ dllwrap = os.environ.get('DLLWRAP') or 'dllwrap'
|
||||
+ # MinGW64 doesn't have i686-w64-mingw32-ld, so instead we ask gcc.
|
||||
+ commands = [gcc+' -dumpversion', ld+' -v', dllwrap+' --version']
|
||||
return tuple([_find_exe_version(cmd) for cmd in commands])
|
||||
diff -urN a-3.3.0/Modules/Setup.config.in b-3.3.0/Modules/Setup.config.in
|
||||
--- a-3.3.0/Modules/Setup.config.in Fri Nov 16 17:27:00 2012
|
||||
+++ b-3.3.0/Modules/Setup.config.in Fri Nov 16 17:27:14 2012
|
||||
@@ -17,6 +17,7 @@
|
||||
@BUILDIN_WIN32_MODULE@winreg ../PC/winreg.c
|
||||
@BUILDIN_WIN32_MODULE@time timemodule.c
|
||||
@BUILDIN_WIN32_MODULE@msvcrt ../PC/msvcrtmodule.c
|
||||
+@BUILDIN_WIN32_MODULE@_winapi _winapi.c
|
||||
|
||||
|
||||
# The rest of the modules previously listed in this file are built
|
||||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Fri Nov 16 17:27:05 2012
|
||||
+++ b-3.3.0/setup.py Fri Nov 16 17:27:14 2012
|
||||
@@ -972,7 +972,9 @@
|
||||
for p in ['_msi.c']],
|
||||
libraries=['msi','cabinet','rpcrt4']) )
|
||||
|
||||
- exts.append( Extension('_winapi', ['_winapi.c']) )
|
||||
+ # Added to Setup.config.in as now needed earlier since I
|
||||
+ # use subprocess (which uses Popen) in cygwinccompiler.py
|
||||
+ # exts.append( Extension('_winapi', ['_winapi.c']) )
|
||||
|
||||
# On win32 host(mingw build in MSYS environment) show that site.py
|
||||
# fail to load if some modules are not build-in:
|
|
@ -0,0 +1,24 @@
|
|||
diff -urN a-3.3.0/Include/pyport.h b-3.3.0/Include/pyport.h
|
||||
--- a-3.3.0/Include/pyport.h Fri Nov 16 17:28:36 2012
|
||||
+++ b-3.3.0/Include/pyport.h Fri Nov 16 17:30:39 2012
|
||||
@@ -206,9 +206,11 @@
|
||||
/* Smallest negative value of type Py_ssize_t. */
|
||||
#define PY_SSIZE_T_MIN (-PY_SSIZE_T_MAX-1)
|
||||
|
||||
+/*
|
||||
#if SIZEOF_PID_T > SIZEOF_LONG
|
||||
# error "Python doesn't support sizeof(pid_t) > sizeof(long)"
|
||||
#endif
|
||||
+*/
|
||||
|
||||
/* PY_FORMAT_SIZE_T is a platform-specific modifier for use in a printf
|
||||
* format to convert an argument with the width of a size_t or Py_ssize_t.
|
||||
@@ -241,6 +243,8 @@
|
||||
# define PY_FORMAT_SIZE_T "l"
|
||||
# elif defined(MS_WINDOWS)
|
||||
# define PY_FORMAT_SIZE_T "I"
|
||||
+# elif defined(__MINGW32__) && defined(__USE_MINGW_ANSI_STDIO)
|
||||
+# define PY_FORMAT_SIZE_T "z"
|
||||
# else
|
||||
# error "This platform's pyconfig.h needs to define PY_FORMAT_SIZE_T"
|
||||
# endif
|
|
@ -0,0 +1,15 @@
|
|||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Fri Nov 16 17:33:43 2012
|
||||
+++ b-3.3.0/setup.py Fri Nov 16 17:33:55 2012
|
||||
@@ -498,10 +498,10 @@
|
||||
if not cross_compiling:
|
||||
add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
+ self.add_multiarch_paths()
|
||||
# only change this for cross builds for 3.3, issues on Mageia
|
||||
if cross_compiling:
|
||||
self.add_gcc_paths()
|
||||
- self.add_multiarch_paths()
|
||||
|
||||
# Add paths specified in the environment variables LDFLAGS and
|
||||
# CPPFLAGS for header and library files.
|
|
@ -0,0 +1,12 @@
|
|||
diff -urN a-3.3.0/Lib/compileall.py b-3.3.0/Lib/compileall.py
|
||||
--- a-3.3.0/Lib/compileall.py Fri Nov 16 17:35:37 2012
|
||||
+++ b-3.3.0/Lib/compileall.py Fri Nov 16 17:36:36 2012
|
||||
@@ -47,6 +47,8 @@
|
||||
if name == '__pycache__':
|
||||
continue
|
||||
fullname = os.path.join(dir, name)
|
||||
+ if sys.platform == "win32" and sys.version.find("GCC") >= 0:
|
||||
+ fullname = fullname.replace('\\','/')
|
||||
if ddir is not None:
|
||||
dfile = os.path.join(ddir, name)
|
||||
else:
|
|
@ -0,0 +1,81 @@
|
|||
diff -urN a-3.3.0/Lib/distutils/command/install.py b-3.3.0/Lib/distutils/command/install.py
|
||||
--- a-3.3.0/Lib/distutils/command/install.py Fri Nov 16 17:38:07 2012
|
||||
+++ b-3.3.0/Lib/distutils/command/install.py Fri Nov 16 18:08:10 2012
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
import sys
|
||||
import os
|
||||
+import re
|
||||
|
||||
from distutils import log
|
||||
from distutils.core import Command
|
||||
@@ -15,6 +16,37 @@
|
||||
from distutils.util import get_platform
|
||||
from distutils.errors import DistutilsOptionError
|
||||
|
||||
+def is_msys_mingw():
|
||||
+ if sys.platform == "win32" and "MSYSTEM" in os.environ and sys.version.find("GCC") >= 0:
|
||||
+ if os.environ["MSYSTEM"] == "MINGW32":
|
||||
+ return 1
|
||||
+ return 0
|
||||
+
|
||||
+def has_msys():
|
||||
+ _msysdll = "msys-1.0.dll"
|
||||
+ for _path in os.environ["PATH"].split(os.pathsep):
|
||||
+ currpath = os.path.join(_path, _msysdll)
|
||||
+ if os.path.isfile(currpath) and os.access(currpath, os.F_OK):
|
||||
+ return _path
|
||||
+ return None
|
||||
+
|
||||
+def msys_root():
|
||||
+ if is_msys_mingw() and has_msys() is not None:
|
||||
+ arg = has_msys()
|
||||
+ if arg == None:
|
||||
+ return None
|
||||
+ arg = arg.rstrip("\\")
|
||||
+ if arg.endswith("\\bin"):
|
||||
+ # drop the \\bin
|
||||
+ arg = arg[:-4]
|
||||
+ table = str.maketrans('\\', '/')
|
||||
+ arg = arg.translate(table)
|
||||
+ if arg.endswith("/"):
|
||||
+ arg = arg[:-1]
|
||||
+ return arg
|
||||
+ else:
|
||||
+ return None
|
||||
+
|
||||
# this keeps compatibility from 2.3 to 2.5
|
||||
if sys.version < "2.6":
|
||||
USER_BASE = None
|
||||
@@ -336,6 +368,14 @@
|
||||
self.expand_basedirs()
|
||||
|
||||
self.dump_dirs("post-expand_basedirs()")
|
||||
+
|
||||
+ # MSYS (probably) will have transformed --root=/ to the
|
||||
+ # windows path where the msys is installed, so we check if root begins
|
||||
+ # with msysroot and if it does then we set root to None again!
|
||||
+ if self.root is not None and is_msys_mingw():
|
||||
+ msysroot = msys_root()
|
||||
+ if msysroot != None and self.root.find(msysroot)==0:
|
||||
+ self.root = self.root.replace(msysroot, "/")
|
||||
|
||||
# Now define config vars for the base directories so we can expand
|
||||
# everything else.
|
||||
diff -urN a-3.3.0/Lib/distutils/util.py b-3.3.0/Lib/distutils/util.py
|
||||
--- a-3.3.0/Lib/distutils/util.py Fri Nov 16 17:38:07 2012
|
||||
+++ b-3.3.0/Lib/distutils/util.py Fri Nov 16 18:08:10 2012
|
||||
@@ -131,6 +131,13 @@
|
||||
paths.remove('.')
|
||||
if not paths:
|
||||
return os.curdir
|
||||
+ # On Windows, if paths is ['C:','folder','subfolder'] then
|
||||
+ # os.path.join(*paths) will return 'C:folder\subfolder' which
|
||||
+ # is thus relative to the CWD on that drive. So we work around
|
||||
+ # this by adding a \ to path[0]
|
||||
+ if (len(paths) > 0 and paths[0].endswith(':') and
|
||||
+ sys.platform == "win32" and sys.version.find("GCC") >= 0):
|
||||
+ paths[0] += '\\'
|
||||
return os.path.join(*paths)
|
||||
|
||||
# convert_path ()
|
|
@ -0,0 +1,15 @@
|
|||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Sat Nov 17 00:18:21 2012
|
||||
+++ b-3.3.0/setup.py Sat Nov 17 00:18:53 2012
|
||||
@@ -2232,8 +2232,9 @@
|
||||
newfilename = filename + fullversion
|
||||
else:
|
||||
newfilename = filename + minoronly
|
||||
- log.info('renaming {} to {}'.format(filename, newfilename))
|
||||
- os.rename(filename, newfilename)
|
||||
+ if not os.path.exists(newfilename):
|
||||
+ log.info('renaming {} to {}'.format(filename, newfilename))
|
||||
+ os.rename(filename, newfilename)
|
||||
newoutfiles.append(newfilename)
|
||||
if filename in updated_files:
|
||||
newupdated_files.append(newfilename)
|
|
@ -0,0 +1,73 @@
|
|||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Fri Nov 16 18:11:30 2012
|
||||
+++ b-3.3.0/setup.py Fri Nov 16 18:13:52 2012
|
||||
@@ -582,7 +582,7 @@
|
||||
if host_platform == 'hp-ux11':
|
||||
lib_dirs += ['/usr/lib/hpux64', '/usr/lib/hpux32']
|
||||
|
||||
- if host_platform == 'darwin':
|
||||
+ if host_platform in ['darwin', 'mingw', 'win32']:
|
||||
# This should work on any unixy platform ;-)
|
||||
# If the user has bothered specifying additional -I and -L flags
|
||||
# in OPT and LDFLAGS we might as well use them here.
|
||||
@@ -593,6 +593,8 @@
|
||||
# FIXME: Why LDFLAGS again ?
|
||||
cflags, ldflags = sysconfig.get_config_vars(
|
||||
'CFLAGS', 'LDFLAGS')
|
||||
+ cflags = cflags + ' ' + ('',os.environ.get('CC'))[os.environ.get('CC') != None]
|
||||
+ ldflags = ldflags + ' ' + ('',os.environ.get('LDSHARED'))[os.environ.get('LDSHARED') != None]
|
||||
for item in cflags.split():
|
||||
if item.startswith('-I'):
|
||||
inc_dirs.append(item[2:])
|
||||
@@ -1766,14 +1768,19 @@
|
||||
# The versions with dots are used on Unix, and the versions without
|
||||
# dots on Windows, for detection by cygwin.
|
||||
tcllib = tklib = tcl_includes = tk_includes = None
|
||||
- for version in ['8.6', '86', '8.5', '85', '8.4', '84', '8.3', '83',
|
||||
- '8.2', '82', '8.1', '81', '8.0', '80']:
|
||||
- tklib = self.compiler.find_library_file(lib_dirs,
|
||||
- 'tk' + version)
|
||||
- tcllib = self.compiler.find_library_file(lib_dirs,
|
||||
- 'tcl' + version)
|
||||
- if tklib and tcllib:
|
||||
- # Exit the loop when we've found the Tcl/Tk libraries
|
||||
+ tcltk_suffix = None
|
||||
+ for suffix in ['', 's']:
|
||||
+ for version in ['8.6', '86', '8.5', '85', '8.4', '84', '8.3', '83',
|
||||
+ '8.2', '82', '8.1', '81', '8.0', '80', '']:
|
||||
+ tklib = self.compiler.find_library_file(lib_dirs,
|
||||
+ 'tk' + version + suffix)
|
||||
+ tcllib = self.compiler.find_library_file(lib_dirs,
|
||||
+ 'tcl' + version + suffix)
|
||||
+ if tklib and tcllib:
|
||||
+ # Exit the loop when we've found the Tcl/Tk libraries
|
||||
+ tcltk_suffix = suffix
|
||||
+ break
|
||||
+ if tcltk_suffix != None:
|
||||
break
|
||||
|
||||
# Now check for the header files
|
||||
@@ -1843,15 +1850,21 @@
|
||||
libs.append('BLT')
|
||||
|
||||
# Add the Tcl/Tk libraries
|
||||
- libs.append('tk'+ version)
|
||||
- libs.append('tcl'+ version)
|
||||
+ libs.append('tk'+ version + tcltk_suffix)
|
||||
+ libs.append('tcl'+ version + tcltk_suffix)
|
||||
+ if host_platform in ['mingw', 'win32']:
|
||||
+ for winlib in ['ws2_32','gdi32','comctl32','comdlg32','imm32','uuid','oleaut32','ole32']:
|
||||
+ libs.append( winlib )
|
||||
|
||||
if host_platform in ['aix3', 'aix4']:
|
||||
libs.append('ld')
|
||||
|
||||
# Finally, link with the X11 libraries (not appropriate on cygwin, mingw)
|
||||
+ # ...on those platforms, define STATIC_BUILD if linking to static tcl/tk.
|
||||
if not host_platform in ['cygwin', 'mingw', 'win32']:
|
||||
libs.append('X11')
|
||||
+ elif tcllib.endswith('s.a'):
|
||||
+ defs.append( ('STATIC_BUILD',1) )
|
||||
|
||||
ext = Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'],
|
||||
define_macros=[('WITH_APPINIT', 1)] + defs,
|
|
@ -0,0 +1,23 @@
|
|||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Sat Nov 17 00:21:19 2012
|
||||
+++ b-3.3.0/configure.ac Sat Nov 17 00:21:54 2012
|
||||
@@ -1676,7 +1676,9 @@
|
||||
;;
|
||||
esac
|
||||
ac_save_cppflags="$CPPFLAGS"
|
||||
+if test yes != "$cross_compiling"; then
|
||||
CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
|
||||
+fi
|
||||
AC_CHECK_HEADERS(asm/types.h conio.h curses.h direct.h dlfcn.h errno.h \
|
||||
fcntl.h grp.h \
|
||||
ieeefp.h io.h langinfo.h libintl.h ncurses.h process.h \
|
||||
@@ -4658,7 +4660,9 @@
|
||||
fi
|
||||
|
||||
ac_save_cppflags="$CPPFLAGS"
|
||||
+if test yes != "$cross_compiling"; then
|
||||
CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
|
||||
+fi
|
||||
# On HP/UX 11.0, mvwdelch is a block with a return statement
|
||||
AC_MSG_CHECKING(whether mvwdelch is an expression)
|
||||
AC_CACHE_VAL(ac_cv_mvwdelch_is_expression,
|
|
@ -0,0 +1,99 @@
|
|||
diff -urN a-3.3.0/Include/py_curses.h b-3.3.0/Include/py_curses.h
|
||||
--- a-3.3.0/Include/py_curses.h Sat Sep 29 09:00:26 2012
|
||||
+++ b-3.3.0/Include/py_curses.h Sat Nov 17 00:25:00 2012
|
||||
@@ -14,7 +14,9 @@
|
||||
/* the following define is necessary for OS X 10.6; without it, the
|
||||
Apple-supplied ncurses.h sets NCURSES_OPAQUE to 1, and then Python
|
||||
can't get at the WINDOW flags field. */
|
||||
+/* NOTE configure check if ncurses require such definition
|
||||
#define NCURSES_OPAQUE 0
|
||||
+*/
|
||||
#endif /* __APPLE__ */
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
@@ -57,9 +59,12 @@
|
||||
#ifdef HAVE_NCURSES_H
|
||||
/* configure was checking <curses.h>, but we will
|
||||
use <ncurses.h>, which has all these features. */
|
||||
+/* NOTE configure check for existence of flags
|
||||
+ * Also flags are visible only if WINDOW structure is not opaque
|
||||
#ifndef WINDOW_HAS_FLAGS
|
||||
#define WINDOW_HAS_FLAGS 1
|
||||
#endif
|
||||
+*/
|
||||
#ifndef MVWDELCH_IS_EXPRESSION
|
||||
#define MVWDELCH_IS_EXPRESSION 1
|
||||
#endif
|
||||
diff -urN a-3.3.0/configure.ac b-3.3.0/configure.ac
|
||||
--- a-3.3.0/configure.ac Sat Nov 17 00:24:30 2012
|
||||
+++ b-3.3.0/configure.ac Sat Nov 17 00:25:00 2012
|
||||
@@ -4681,15 +4681,51 @@
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(whether WINDOW has _flags)
|
||||
-AC_CACHE_VAL(ac_cv_window_has_flags,
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <curses.h>]], [[
|
||||
WINDOW *w;
|
||||
w->_flags = 0;
|
||||
]])],
|
||||
[ac_cv_window_has_flags=yes],
|
||||
-[ac_cv_window_has_flags=no]))
|
||||
+[ac_cv_window_has_flags=no])
|
||||
AC_MSG_RESULT($ac_cv_window_has_flags)
|
||||
|
||||
+py_curses_window_is_opaque=no
|
||||
+if test no = $ac_cv_window_has_flags; then
|
||||
+ AC_MSG_CHECKING([whether WINDOW has _flags in non-opaque structure])
|
||||
+ AC_COMPILE_IFELSE([
|
||||
+ AC_LANG_PROGRAM([[
|
||||
+ #define NCURSES_OPAQUE 0
|
||||
+ #include <curses.h>
|
||||
+ ]],[[
|
||||
+ WINDOW *w;
|
||||
+ w->_flags = 0;
|
||||
+ ]])],
|
||||
+ [py_curses_window_is_opaque=yes])
|
||||
+ AC_MSG_RESULT([$py_curses_window_is_opaque])
|
||||
+fi
|
||||
+if test yes = $py_curses_window_is_opaque; then
|
||||
+ ac_cv_window_has_flags=yes
|
||||
+ AC_DEFINE([NCURSES_OPAQUE], [0], [Define to 0 if you have WINDOW _flags in non-opaque structure.])
|
||||
+fi
|
||||
+
|
||||
+py_curses_window_is_internal=no
|
||||
+if test no = $ac_cv_window_has_flags; then
|
||||
+ AC_MSG_CHECKING([whether WINDOW has _flags as internal structure])
|
||||
+ AC_COMPILE_IFELSE([
|
||||
+ AC_LANG_PROGRAM([[
|
||||
+ #define NCURSES_INTERNALS 1
|
||||
+ #include <curses.h>
|
||||
+ ]],[[
|
||||
+ WINDOW *w;
|
||||
+ w->_flags = 0;
|
||||
+ ]])],
|
||||
+ [py_curses_window_is_internal=yes])
|
||||
+ AC_MSG_RESULT([$py_curses_window_is_internal])
|
||||
+fi
|
||||
+if test yes = $py_curses_window_is_internal; then
|
||||
+ ac_cv_window_has_flags=yes
|
||||
+ AC_DEFINE([NCURSES_INTERNALS], [1], [Define to 1 if you have WINDOW _flags as internal structure.])
|
||||
+fi
|
||||
|
||||
if test "$ac_cv_window_has_flags" = yes
|
||||
then
|
||||
diff -urN a-3.3.0/pyconfig.h.in b-3.3.0/pyconfig.h.in
|
||||
--- a-3.3.0/pyconfig.h.in Sat Nov 17 00:24:30 2012
|
||||
+++ b-3.3.0/pyconfig.h.in Sat Nov 17 00:25:00 2012
|
||||
@@ -1142,6 +1142,12 @@
|
||||
/* Define to 1 if you want to use native NT threads */
|
||||
#undef NT_THREADS
|
||||
|
||||
+/* Define to 1 if you have WINDOW _flags as internal structure. */
|
||||
+#undef NCURSES_INTERNALS
|
||||
+
|
||||
+/* Define to 0 if you have WINDOW _flags in non-opaque structure. */
|
||||
+#undef NCURSES_OPAQUE
|
||||
+
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
diff -urN a-3.3.0/Include/py_curses.h b-3.3.0/Include/py_curses.h
|
||||
--- a-3.3.0/Include/py_curses.h Fri Nov 16 18:18:25 2012
|
||||
+++ b-3.3.0/Include/py_curses.h Fri Nov 16 18:18:49 2012
|
||||
@@ -56,6 +56,10 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
+#if defined(__MINGW32__) && !defined(_ISPAD)
|
||||
+#define _ISPAD 0x10
|
||||
+#endif
|
||||
+
|
||||
#ifdef HAVE_NCURSES_H
|
||||
/* configure was checking <curses.h>, but we will
|
||||
use <ncurses.h>, which has all these features. */
|
|
@ -0,0 +1,12 @@
|
|||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Sat Nov 17 00:26:05 2012
|
||||
+++ b-3.3.0/setup.py Sat Nov 17 00:26:52 2012
|
||||
@@ -1877,7 +1877,7 @@
|
||||
## # Uncomment these lines if you want to play with xxmodule.c
|
||||
## ext = Extension('xx', ['xxmodule.c'])
|
||||
## self.extensions.append(ext)
|
||||
- if 'd' not in sys.abiflags:
|
||||
+ if 'd' not in sys.abiflags and not COMPILED_WITH_PYDEBUG:
|
||||
ext = Extension('xxlimited', ['xxlimited.c'],
|
||||
define_macros=[('Py_LIMITED_API', 1)])
|
||||
self.extensions.append(ext)
|
|
@ -0,0 +1,33 @@
|
|||
diff -urN a-3.3.0/Modules/parsermodule.c b-3.3.0/Modules/parsermodule.c
|
||||
--- a-3.3.0/Modules/parsermodule.c 2012-09-29 09:00:45.000000000 +0100
|
||||
+++ b-3.3.0/Modules/parsermodule.c 2012-11-17 23:40:40.108791547 +0000
|
||||
@@ -37,7 +37,7 @@
|
||||
#undef Yield
|
||||
#include "ast.h"
|
||||
|
||||
-extern grammar _PyParser_Grammar; /* From graminit.c */
|
||||
+PyAPI_DATA(grammar) _PyParser_Grammar; /* From graminit.c */
|
||||
|
||||
#ifdef lint
|
||||
#include <note.h>
|
||||
diff -urN a-3.3.0/Parser/metagrammar.c b-3.3.0/Parser/metagrammar.c
|
||||
--- a-3.3.0/Parser/metagrammar.c 2012-09-29 09:00:48.000000000 +0100
|
||||
+++ b-3.3.0/Parser/metagrammar.c 2012-11-17 23:40:40.104793597 +0000
|
||||
@@ -139,7 +139,7 @@
|
||||
{7, 0},
|
||||
{8, 0},
|
||||
};
|
||||
-static grammar _PyParser_Grammar = {
|
||||
+static grammar _PyParser_MetaGrammar = {
|
||||
6,
|
||||
dfas,
|
||||
{19, labels},
|
||||
@@ -149,7 +149,7 @@
|
||||
grammar *
|
||||
meta_grammar(void)
|
||||
{
|
||||
- return &_PyParser_Grammar;
|
||||
+ return &_PyParser_MetaGrammar;
|
||||
}
|
||||
|
||||
grammar *
|
|
@ -0,0 +1,31 @@
|
|||
diff -urN a-3.3.0/Makefile.pre.in b-3.3.0/Makefile.pre.in
|
||||
--- a-3.3.0/Makefile.pre.in 2012-11-17 23:40:08.365070820 +0000
|
||||
+++ b-3.3.0/Makefile.pre.in 2012-11-17 23:43:34.762212549 +0000
|
||||
@@ -596,13 +596,13 @@
|
||||
############################################################################
|
||||
# Importlib
|
||||
|
||||
-Modules/_freeze_importlib: Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN)
|
||||
+_freeze_importlib$(EXE): Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN)
|
||||
$(LINKCC) $(PY_LDFLAGS) -o $@ Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
|
||||
|
||||
-Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py Modules/_freeze_importlib.c
|
||||
- $(MAKE) Modules/_freeze_importlib
|
||||
- ./Modules/_freeze_importlib \
|
||||
- $(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h
|
||||
+$(srcdir)/Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py $(srcdir)/Modules/_freeze_importlib.c
|
||||
+ $(MAKE) _freeze_importlib$(EXE)
|
||||
+ ./_freeze_importlib$(EXE) \
|
||||
+ $(srcdir)/Lib/importlib/_bootstrap.py $(srcdir)/Python/importlib.h
|
||||
|
||||
|
||||
############################################################################
|
||||
@@ -1363,7 +1363,7 @@
|
||||
find build -name 'fficonfig.py' -exec rm -f {} ';' || true
|
||||
-rm -f Lib/lib2to3/*Grammar*.pickle
|
||||
-rm -f $(SYSCONFIGDATA)
|
||||
- -rm -f _testembed$(EXE) Modules/_freeze_importlib
|
||||
+ -rm -f Modules/_testembed _freeze_importlib$(EXE)
|
||||
|
||||
profile-removal:
|
||||
find . -name '*.gc??' -exec rm -f {} ';'
|
|
@ -0,0 +1,21 @@
|
|||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Mon Nov 19 13:57:49 2012
|
||||
+++ b-3.3.0/setup.py Mon Nov 19 13:59:22 2012
|
||||
@@ -27,6 +27,17 @@
|
||||
return sys.platform
|
||||
host_platform = get_platform()
|
||||
|
||||
+# On MSYS, os.system needs to be wrapped with sh.exe
|
||||
+# as otherwise all the io redirection will fail.
|
||||
+# Arguably, this could happen inside the real os.system
|
||||
+# rather than this monkey patch.
|
||||
+if sys.platform == "win32" and "MSYSTEM" in os.environ:
|
||||
+ os_system = os.system
|
||||
+ def msys_system(command):
|
||||
+ command_in_sh = 'sh.exe -c "%s"' % command
|
||||
+ return os_system(command_in_sh)
|
||||
+ os.system = msys_system
|
||||
+
|
||||
# Were we compiled --with-pydebug or with #define Py_DEBUG?
|
||||
COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
diff -urN a-3.3.0/setup.py b-3.3.0/setup.py
|
||||
--- a-3.3.0/setup.py Mon Nov 19 14:30:48 2012
|
||||
+++ b-3.3.0/setup.py Mon Nov 19 14:44:34 2012
|
||||
@@ -425,7 +425,7 @@
|
||||
# Debian/Ubuntu multiarch support.
|
||||
# https://wiki.ubuntu.com/MultiarchSpec
|
||||
cc = sysconfig.get_config_var('CC')
|
||||
- tmpfile = os.path.join(self.build_temp, 'multiarch')
|
||||
+ tmpfile = os.path.join(self.build_temp, 'multiarch').replace('\\','/')
|
||||
if not os.path.exists(self.build_temp):
|
||||
os.makedirs(self.build_temp)
|
||||
ret = os.system(
|
||||
@@ -450,7 +450,7 @@
|
||||
opt = ''
|
||||
if cross_compiling:
|
||||
opt = '-t' + sysconfig.get_config_var('HOST_GNU_TYPE')
|
||||
- tmpfile = os.path.join(self.build_temp, 'multiarch')
|
||||
+ tmpfile = os.path.join(self.build_temp, 'multiarch').replace('\\','/')
|
||||
if not os.path.exists(self.build_temp):
|
||||
os.makedirs(self.build_temp)
|
||||
ret = os.system(
|
||||
@@ -469,7 +469,7 @@
|
||||
|
||||
def add_gcc_paths(self):
|
||||
gcc = sysconfig.get_config_var('CC')
|
||||
- tmpfile = os.path.join(self.build_temp, 'gccpaths')
|
||||
+ tmpfile = os.path.join(self.build_temp, 'gccpaths').replace('\\','/')
|
||||
if not os.path.exists(self.build_temp):
|
||||
os.makedirs(self.build_temp)
|
||||
ret = os.system('%s -E -v - </dev/null 2>%s 1>/dev/null' % (gcc, tmpfile))
|
||||
@@ -737,7 +737,7 @@
|
||||
readline_termcap_library = ""
|
||||
curses_library = ""
|
||||
# Cannot use os.popen here in py3k.
|
||||
- tmpfile = os.path.join(self.build_temp, 'readline_termcap_lib')
|
||||
+ tmpfile = os.path.join(self.build_temp, 'readline_termcap_lib').replace('\\','/')
|
||||
if not os.path.exists(self.build_temp):
|
||||
os.makedirs(self.build_temp)
|
||||
# Determine if readline is already linked against curses or tinfo.
|
||||
@@ -905,7 +905,7 @@
|
||||
opensslv_h = find_file('openssl/opensslv.h', [],
|
||||
inc_dirs + search_for_ssl_incs_in)
|
||||
if opensslv_h:
|
||||
- name = os.path.join(opensslv_h[0], 'openssl/opensslv.h')
|
||||
+ name = os.path.join(opensslv_h[0], 'openssl/opensslv.h').replace('\\','/')
|
||||
if host_platform == 'darwin' and is_macosx_sdk_path(name):
|
||||
name = os.path.join(macosx_sdk_root(), name[1:])
|
||||
try:
|
||||
@@ -1731,16 +1731,16 @@
|
||||
cflags = sysconfig.get_config_vars('CFLAGS')[0]
|
||||
archs = re.findall('-arch\s+(\w+)', cflags)
|
||||
|
||||
- tmpfile = os.path.join(self.build_temp, 'tk.arch')
|
||||
+ tmpfile = os.path.join(self.build_temp, 'tk.arch').replace('\\','/')
|
||||
if not os.path.exists(self.build_temp):
|
||||
os.makedirs(self.build_temp)
|
||||
|
||||
# Note: cannot use os.popen or subprocess here, that
|
||||
# requires extensions that are not available here.
|
||||
if is_macosx_sdk_path(F):
|
||||
- os.system("file %s/Tk.framework/Tk | grep 'for architecture' > %s"%(os.path.join(sysroot, F[1:]), tmpfile))
|
||||
+ os.system("file %s/Tk.framework/Tk | grep 'for architecture' > %s"%(os.path.join(sysroot, F[1:]).replace('\\','/'), tmpfile))
|
||||
else:
|
||||
- os.system("file %s/Tk.framework/Tk | grep 'for architecture' > %s"%(F, tmpfile))
|
||||
+ os.system("file %s/Tk.framework/Tk | grep 'for architecture' > %s"%(F.replace('\\','/'), tmpfile))
|
||||
|
||||
with open(tmpfile) as fp:
|
||||
detected_archs = []
|
|
@ -0,0 +1,11 @@
|
|||
--- Python-3.3.0/Include/pyport.h 2013-01-14 14:24:26.000000000 +0100
|
||||
+++ Python-3.3.0/Include/pyport.h 2013-01-14 14:26:12.000000000 +0100
|
||||
@@ -243,7 +243,7 @@
|
||||
# define PY_FORMAT_SIZE_T "l"
|
||||
# elif defined(MS_WINDOWS)
|
||||
# define PY_FORMAT_SIZE_T "I"
|
||||
-# elif defined(__MINGW32__) && defined(__USE_MINGW_ANSI_STDIO)
|
||||
+# elif defined(__MINGW32__)
|
||||
# define PY_FORMAT_SIZE_T "z"
|
||||
# else
|
||||
# error "This platform's pyconfig.h needs to define PY_FORMAT_SIZE_T"
|
|
@ -0,0 +1,87 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := python
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.3.0
|
||||
$(PKG)_CHECKSUM := 15c113fd6c058712f05d31b4eff149d4d823b8e39ef5e37228dc5dc4f8716df9
|
||||
$(PKG)_SUBDIR := Python-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := Python-$($(PKG)_VERSION).tar.bz2
|
||||
$(PKG)_URL := http://python.org/ftp/python/$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc libiconv zlib
|
||||
|
||||
PATH_TO_HOST_PYTHON := $(PREFIX)/share/$($(PKG)_SUBDIR)
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://python.org/download/releases/' | \
|
||||
$(SED) -n 's_.*">Python \(3.3.[0-9]\)</a>.*_\1_ip' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
## Build HOSTPYTHON and Parser/pgen on HOST with unpatched sources
|
||||
## http://randomsplat.com/id5-cross-compiling-python-for-embedded-linux.html
|
||||
if ! $(PATH_TO_HOST_PYTHON)/python --version ; then \
|
||||
echo "Built host python and Parser/pgen in $(PATH_TO_HOST_PYTHON)"; \
|
||||
( cd $$(dirname $(PATH_TO_HOST_PYTHON)) && tar xf $(PWD)/pkg/$($(PKG)_FILE) ); \
|
||||
( cd $(PATH_TO_HOST_PYTHON) && \
|
||||
./configure --disable-ipv6 && \
|
||||
$(MAKE) python Parser/pgen Modules/_freeze_importlib \
|
||||
) ; \
|
||||
fi
|
||||
|
||||
## Cross compiling python, see also
|
||||
## http://bugs.python.org/issue1597850
|
||||
## http://cawanblog.blogspot.co.at/
|
||||
|
||||
echo ac_cv_file__dev_ptmx=no > '$(1)'/config.site
|
||||
echo ac_cv_file__dev_ptc=no >> '$(1)'/config.site
|
||||
|
||||
## use patch set git://github.com/niXman/mingw-builds.git
|
||||
|
||||
cd '$(1)' && autoconf
|
||||
|
||||
cd '$(1)' && \
|
||||
MACHDEP=Linux \
|
||||
cross_compiling=yes \
|
||||
CONFIG_SITE=config.site \
|
||||
CC_FOR_BUILD=$(TARGET)-gcc \
|
||||
PYTHON_FOR_BUILD=$(PREFIX)/$(TARGET)/python.exe \
|
||||
ac_cv_have_long_long_format=yes \
|
||||
./configure \
|
||||
--without-threads \
|
||||
--with-libs='-lmsvcrt -liconv -lz' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--prefix='$(PREFIX)/$(TARGET)/$($(PKG)_SUBDIR)'
|
||||
|
||||
## modify Makefile such that HOSTPGEN is used instead of Parser/pgen.exe
|
||||
$(SED) -i 's#$$(PGEN) $$(GRAMMAR_INPUT)#$$(HOSTPGEN) $$(GRAMMAR_INPUT)#g' '$(1)'/Makefile
|
||||
|
||||
## modify Makefile such that HOST_FREEZE_IMPORTLIB is used instead of _freeze_importlib.exe
|
||||
$(SED) -i 's#./_freeze_importlib$$(EXE)#$$(HOST_FREEZE_IMPORTLIB)#g' '$(1)'/Makefile
|
||||
|
||||
PYTHONHOME='$(1)':'$(1)'/Lib/ \
|
||||
$(MAKE) -C '$(1)' \
|
||||
HOSTPYTHON=$(PATH_TO_HOST_PYTHON)/python \
|
||||
HOSTPGEN=$(PATH_TO_HOST_PYTHON)/Parser/pgen \
|
||||
HOST_FREEZE_IMPORTLIB=$(PATH_TO_HOST_PYTHON)/Modules/_freeze_importlib \
|
||||
BLDSHARED="$(TARGET)-gcc -shared" \
|
||||
CROSS_COMPILE=$(TARGET)- \
|
||||
CROSS_COMPILE_TARGET=yes \
|
||||
HOSTARCH=$(TARGET) \
|
||||
BUILDARCH=x86_64-linux-gnu \
|
||||
python.exe
|
||||
|
||||
## runtime test using wine
|
||||
[[ -z `wine '$(1)'/python.exe --version` ]] || echo "no runtime test - because wine is not available"
|
||||
|
||||
## Install target system
|
||||
rm -rf '$(PREFIX)/$(TARGET)/$($(PKG)_SUBDIR)'
|
||||
cp -r '$(1)' '$(PREFIX)/$(TARGET)/'
|
||||
cp -r '$(1)/python.exe' '$(PREFIX)/$(TARGET)/bin/'
|
||||
|
||||
ln -sf '$(PREFIX)/$(TARGET)/$($(PKG)_SUBDIR)/Include' '$(PREFIX)/$(TARGET)/include/$($(PKG)_SUBDIR)'
|
||||
|
||||
endef
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := qcad
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 3.4.2.0
|
||||
$(PKG)_CHECKSUM := 6a4228ba2ead58752d1de564840255014e35a40a
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := v$($(PKG)_VERSION).zip
|
||||
$(PKG)_URL := https://github.com/$(PKG)/$(PKG)/archive/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc qt5
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
$(WGET) -q -O- 'http://qcad.org/en/qcad-downloads-trial' | \
|
||||
$(SED) 's,.*QCAD version \([0-9\.]\) .*,\1,g;' | \
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
|
||||
cd '$(1)' && $(PREFIX)/$(TARGET)/qt5/bin/qmake
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' -j 1 install
|
||||
|
||||
endef
|
|
@ -0,0 +1,25 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := qhull
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2015.2
|
||||
$(PKG)_CHECKSUM := ccba72a9d9c614181b45666f12df1a8fd0b34236099f247b9bc008f6c3ec7872
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).zip
|
||||
$(PKG)_URL := http://www.qhull.org/download/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
echo 'Warning: Updates are temporarily disabled for package qhull.' >&2;
|
||||
echo $(qhull_VERSION)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
mkdir '$(1)/.build'
|
||||
cd '$(1)/.build' && $(TARGET)-cmake $(1)
|
||||
|
||||
make -C '$(1)/.build' -j '$(JOBS)'
|
||||
make -C '$(1)/.build' install
|
||||
endef
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,30 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := qrupdate
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 1.1.2
|
||||
$(PKG)_CHECKSUM := e2a1c711dc8ebc418e21195833814cb2f84b878b90a2774365f0166402308e08
|
||||
$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := qrupdate-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://sourceforge.net/projects/qrupdate/files/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc blas lapack
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
echo 'Warning: Updates are temporarily disabled for package qrupdate.' >&2;
|
||||
echo $(qrupdate_VERSION)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
chmod a+rx '$(1)/configure'
|
||||
cd '$(1)' && '$(1)/configure' \
|
||||
--host='$(TARGET)' \
|
||||
--build="`config.guess`" \
|
||||
--prefix='$(PREFIX)/$(TARGET)' \
|
||||
--enable-static \
|
||||
--disable-shared
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
|
||||
$(MAKE) -C '$(1)' install
|
||||
endef
|
|
@ -0,0 +1,28 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := qscintilla
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 2.7
|
||||
$(PKG)_CHECKSUM := 296c03343f5d84f0c06a16eb3fb706e0eb735ea6
|
||||
$(PKG)_SUBDIR := QScintilla-gpl-$($(PKG)_VERSION)/Qt4Qt5
|
||||
$(PKG)_FILE := QScintilla-gpl-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://sourceforge.net/projects/pyqt/files/QScintilla2/QScintilla-2.7/$($(PKG)_FILE)
|
||||
$(PKG)_DEPS := gcc qtbase
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
echo 'Warning: Updates are temporarily disabled for package qscintilla.' >&2;
|
||||
echo $(qscintilla_VERSION)
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(1)' && '$(PREFIX)/$(TARGET)/qt/bin/qmake' -makefile -spec '$(PREFIX)/$(TARGET)/qt/mkspecs/win32-g++'
|
||||
|
||||
$(MAKE) -C '$(1)' -j '$(JOBS)'
|
||||
$(MAKE) -C '$(1)' -j 1 install
|
||||
$(INSTALL) -m755 '$(PREFIX)/$(TARGET)/lib/qscintilla2.dll' '$(PREFIX)/$(TARGET)/bin/qscintilla2.dll'
|
||||
endef
|
||||
|
||||
$(PKG)_BUILD_i686-pc-mingw32 =
|
||||
$(PKG)_BUILD_i686-w64-mingw32 =
|
||||
$(PKG)_BUILD_x86_64-w64-mingw32 =
|
|
@ -0,0 +1,18 @@
|
|||
diff --git a/sigviewer.pro b/sigviewer.pro
|
||||
index 39a9bb5..e063cd9 100644
|
||||
--- a/sigviewer.pro
|
||||
+++ b/sigviewer.pro
|
||||
@@ -41,11 +41,9 @@ macx {
|
||||
}
|
||||
|
||||
INCLUDEPATH += \
|
||||
- $$PWD/external/include \
|
||||
$$PWD/src
|
||||
|
||||
LIBS += \
|
||||
- -L$$PWD/external/lib \
|
||||
- -lbiosig -lxdf
|
||||
+ -lbiosig -lxdf -ltinyxml
|
||||
|
||||
RESOURCES = $$PWD/src/src.qrc
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
diff --git a/changelog.txt b/changelog.txt
|
||||
index 3b52178..3ddfa74 100644
|
||||
--- a/changelog.txt
|
||||
+++ b/changelog.txt
|
||||
@@ -1,3 +1,6 @@
|
||||
+Version X.X.X
|
||||
+(B) Fix crash when exporting events to CSV
|
||||
+
|
||||
Version 0.6.4
|
||||
(+) Re-enable import/export event from/to EVT
|
||||
|
||||
diff --git a/src/gui_impl/commands/save_gui_command.cpp b/src/gui_impl/commands/save_gui_command.cpp
|
||||
index 8c37f8a..87e5aa9 100644
|
||||
--- a/src/gui_impl/commands/save_gui_command.cpp
|
||||
+++ b/src/gui_impl/commands/save_gui_command.cpp
|
||||
@@ -299,14 +299,17 @@ void SaveGuiCommand::exportEventsToCSV ()
|
||||
|
||||
for (unsigned int i = 0; i < event_manager_pt->getNumberOfEvents(); i++)
|
||||
{
|
||||
- row tmp = {
|
||||
- event_manager_pt->getEvent(i)->getPosition(),
|
||||
- event_manager_pt->getEvent(i)->getDuration(),
|
||||
- event_manager_pt->getEvent(i)->getChannel(),
|
||||
- event_manager_pt->getEvent(i)->getType(),
|
||||
- event_manager_pt->getNameOfEvent(i)
|
||||
- };
|
||||
- events.append(tmp);
|
||||
+ auto evt = event_manager_pt->getEvent(i);
|
||||
+ if (evt != NULL) {
|
||||
+ row tmp = {
|
||||
+ evt->getPosition(),
|
||||
+ evt->getDuration(),
|
||||
+ evt->getChannel(),
|
||||
+ evt->getType(),
|
||||
+ event_manager_pt->getNameOfEvent(i)
|
||||
+ };
|
||||
+ events.append(tmp);
|
||||
+ }
|
||||
}
|
||||
|
||||
std::sort(events.begin(),
|
|
@ -0,0 +1,28 @@
|
|||
# This file is part of MXE.
|
||||
# See index.html for further information.
|
||||
|
||||
PKG := sigviewer
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_VERSION := 0.6.4
|
||||
$(PKG)_CHECKSUM := e64516b0d5a2ac65b1ef496a6666cdac8919b67eecd8d5eb6b7cbf2493314367
|
||||
$(PKG)_SUBDIR := sigviewer-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := $($(PKG)_SUBDIR).tar.gz
|
||||
$(PKG)_URL := https://github.com/cbrnr/$(PKG)/archive/v$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_QT_DIR := qt5
|
||||
$(PKG)_DEPS := biosig libxdf qtbase
|
||||
|
||||
define $(PKG)_UPDATE
|
||||
wget -q -O- 'http://biosig.sourceforge.net/download.html' | \
|
||||
$(SED) -n 's_.*>libbiosig, version \([0-9]\.[0-9]\.[0-9]\).*tar.gz_\1_ip'
|
||||
head -1
|
||||
endef
|
||||
|
||||
define $(PKG)_BUILD
|
||||
cd '$(1)' && CFLAGS=-fstack-protector CXXFLAGS=-fstack-protector && \
|
||||
LIBS='-l$(PREFIX)/$(TARGET)/lib/libtinyxml.a -l$(PREFIX)/$(TARGET)/$($(PKG)_QT_DIR)/plugins/platforms/libqwindows.a' \
|
||||
$(PREFIX)/$(TARGET)/$($(PKG)_QT_DIR)/bin/qmake sigviewer.pro
|
||||
|
||||
$(MAKE) -C '$(1)'
|
||||
|
||||
$(INSTALL) '$(1)'/bin/release/sigviewer.exe $(PREFIX)/$(TARGET)/bin/$(PKG).exe
|
||||
endef
|
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue