Merge pull request #11 from msys2/master

rebase to upstream for libhandy 1.0
This commit is contained in:
Andy Tao
2020-09-09 14:23:28 +08:00
committed by GitHub
157 changed files with 5131 additions and 5273 deletions

View File

@@ -9,6 +9,7 @@ on:
jobs:
update-srcinfo:
runs-on: windows-latest
if: ${{ github.repository == 'msys2/MINGW-packages' || github.event_name == 'workflow_dispatch' }}
defaults:
run:
shell: msys2 {0}

View File

@@ -14,13 +14,11 @@ jobs:
{ msystem: MINGW64, arch: x86_64 },
{ msystem: MINGW32, arch: i686 }
]
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v2
with:
path: temp
fetch-depth: 0
- uses: msys2/setup-msys2@v2
@@ -29,17 +27,24 @@ jobs:
install: git base-devel mingw-w64-${{ matrix.arch }}-toolchain
update: true
- name: Move Checkout
run: |
Copy-Item -Path ".\temp" -Destination "C:\_" -Recurse
- name: CI-Build
run: MINGW_INSTALLS=${{ matrix.msystem }} ./ci-build.sh
shell: msys2 {0}
run: |
cd /C/_
MINGW_INSTALLS=${{ matrix.msystem }} ./ci-build.sh
- name: "Upload binaries"
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.msystem }}-packages
path: artifacts/*.pkg.tar.*
path: C:/_/artifacts/*.pkg.tar.*
- name: "Upload sources"
uses: actions/upload-artifact@v2
with:
name: sources
path: artifacts/*.src.tar.*
path: C:/_/artifacts/*.src.tar.*

View File

@@ -0,0 +1,62 @@
# Based on SDL hg changeset fc03d19926ed, tweaked to apply here
# HG changeset patch
# User James Le Cuirot <chewi@gentoo.org>
# Date 1586694276 -3600
# Node ID fc03d19926ed02c5e96033a22e0a1956cb7d2968
# Parent 89a457159af48f83585adab9ab9ea1d21be9505c
build: Don't duplicate Libs in Libs.private in pkg-config file
pkg-config already prepends Libs to Libs.private when you specify
--static so there's no need to duplicate them. Most other projects
don't do this.
diff -r 89a457159af4 -r fc03d19926ed CMakeLists.txt
--- a/CMakeLists.txt Sat Apr 11 23:38:34 2020 +0100
+++ b/CMakeLists.txt Sun Apr 12 13:24:36 2020 +0100
@@ -1962,7 +1962,7 @@
# Clean up the different lists
listtostr(EXTRA_LIBS _EXTRA_LIBS "-l")
- set(SDL_STATIC_LIBS ${SDL_LIBS} ${EXTRA_LDFLAGS} ${_EXTRA_LIBS})
+ set(SDL_STATIC_LIBS ${EXTRA_LDFLAGS} ${_EXTRA_LIBS})
list(REMOVE_DUPLICATES SDL_STATIC_LIBS)
listtostr(SDL_STATIC_LIBS _SDL_STATIC_LIBS)
set(SDL_STATIC_LIBS ${_SDL_STATIC_LIBS})
diff -r 89a457159af4 -r fc03d19926ed configure
--- a/configure Sat Apr 11 23:38:34 2020 +0100
+++ b/configure Sun Apr 12 13:24:36 2020 +0100
@@ -25717,7 +25717,7 @@
SDL_RLD_FLAGS=""
fi
-SDL_STATIC_LIBS="$SDL_LIBS $EXTRA_LDFLAGS"
+SDL_STATIC_LIBS="$EXTRA_LDFLAGS"
diff -r 89a457159af4 -r fc03d19926ed configure.ac
--- a/configure.ac Sat Apr 11 23:38:34 2020 +0100
+++ b/configure.ac Sun Apr 12 13:24:36 2020 +0100
@@ -4271,7 +4271,7 @@
SDL_RLD_FLAGS=""
fi
-SDL_STATIC_LIBS="$SDL_LIBS $EXTRA_LDFLAGS"
+SDL_STATIC_LIBS="$EXTRA_LDFLAGS"
dnl Expand the cflags and libraries needed by apps using SDL
AC_SUBST(SDL_CFLAGS)
diff -r 89a457159af4 -r fc03d19926ed sdl2-config.in
--- a/sdl2-config.in Sat Apr 11 23:38:34 2020 +0100
+++ b/sdl2-config.in Sun Apr 12 13:24:36 2020 +0100
@@ -49,7 +49,7 @@
@ENABLE_SHARED_TRUE@ ;;
@ENABLE_STATIC_TRUE@@ENABLE_SHARED_TRUE@ --static-libs)
@ENABLE_STATIC_TRUE@@ENABLE_SHARED_FALSE@ --libs|--static-libs)
-@ENABLE_STATIC_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_STATIC_LIBS@
+@ENABLE_STATIC_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@ @SDL_STATIC_LIBS@
@ENABLE_STATIC_TRUE@ ;;
*)
echo "${usage}" 1>&2

View File

@@ -5,7 +5,7 @@ _realname=SDL2
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.0.12
pkgrel=4
pkgrel=5
pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard (Version 2) (mingw-w64)"
arch=('any')
url="https://libsdl.org"
@@ -20,12 +20,14 @@ options=('staticlibs' 'strip')
source=("https://libsdl.org/release/SDL2-${pkgver}.tar.gz"{,.sig}
001-fix-cmake-target-relocation.patch
002-fix-link-order.patch
003-fix-static-library-name.patch)
003-fix-static-library-name.patch
004-dont-duplicate-libs-in-libs-private.patch)
sha256sums=('349268f695c02efbc9b9148a70b85e58cefbbf704abd3e91be654db7f1e2c863'
'SKIP'
'7150ff7c7549d919560eaff44d6f6f76feadbc7da7ce82ca3dcb8e67a91d1daa'
'4a3906a9b9989dba4967454512921660e0fb275c35263d8ef7d7b34fa5a95e57'
'a327673cd9d0e60d762860cf8dc96134b6b283314640e5803d918e7f5cd8f9ee')
'a327673cd9d0e60d762860cf8dc96134b6b283314640e5803d918e7f5cd8f9ee'
'2c3dedf6bd6a10f0dca531c256a85b87db5b12d7558fff4bcea26b9bc73bdc99')
validpgpkeys=('1528635D8053A57F77D1E08630A59377A7763BE6') # Sam Lantinga
prepare() {
@@ -33,6 +35,7 @@ prepare() {
patch -p1 -i ${srcdir}/001-fix-cmake-target-relocation.patch
patch -p1 -i ${srcdir}/002-fix-link-order.patch
patch -p1 -i ${srcdir}/003-fix-static-library-name.patch
patch -p1 -i ${srcdir}/004-dont-duplicate-libs-in-libs-private.patch
}
build() {

View File

@@ -1,6 +1,5 @@
diff -Naur alembic-1.7.9.orig/CMakeLists.txt alembic-1.7.9/CMakeLists.txt
--- alembic-1.7.9.orig/CMakeLists.txt 2018-10-12 16:57:06.166681500 -0400
+++ alembic-1.7.9/CMakeLists.txt 2018-10-12 16:59:47.472179600 -0400
--- a/CMakeLists.txt 2020-08-22 19:38:01.472003600 -0400
+++ b/CMakeLists.txt 2020-08-22 19:41:50.743299400 -0400
@@ -80,7 +80,11 @@
# Set static/dynamic build options
@@ -14,39 +13,17 @@ diff -Naur alembic-1.7.9.orig/CMakeLists.txt alembic-1.7.9/CMakeLists.txt
SET(LIBRARY_INSTALL_DIR lib)
SET(ARCHIVE_INSTALL_DIR lib)
IF (ALEMBIC_SHARED_LIBS)
@@ -135,25 +139,15 @@
# Set some debug vs opt flags
IF ("${CMAKE_BUILD_TYPE}" MATCHES "Debug")
- ADD_DEFINITIONS(-DDEBUG=1 -UNDEBUG)
- IF (NOT WINDOWS)
- ADD_DEFINITIONS(-Wall -Werror -Wextra -Wno-unused-parameter)
- ENDIF()
+ ADD_DEFINITIONS(-DDEBUG=1 -UNDEBUG -Wall -Werror -Wextra -Wno-unused-parameter)
ELSEIF ("${CMAKE_BUILD_TYPE}" MATCHES "Release")
- ADD_DEFINITIONS(-DNDEBUG=1 -UDEBUG)
- IF (NOT WINDOWS)
- ADD_DEFINITIONS(-O3)
- ENDIF()
+ ADD_DEFINITIONS(-DNDEBUG=1 -UDEBUG -O3)
ENDIF()
@@ -142,7 +146,7 @@
endif()
endif()
-IF (NOT ${WINDOWS})
- SET(EXTERNAL_MATH_LIBS "-lm")
-ELSE()
- SET(EXTERNAL_MATH_LIBS "")
-ENDIF()
+SET(EXTERNAL_MATH_LIBS "-lm")
IF (${WINDOWS})
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc")
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
IF (MSVC)
IF ((CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16) AND
(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 15))
diff -Naur alembic-1.7.9.orig/lib/Alembic/CMakeLists.txt alembic-1.7.9/lib/Alembic/CMakeLists.txt
--- alembic-1.7.9.orig/lib/Alembic/CMakeLists.txt 2018-10-12 16:57:05.824799900 -0400
+++ alembic-1.7.9/lib/Alembic/CMakeLists.txt 2018-10-12 17:02:05.467135400 -0400
+IF (NOT MSVC)
SET(EXTERNAL_MATH_LIBS "-lm")
ELSE()
SET(EXTERNAL_MATH_LIBS "")
--- a/lib/Alembic/CMakeLists.txt 2018-10-12 16:57:05.824799900 -0400
+++ b/lib/Alembic/CMakeLists.txt 2018-10-12 17:02:05.467135400 -0400
@@ -86,11 +86,12 @@
ENDIF()

View File

@@ -3,8 +3,8 @@
_realname=alembic
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.7.12
pkgrel=2
pkgver=1.7.14
pkgrel=1
pkgdesc="A open framework for storing and sharing scene data (mingw-w64)"
arch=('any')
url="https://www.alembic.io/"
@@ -18,8 +18,8 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/alembic/${_realname}/archive/${pkgver}.tar.gz"
"0001-alembic-1.7.9-fix-windows-build.patch"
"0002-alembic-1.7.9-remove-msc_ver-and-fix-builtins-and-includes.patch")
sha512sums=('e05e0b24056c17f01784ced1f9606a269974de195f1aca8a6fce2123314e7ee609f70df77ac7fe18dc7f0c04fb883d38cc7de9b963caacf9586aaa24d4ac6210'
'e06598a65b61c89b2e7a4403abfef0ab763c8579e901382289c22a0418ce26408df64703b6e30ac380fa8c7f2a0ad2a97b69b6d5b1b8cf598d135cef9ee3afe1'
sha512sums=('b1ccef300516c1ad998f0b76094982faf06aa5f6054e117afc59e3a04ba9618d0b13649689f28b785289e0ee0ed59c4ffd5e2374b441d047f8384cd4d73f481c'
'29d6d68e7b82b8d71b6d29b83d846e3c2e11369e2ff7b99c84053b8e7c27cf8a09d451069c918613fd0f9adb8f6df763434a089704253e2985c16f8829fcfb9f'
'e3f69356519d000004d68836c09340a78830c671f00bd9e317d798fa91b72c4d879e938ab2fc1e935775c193b9622dca2c42327aff5ee3d0e185e3a1a402a9d9')
prepare() {

View File

@@ -4,20 +4,20 @@ _realname=apr
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.6.5
pkgrel=2
pkgrel=3
pkgdesc="The Apache Portable Runtime (mingw-w64)"
arch=('any')
url="https://apr.apache.org/"
license=('APACHE')
validpgpkeys=('B1B96F45DFBDCCF974019235193F180AB55D9977')
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-libtool"
"${MINGW_PACKAGE_PREFIX}-python")
source=(https://www.apache.org/dist/apr/${_realname}-${pkgver}.tar.bz2{,.asc}
source=(https://www.apache.org/dist/apr/${_realname}-${pkgver}.tar.bz2
'apr_ssize_t.patch'
'apr_wtypes.patch')
sha256sums=('a67ca9fcf9c4ff59bce7f428a323c8b5e18667fdea7b0ebad47d194371b0a105'
'SKIP'
'cd75b79706dceba2af20f9e9a2d05032eacaf6f04edecb3a21f11594c0ccee4b'
'ba7d6de7e7930801df483d444b97c159af4ff11b4ce27e1337aea5e0417e6066'
'b82dd98ec8cff2273fb071dc9f1d2ee7466905c9b82a12d3d83ce1cb5920a5d6')
prepare() {

View File

@@ -7,8 +7,8 @@ Index: configure.in
ssize_t_fmt="ld"
AC_MSG_RESULT(%ld)
+elif test "$ac_cv_sizeof_ssize_t" = "$ac_cv_sizeof_long_long"; then
+ ssize_t_fmt="lld"
+ AC_MSG_RESULT(%lld)
+ ssize_t_fmt="I64d"
+ AC_MSG_RESULT(%I64d)
else
AC_ERROR([could not determine the proper format for apr_ssize_t])
fi
@@ -17,8 +17,8 @@ Index: configure.in
size_t_fmt="ld"
AC_MSG_RESULT(%ld)
+elif test "$ac_cv_sizeof_size_t" = "$ac_cv_sizeof_long_long"; then
+ size_t_fmt="lld"
+ AC_MSG_RESULT(%lld)
+ size_t_fmt="I64d"
+ AC_MSG_RESULT(%I64d)
else
AC_ERROR([could not determine the proper format for apr_size_t])
fi

View File

@@ -1,4 +1,5 @@
# Maintainer: Carlos Antunes <cmantunes@gmail.com>
# Maintainer: fauxpark <fauxpark@gmail.com>
# Contributed by: nanodude
_realname=binutils
@@ -6,44 +7,50 @@ _target=arm-none-eabi
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}")
pkgver=2.24
pkgver=2.35
pkgrel=1
pkgdesc="GNU Tools for ARM Embedded Processors - Binutils (mingw-w64)"
pkgdesc='GNU Tools for ARM Embedded Processors - Binutils (mingw-w64)'
arch=('any')
url="https://www.gnu.org/software/binutils/"
license=('GPL')
url='https://www.gnu.org/software/binutils/binutils.html'
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
options=('staticlibs')
source=("https://mirrors.kernel.org/sources.redhat.com/${_realname}/releases/${_realname}-${pkgver}.tar.bz2")
sha256sums=('e5e8c5be9664e7f7f96e0d09919110ab5ad597794f5b1809871177a0f0f14137')
source=("https://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.xz")
sha256sums=('1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85')
prepare() {
cd ${srcdir}/binutils-${pkgver}
mkdir binutils-build-${MINGW_CHOST}
}
build() {
if check_option "debug" "y"; then
CFLAGS+=" -g -O0"
fi
cd $srcdir
rm -rf build-${MINGW_CHOST}
mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST}
../${_realname}-${pkgver}/configure \
--build="${MINGW_CHOST}" \
--host="${MINGW_CHOST}" \
--target="${_target}" \
--prefix="${MINGW_PREFIX}" \
--disable-werror \
--disable-lto \
--with-sysroot="${MINGW_PREFIX}" \
--disable-nls \
--disable-rpath \
--enable-multilib \
--enable-interwork
make
cd ${srcdir}/binutils-${pkgver}/binutils-build-${MINGW_CHOST}
../configure \
--build=${MINGW_CHOST} \
--prefix=${MINGW_PREFIX} \
--target=${_target} \
--enable-multilib \
--enable-interwork \
--with-gnu-as \
--with-gnu-ld \
--disable-nls \
--enable-ld=default \
--enable-gold \
--enable-plugins \
--enable-deterministic-archives
make
}
package() {
cd ${srcdir}/build-${MINGW_CHOST}
make DESTDIR=${pkgdir} install
cd ${srcdir}/binutils-${pkgver}/binutils-build-${MINGW_CHOST}
# Remove unwanted files
rm -rf ${pkgdir}${MINGW_PREFIX}/share/info
make DESTDIR="${pkgdir}" install
cd ${pkgdir}${MINGW_PREFIX}
for info in as bfd binutils gprof ld; do
mv share/info/${info}.info share/info/arm-none-eabi-${info}.info
done
}

View File

@@ -1,424 +0,0 @@
--- gcc/graphite-clast-to-gimple.c.orig 2014-11-04 18:42:39.422980400 -0500
+++ gcc/graphite-clast-to-gimple.c 2014-11-04 21:27:23.628640600 -0500
@@ -28,6 +28,7 @@
#include <isl/constraint.h>
#include <isl/ilp.h>
#include <isl/aff.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -851,18 +852,18 @@
static void
compute_bounds_for_param (scop_p scop, int param, mpz_t low, mpz_t up)
{
- isl_int v;
+ isl_val *v;
isl_aff *aff = isl_aff_zero_on_domain
(isl_local_space_from_space (isl_set_get_space (scop->context)));
aff = isl_aff_add_coefficient_si (aff, isl_dim_param, param, 1);
- isl_int_init (v);
- isl_set_min (scop->context, aff, &v);
- isl_int_get_gmp (v, low);
- isl_set_max (scop->context, aff, &v);
- isl_int_get_gmp (v, up);
- isl_int_clear (v);
+ v = isl_set_min_val (scop->context, aff);
+ isl_val_get_num_gmp (v, low);
+ isl_val_free (v);
+ v = isl_set_max_val (scop->context, aff);
+ isl_val_get_num_gmp (v, up);
+ isl_val_free (v);
isl_aff_free (aff);
}
@@ -881,8 +882,7 @@
isl_set *domain;
isl_aff *dimension;
isl_local_space *local_space;
- isl_int isl_value;
- enum isl_lp_result lp_result;
+ isl_val *isl_value;
domain = isl_set_copy (isl_set_from_cloog_domain (loop->domain));
local_space = isl_local_space_from_space (isl_set_get_space (domain));
@@ -891,17 +891,12 @@
isl_set_dim (domain, isl_dim_set) - 1,
1);
- isl_int_init (isl_value);
-
- lp_result = isl_set_min (domain, dimension, &isl_value);
- assert (lp_result == isl_lp_ok);
- isl_int_get_gmp (isl_value, low);
-
- lp_result = isl_set_max (domain, dimension, &isl_value);
- assert (lp_result == isl_lp_ok);
- isl_int_get_gmp (isl_value, up);
-
- isl_int_clear (isl_value);
+ isl_value = isl_set_min_val (domain, dimension);
+ isl_val_get_num_gmp (isl_value, low);
+ isl_val_free (isl_value);
+ isl_value = isl_set_max_val (domain, dimension);
+ isl_val_get_num_gmp (isl_value, up);
+ isl_val_free (isl_value);
isl_set_free (domain);
isl_aff_free (dimension);
}
--- gcc/graphite-interchange.c.orig 2014-11-04 18:43:05.876102400 -0500
+++ gcc/graphite-interchange.c 2014-11-04 21:27:23.618640600 -0500
@@ -29,6 +29,7 @@
#include <isl/map.h>
#include <isl/union_map.h>
#include <isl/ilp.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -71,13 +72,13 @@
isl_local_space *ls = isl_local_space_from_space (isl_map_get_space (map));
unsigned offset, nsubs;
int i;
- isl_int size, subsize;
+ isl_ctx *ct;
+
+ isl_val *size, *subsize, *size1;
res = isl_equality_alloc (ls);
- isl_int_init (size);
- isl_int_set_ui (size, 1);
- isl_int_init (subsize);
- isl_int_set_ui (subsize, 1);
+ ct = isl_local_space_get_ctx (ls);
+ size = isl_val_int_from_ui (ct, 1);
nsubs = isl_set_dim (pdr->extent, isl_dim_set);
/* -1 for the already included L dimension. */
@@ -90,18 +91,17 @@
isl_space *dc;
isl_aff *aff;
- res = isl_constraint_set_coefficient (res, isl_dim_out, offset + i, size);
-
+ size1 = isl_val_copy (size);
+ res = isl_constraint_set_coefficient_val (res, isl_dim_out, offset + i, size);
dc = isl_set_get_space (pdr->extent);
aff = isl_aff_zero_on_domain (isl_local_space_from_space (dc));
aff = isl_aff_set_coefficient_si (aff, isl_dim_in, i, 1);
- isl_set_max (pdr->extent, aff, &subsize);
+ subsize = isl_set_max_val (pdr->extent, aff);
isl_aff_free (aff);
- isl_int_mul (size, size, subsize);
+ size = isl_val_mul (size1, subsize);
}
- isl_int_clear (subsize);
- isl_int_clear (size);
+ isl_val_free (size);
return res;
}
@@ -118,7 +118,7 @@
isl_aff *aff;
isl_space *dc;
isl_constraint *lma, *c;
- isl_int islstride;
+ isl_val *islstride;
graphite_dim_t time_depth;
unsigned offset, nt;
unsigned i;
@@ -231,10 +231,9 @@
aff = isl_aff_zero_on_domain (isl_local_space_from_space (dc));
aff = isl_aff_set_coefficient_si (aff, isl_dim_in, offset - 1, -1);
aff = isl_aff_set_coefficient_si (aff, isl_dim_in, offset + offset - 1, 1);
- isl_int_init (islstride);
- isl_set_max (set, aff, &islstride);
- isl_int_get_gmp (islstride, stride);
- isl_int_clear (islstride);
+ islstride = isl_set_max_val (set, aff);
+ isl_val_get_num_gmp (islstride, stride);
+ isl_val_free (islstride);
isl_aff_free (aff);
isl_set_free (set);
--- gcc/graphite-optimize-isl.c.orig 2014-11-04 18:42:39.462980500 -0500
+++ gcc/graphite-optimize-isl.c 2014-11-04 21:31:43.873183200 -0500
@@ -252,6 +252,7 @@
DimToVectorize can be devided by VectorWidth. The default VectorWidth is
currently constant and not yet target specific. This function does not reason
about parallelism. */
+
static isl_map *
getPrevectorMap(isl_ctx *ctx, int DimToVectorize,
int ScheduleDimensions,
@@ -265,8 +266,9 @@
isl_aff *Aff;
int PointDimension; /* ip */
int TileDimension; /* it */
- isl_int VectorWidthMP;
+ isl_val *VectorWidthMP;
int i;
+ isl_ctx *ct;
/* assert (0 <= DimToVectorize && DimToVectorize < ScheduleDimensions);*/
@@ -296,10 +298,10 @@
Aff = isl_aff_zero_on_domain(LocalSpaceRange);
Aff = isl_aff_set_constant_si(Aff, VectorWidth);
Aff = isl_aff_set_coefficient_si(Aff, isl_dim_in, TileDimension, 1);
- isl_int_init(VectorWidthMP);
- isl_int_set_si(VectorWidthMP, VectorWidth);
- Aff = isl_aff_mod(Aff, VectorWidthMP);
- isl_int_clear(VectorWidthMP);
+
+ ct = isl_aff_get_ctx(Aff);
+ VectorWidthMP = isl_val_int_from_si(ct, VectorWidth);
+ Aff = isl_aff_mod_val(Aff, VectorWidthMP);
Modulo = isl_pw_aff_zero_set(isl_pw_aff_from_aff(Aff));
TilingMap = isl_map_intersect_range(TilingMap, Modulo);
@@ -365,7 +367,7 @@
{
for (i = ScheduleDimensions - 1 ; i >= 0 ; i--)
{
- if (isl_band_member_is_zero_distance(Band, i))
+ if (isl_band_member_is_coincident(Band, i))
{
isl_map *TileMap;
isl_union_map *TileUMap;
--- gcc/graphite-poly.c.orig 2014-11-04 18:42:39.565982500 -0500
+++ gcc/graphite-poly.c 2014-11-04 21:27:23.608640600 -0500
@@ -28,6 +28,7 @@
#include <isl/constraint.h>
#include <isl/ilp.h>
#include <isl/aff.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -1021,10 +1022,7 @@
isl_set *transdomain;
isl_space *dc;
isl_aff *aff;
- isl_int isllb, islub;
-
- isl_int_init (isllb);
- isl_int_init (islub);
+ isl_val *isllb, *islub;
/* Map the iteration domain through the current scatter, and work
on the resulting set. */
@@ -1038,15 +1036,14 @@
/* And find the min/max for that function. */
/* XXX isl check results? */
- isl_set_min (transdomain, aff, &isllb);
- isl_set_max (transdomain, aff, &islub);
+ isllb = isl_set_min_val (transdomain, aff);
+ islub = isl_set_max_val (transdomain, aff);
- isl_int_sub (islub, islub, isllb);
- isl_int_add_ui (islub, islub, 1);
- isl_int_get_gmp (islub, res);
+ islub = isl_val_sub (islub, isllb);
+ islub = isl_val_add_ui (islub, 1);
+ isl_val_get_num_gmp (islub, res);
- isl_int_clear (isllb);
- isl_int_clear (islub);
+ isl_val_free (islub);
isl_aff_free (aff);
isl_set_free (transdomain);
}
--- gcc/graphite-sese-to-poly.c.orig 2014-11-04 18:42:39.730983000 -0500
+++ gcc/graphite-sese-to-poly.c 2014-11-04 21:27:23.598640600 -0500
@@ -26,7 +26,7 @@
#include <isl/union_map.h>
#include <isl/constraint.h>
#include <isl/aff.h>
-#include <cloog/cloog.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -46,7 +46,6 @@
#include "graphite-poly.h"
#include "graphite-sese-to-poly.h"
-
/* Assigns to RES the value of the INTEGER_CST T. */
static inline void
@@ -461,13 +460,11 @@
int i;
int nb_iterators = pbb_dim_iter_domain (pbb);
int used_scattering_dimensions = nb_iterators * 2 + 1;
- isl_int val;
+ isl_val *val;
isl_space *dc, *dm;
gcc_assert (scattering_dimensions >= used_scattering_dimensions);
- isl_int_init (val);
-
dc = isl_set_get_space (pbb->domain);
dm = isl_space_add_dims (isl_space_from_domain (dc),
isl_dim_out, scattering_dimensions);
@@ -481,12 +478,10 @@
isl_constraint *c = isl_equality_alloc
(isl_local_space_from_space (isl_map_get_space (pbb->schedule)));
- if (0 != isl_aff_get_coefficient (static_sched, isl_dim_in,
- i / 2, &val))
- gcc_unreachable ();
+ val = isl_aff_get_coefficient_val (static_sched, isl_dim_in, i / 2);
- isl_int_neg (val, val);
- c = isl_constraint_set_constant (c, val);
+ val = isl_val_neg (val);
+ c = isl_constraint_set_constant_val (c, val);
c = isl_constraint_set_coefficient_si (c, isl_dim_out, i, 1);
pbb->schedule = isl_map_add_constraint (pbb->schedule, c);
}
@@ -500,8 +495,6 @@
}
}
- isl_int_clear (val);
-
pbb->transformed = isl_map_copy (pbb->schedule);
}
@@ -681,12 +674,12 @@
isl_local_space *ls = isl_local_space_from_space (isl_space_copy (space));
isl_aff *aff = isl_aff_zero_on_domain (ls);
isl_set *dom = isl_set_universe (space);
- isl_int v;
+ isl_val *v;
+ isl_ctx *ct;
- isl_int_init (v);
- isl_int_set_gmp (v, g);
- aff = isl_aff_add_constant (aff, v);
- isl_int_clear (v);
+ ct = isl_aff_get_ctx (aff);
+ v = isl_val_int_from_gmp (ct, g);
+ aff = isl_aff_add_constant_val (aff, v);
return isl_pw_aff_alloc (dom, aff);
}
@@ -709,18 +702,16 @@
/* Compute pwaff mod 2^width. */
+extern isl_ctx *the_isl_ctx;
+
static isl_pw_aff *
wrap (isl_pw_aff *pwaff, unsigned width)
{
- isl_int mod;
-
- isl_int_init (mod);
- isl_int_set_si (mod, 1);
- isl_int_mul_2exp (mod, mod, width);
-
- pwaff = isl_pw_aff_mod (pwaff, mod);
+ isl_val *mod;
- isl_int_clear (mod);
+ mod = isl_val_int_from_ui(the_isl_ctx, width);
+ mod = isl_val_2exp (mod);
+ pwaff = isl_pw_aff_mod_val (pwaff, mod);
return pwaff;
}
@@ -976,11 +967,10 @@
isl_space *space;
isl_constraint *c;
int pos = isl_set_dim (outer, isl_dim_set);
- isl_int v;
+ isl_val *v;
mpz_t g;
mpz_init (g);
- isl_int_init (v);
inner = isl_set_add_dims (inner, isl_dim_set, 1);
space = isl_set_get_space (inner);
@@ -998,8 +988,8 @@
(isl_local_space_from_space(isl_space_copy (space)));
c = isl_constraint_set_coefficient_si (c, isl_dim_set, pos, -1);
tree_int_to_gmp (nb_iters, g);
- isl_int_set_gmp (v, g);
- c = isl_constraint_set_constant (c, v);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
+ c = isl_constraint_set_constant_val (c, v);
inner = isl_set_add_constraint (inner, c);
}
@@ -1053,9 +1043,9 @@
c = isl_inequality_alloc
(isl_local_space_from_space (isl_space_copy (space)));
c = isl_constraint_set_coefficient_si (c, isl_dim_set, pos, -1);
- isl_int_set_gmp (v, g);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
mpz_clear (g);
- c = isl_constraint_set_constant (c, v);
+ c = isl_constraint_set_constant_val (c, v);
inner = isl_set_add_constraint (inner, c);
}
else
@@ -1078,7 +1068,6 @@
isl_set_free (outer);
isl_space_free (space);
- isl_int_clear (v);
mpz_clear (g);
}
@@ -1342,17 +1331,15 @@
isl_space *space = isl_set_get_space (scop->context);
isl_constraint *c;
mpz_t g;
- isl_int v;
+ isl_val *v;
c = isl_inequality_alloc (isl_local_space_from_space (space));
mpz_init (g);
- isl_int_init (v);
tree_int_to_gmp (lb, g);
- isl_int_set_gmp (v, g);
- isl_int_neg (v, v);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
+ v = isl_val_neg (v);
mpz_clear (g);
- c = isl_constraint_set_constant (c, v);
- isl_int_clear (v);
+ c = isl_constraint_set_constant_val (c, v);
c = isl_constraint_set_coefficient_si (c, isl_dim_param, p, 1);
scop->context = isl_set_add_constraint (scop->context, c);
@@ -1363,17 +1350,15 @@
isl_space *space = isl_set_get_space (scop->context);
isl_constraint *c;
mpz_t g;
- isl_int v;
+ isl_val *v;
c = isl_inequality_alloc (isl_local_space_from_space (space));
mpz_init (g);
- isl_int_init (v);
tree_int_to_gmp (ub, g);
- isl_int_set_gmp (v, g);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
mpz_clear (g);
- c = isl_constraint_set_constant (c, v);
- isl_int_clear (v);
+ c = isl_constraint_set_constant_val (c, v);
c = isl_constraint_set_coefficient_si (c, isl_dim_param, p, -1);
scop->context = isl_set_add_constraint (scop->context, c);

View File

@@ -1,10 +0,0 @@
--- gcc/libgcc/crtstuff.c.orig 2014-11-06 20:00:44.376302800 -0500
+++ gcc/libgcc/crtstuff.c 2014-11-06 20:01:33.215445300 -0500
@@ -52,6 +52,7 @@
identified the set of defines that need to go into auto-target.h,
this will have to do. */
#include "auto-host.h"
+#undef caddr_t
#undef pid_t
#undef rlim_t
#undef ssize_t

View File

@@ -1,4 +1,5 @@
# Maintainer: Carlos Antunes <cmantunes@gmail.com>
# Maintainer: fauxpark <fauxpark@gmail.com>
# Contributed by: nanodude
_realname=gcc
@@ -6,98 +7,127 @@ _target=arm-none-eabi
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}")
pkgver=8.2.0
pkgrel=1
pkgdesc="GNU Tools for ARM Embedded Processors - GCC (mingw-w64)"
pkgver=8.4.0
pkgrel=2
pkgdesc='GNU Tools for ARM Embedded Processors - GCC (mingw-w64)'
arch=('any')
url="https://launchpad.net/gcc-arm-embedded"
license=('GPL' 'Various')
license=('GPL')
url='https://www.gnu.org/software/gcc/gcc.html'
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
depends=("${MINGW_PACKAGE_PREFIX}-${_target}-newlib"
"${MINGW_PACKAGE_PREFIX}-${_target}-binutils")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
options=('staticlibs' '!debug' '!strip')
source=('gcc-arm-embedded.tar.bz2::https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q3-update/+download/gcc-arm-none-eabi-4_8-2014q3-20140805-src.tar.bz2'
'010-gcc-isl-0.13.patch'
'020-gcc-auto-host-screwup.patch')
sha256sums=('09519946642d5366ab739a89d3388b2ea333cd7dc50192bab3736a9593af83e6'
'8e8da71e6e6b347dd7fc7f7938bf9af22be031ad8916749fa6c368f87d8891f0'
'b5e826a0dc477f04233e68cc7d0dfc4f498c36e16c5cc3751cb52bcd9a7f0c24')
noextract=('gcc-arm-embedded.tar.bz2')
depends=(
"${MINGW_PACKAGE_PREFIX}-${_target}-binutils"
"${MINGW_PACKAGE_PREFIX}-${_target}-newlib"
"${MINGW_PACKAGE_PREFIX}-isl"
"${MINGW_PACKAGE_PREFIX}-mpc"
"${MINGW_PACKAGE_PREFIX}-zlib"
)
makedepends=(
"${MINGW_PACKAGE_PREFIX}-gmp"
"${MINGW_PACKAGE_PREFIX}-mpfr"
)
options=('!emptydirs' '!strip')
source=("https://ftp.gnu.org/gnu/gcc/gcc-${pkgver}/gcc-${pkgver}.tar.xz")
sha256sums=('e30a6e52d10e1f27ed55104ad233c30bd1e99cfb5ff98ab022dc941edd1b2dd4')
prepare() {
# Extract packages from archive
rm -rf ${srcdir}/tmp
mkdir ${srcdir}/tmp && cd ${srcdir}/tmp
tar xf ../../gcc-arm-embedded.tar.bz2 --strip-components=2
cd ${srcdir}/gcc-${pkgver}
# Copy and extract GCC package
cp gcc.tar.bz2 ${srcdir}
cd ${srcdir}
[ -d gcc ] && rm -rf gcc
tar xf gcc.tar.bz2
mkdir gcc-build-${MINGW_CHOST}
mkdir gcc-build-nano-${MINGW_CHOST}
}
# GCC: Compatibility with isl>=0.12.2
cd "${srcdir}/gcc"
patch -p0 -i "${srcdir}/010-gcc-isl-0.13.patch"
_build_gcc() {
local _GCC_LDFLAGS="${LDFLAGS} -Wl,--disable-dynamicbase"
if [ "${CARCH}" = 'x86_64' ]; then
_GCC_LDFLAGS+=",--image-base=0x400000"
fi
../configure \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--prefix=${MINGW_PREFIX} \
--target=${_target} \
--with-native-system-header-dir=${MINGW_PREFIX}/${MINGW_CHOST}/include \
--libexecdir=${MINGW_PREFIX}/lib \
--enable-languages=c,c++ \
--enable-plugins \
--disable-decimal-float \
--disable-libffi \
--disable-libgomp \
--disable-libmudflap \
--disable-libquadmath \
--disable-libssp \
--disable-libstdcxx-pch \
--disable-nls \
--disable-shared \
--disable-threads \
--disable-tls \
--with-gnu-as \
--with-gnu-ld \
--with-system-zlib \
--with-newlib \
--with-headers=${MINGW_PREFIX}/${_target}/include \
--with-python-dir=share/gcc-${_target} \
--with-gmp \
--with-mpfr \
--with-mpc \
--with-isl \
--with-libelf \
--enable-gnu-indirect_function \
--with-multilib-list=rmprofile \
--with-host-libstdcxx="-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm" \
--enable-linker-plugin-flags='LDFLAGS=-static-libstdc++\ -static-libgcc\ '"${LDFLAGS// /\\ }"'\ -Wl,--stack,12582912' \
LDFLAGS="${_GCC_LDFLAGS}"
# GCC: deal with auto-host.h hack in crtstuff.c
patch -p1 -i "${srcdir}/020-gcc-auto-host-screwup.patch"
make INHIBIT_LIBC_CFLAGS='-DUSE_TM_CLONE_REGISTRY=0'
}
build() {
# Build GCC
cd $srcdir
rm -rf build-${MINGW_CHOST}
mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST}
unset CFLAGS
unset CXXFLAGS
CFLAGS="-g -O3 -fdata-sections -ffunction-sections"
CXXFLAGS="${CFLAGS}"
../${_realname}/configure \
--build="${MINGW_CHOST}" \
--host="${MINGW_CHOST}" \
--target="${_target}" \
--prefix="${MINGW_PREFIX}" \
--enable-languages="c,c++" \
--disable-werror \
--disable-lto \
--disable-nls \
--disable-libffi \
--disable-decimal-float \
--disable-libgomp \
--disable-libmudflap \
--disable-libquadmath \
--disable-libssp \
--disable-libstdcxx-pch \
--disable-libsanitizer \
--disable-threads \
--disable-tls \
--disable-shared \
--enable-multilib \
--enable-interwork \
--with-newlib \
--with-headers=yes \
--with-native-system-header-dir=/include \
--with-gnu-as \
--with-gnu-ld \
--with-system-zlib \
--with-python-dir="share/${_target}-${_realname}" \
--with-libelf \
--with-{gmp,mpfr,mpc,isl,cloog}="${MINGW_PREFIX}" \
--disable-isl-version-check \
--disable-cloog-version-check \
--with-multilib-list="armv6-m,armv7-m,armv7e-m,armv7-r" \
--with-host-libstdcxx="-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm" \
--with-sysroot="${MINGW_PREFIX}"
make
cd ${srcdir}/gcc-${pkgver}/gcc-build-${MINGW_CHOST}
export CFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections'
export CXXFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections'
_build_gcc
# Build libstdc++ without exceptions support (the 'nano' variant)
cd ${srcdir}/gcc-${pkgver}/gcc-build-nano-${MINGW_CHOST}
export CFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections -fno-exceptions'
export CXXFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections -fno-exceptions'
_build_gcc
}
package() {
cd ${srcdir}/build-${MINGW_CHOST}
make -j1 DESTDIR=${pkgdir} install
cd ${srcdir}/gcc-${pkgver}/gcc-build-${MINGW_CHOST}
# Remove files that conflict with host
rm -rf "${pkgdir}${MINGW_PREFIX}/share/info"
make DESTDIR="${pkgdir}" install
cd ${srcdir}/gcc-${pkgver}/gcc-build-nano-${MINGW_CHOST}
mkdir ${pkgdir}/nano-install-${MINGW_CHOST}
make DESTDIR="${pkgdir}/nano-install-${MINGW_CHOST}" install
cd ${pkgdir}${MINGW_PREFIX}
# we need only libstdc nano files
multilibs=($(bin/${_target}-gcc -print-multi-lib 2>/dev/null))
for multilib in "${multilibs[@]}"; do
dir="${multilib%%;*}"
from_dir=${pkgdir}/nano-install-${MINGW_CHOST}${MINGW_PREFIX}/${_target}/lib/"$dir"
to_dir=${_target}/lib/"$dir"
cp -f "$from_dir"/libstdc++.a "$to_dir"/libstdc++_nano.a
cp -f "$from_dir"/libsupc++.a "$to_dir"/libsupc++_nano.a
done
rm -r ${pkgdir}/nano-install-${MINGW_CHOST}
# strip target binaries
find lib/gcc/${_target}/${pkgver} ${_target}/lib -type f -and \( -name \*.a -or -name \*.o \) -exec ${_target}-objcopy -R .comment -R .note -R .debug_info -R .debug_aranges -R .debug_pubnames -R .debug_pubtypes -R .debug_abbrev -R .debug_line -R .debug_str -R .debug_ranges -R .debug_loc '{}' \;
# strip host binaries
find bin/ lib/gcc/${_target}/${pkgver} -type f -and \( -executable \) -exec strip '{}' \;
# Remove files that conflict with host gcc package
rm -r share/man/man7
rm -r share/info
}

View File

@@ -1,20 +0,0 @@
--- ./gdb/gdb/windows-termcap.c.orig 2014-11-08 13:40:54.276747600 -0500
+++ ./gdb/gdb/windows-termcap.c 2014-11-08 13:41:58.879846600 -0500
@@ -56,7 +56,7 @@
{
return NULL;
}
-
+/*
int
tputs (char *string, int nlines, int (*outfun) ())
{
@@ -65,7 +65,7 @@
return 0;
}
-
+*/
char *
tgoto (const char *cap, int col, int row)
{

View File

@@ -1,4 +1,5 @@
# Maintainer: Carlos Antunes <cmantunes@gmail.com>
# Maintainer: fauxpark <fauxpark@gmail.com>
# Contributed by: nanodude
_realname=gdb
@@ -6,62 +7,51 @@ _target=arm-none-eabi
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}")
pkgver=7.6.0
pkgver=9.2
pkgrel=1
pkgdesc="GNU Tools for ARM Embedded Processors - GDB (mingw-w64)"
pkgdesc='GNU Tools for ARM Embedded Processors - GDB (mingw-w64)'
arch=('any')
url="https://launchpad.net/gcc-arm-embedded"
license=('GPL' 'Various')
license=('GPL')
url='https://www.gnu.org/software/gdb/'
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
depends=("${MINGW_PACKAGE_PREFIX}-readline"
"${MINGW_PACKAGE_PREFIX}-zlib")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
options=('staticlibs' '!debug' 'strip')
source=('gcc-arm-embedded.tar.bz2::https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q3-update/+download/gcc-arm-none-eabi-4_8-2014q3-20140805-src.tar.bz2'
'10-remove-duplicate-tputs.patch')
sha256sums=('09519946642d5366ab739a89d3388b2ea333cd7dc50192bab3736a9593af83e6'
'80c719e0d91b4c712e03a2dd7f2d5197a16d32465d4514d904f4c910cfddb997')
noextract=('gcc-arm-embedded.tar.bz2')
source=(https://ftp.gnu.org/gnu/${_realname}/${_realname}-${pkgver}.tar.xz{,.sig})
sha256sums=(
'360cd7ae79b776988e89d8f9a01c985d0b1fa21c767a4295e5f88cb49175c555'
'SKIP'
)
validpgpkeys=('F40ADB902B24264AA42E50BF92EDB04BFF325CF3') # Joel Brobecker
prepare() {
# Extract packages from archive
rm -rf ${srcdir}/tmp
mkdir ${srcdir}/tmp && cd ${srcdir}/tmp
tar xvf ../../gcc-arm-embedded.tar.bz2 --strip-components=2
cd ${srcdir}/${_realname}-${pkgver}
# Copy and extract GDB package
cp gdb.tar.bz2 ${srcdir}
cd ${srcdir}
tar xvf gdb.tar.bz2
# GDB: remove duplicate tputs
patch -p1 -i "${srcdir}/10-remove-duplicate-tputs.patch"
mkdir ${_realname}-build
}
build() {
# Build GDB
cd $srcdir
rm -rf build-${MINGW_CHOST}
mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST}
../${_realname}/configure \
--build="${MINGW_CHOST}" \
--host="${MINGW_CHOST}" \
--target="${_target}" \
--prefix="${MINGW_PREFIX}" \
--disable-werror \
--disable-nls \
--with-system-readline
make
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
../configure \
--build=${MINGW_CHOST} \
--prefix=${MINGW_PREFIX} \
--target=${_target} \
--disable-nls \
--disable-debug \
--disable-dependency-tracking \
--disable-binutils \
--disable-libssp \
--disable-install-libbfd \
--disable-install-libiberty \
--with-system-readline
make
}
package() {
cd ${srcdir}/build-${MINGW_CHOST}
make -j1 DESTDIR=${pkgdir} install
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
# Remove files that conflict with host
rm -rf "${pkgdir}${MINGW_PREFIX}/share/info"
rm -rf "${pkgdir}${MINGW_PREFIX}/share/gdb"
rm -rf "${pkgdir}${MINGW_PREFIX}/include/gdb/jit-reader.h"
rm -rf "${pkgdir}${MINGW_PREFIX}/lib/libiberty.a"
make DESTDIR="$pkgdir" install-gdb
cd ${pkgdir}${MINGW_PREFIX}
# Remove files that conflict with native gdb
rm -rf include share/gdb share/info
}

View File

@@ -1,13 +0,0 @@
--- newlib-2.1.0/newlib/libc/include/sys/config.h.orig 2014-11-03 14:00:09.151452400 -0500
+++ newlib-2.1.0/newlib/libc/include/sys/config.h 2014-11-03 13:59:47.444421100 -0500
@@ -8,6 +8,10 @@
#define MALLOC_ALIGNMENT 16
#endif
+#if defined(__arm__) || defined(__thumb__)
+#define __DYNAMIC_REENT__
+#endif
+
/* exceptions first */
#if defined(__H8500__) || defined(__W65__)
#define __SMALL_BITFIELDS

View File

@@ -1,11 +0,0 @@
--- src/newlib/libgloss/arm/configure.orig 2014-11-05 17:48:37.573856400 -0500
+++ src/newlib/libgloss/arm/configure 2014-11-05 17:49:42.736954500 -0500
@@ -2551,7 +2551,7 @@
-host_makefile_frag=${srcdir}/../config/default.mh
+host_makefile_frag=`cd $srcdir/../config;pwd`/default.mh
host_makefile_frag_path=$host_makefile_frag

View File

@@ -1,424 +0,0 @@
--- gcc/graphite-clast-to-gimple.c.orig 2014-11-04 18:42:39.422980400 -0500
+++ gcc/graphite-clast-to-gimple.c 2014-11-04 21:27:23.628640600 -0500
@@ -28,6 +28,7 @@
#include <isl/constraint.h>
#include <isl/ilp.h>
#include <isl/aff.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -851,18 +852,18 @@
static void
compute_bounds_for_param (scop_p scop, int param, mpz_t low, mpz_t up)
{
- isl_int v;
+ isl_val *v;
isl_aff *aff = isl_aff_zero_on_domain
(isl_local_space_from_space (isl_set_get_space (scop->context)));
aff = isl_aff_add_coefficient_si (aff, isl_dim_param, param, 1);
- isl_int_init (v);
- isl_set_min (scop->context, aff, &v);
- isl_int_get_gmp (v, low);
- isl_set_max (scop->context, aff, &v);
- isl_int_get_gmp (v, up);
- isl_int_clear (v);
+ v = isl_set_min_val (scop->context, aff);
+ isl_val_get_num_gmp (v, low);
+ isl_val_free (v);
+ v = isl_set_max_val (scop->context, aff);
+ isl_val_get_num_gmp (v, up);
+ isl_val_free (v);
isl_aff_free (aff);
}
@@ -881,8 +882,7 @@
isl_set *domain;
isl_aff *dimension;
isl_local_space *local_space;
- isl_int isl_value;
- enum isl_lp_result lp_result;
+ isl_val *isl_value;
domain = isl_set_copy (isl_set_from_cloog_domain (loop->domain));
local_space = isl_local_space_from_space (isl_set_get_space (domain));
@@ -891,17 +891,12 @@
isl_set_dim (domain, isl_dim_set) - 1,
1);
- isl_int_init (isl_value);
-
- lp_result = isl_set_min (domain, dimension, &isl_value);
- assert (lp_result == isl_lp_ok);
- isl_int_get_gmp (isl_value, low);
-
- lp_result = isl_set_max (domain, dimension, &isl_value);
- assert (lp_result == isl_lp_ok);
- isl_int_get_gmp (isl_value, up);
-
- isl_int_clear (isl_value);
+ isl_value = isl_set_min_val (domain, dimension);
+ isl_val_get_num_gmp (isl_value, low);
+ isl_val_free (isl_value);
+ isl_value = isl_set_max_val (domain, dimension);
+ isl_val_get_num_gmp (isl_value, up);
+ isl_val_free (isl_value);
isl_set_free (domain);
isl_aff_free (dimension);
}
--- gcc/graphite-interchange.c.orig 2014-11-04 18:43:05.876102400 -0500
+++ gcc/graphite-interchange.c 2014-11-04 21:27:23.618640600 -0500
@@ -29,6 +29,7 @@
#include <isl/map.h>
#include <isl/union_map.h>
#include <isl/ilp.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -71,13 +72,13 @@
isl_local_space *ls = isl_local_space_from_space (isl_map_get_space (map));
unsigned offset, nsubs;
int i;
- isl_int size, subsize;
+ isl_ctx *ct;
+
+ isl_val *size, *subsize, *size1;
res = isl_equality_alloc (ls);
- isl_int_init (size);
- isl_int_set_ui (size, 1);
- isl_int_init (subsize);
- isl_int_set_ui (subsize, 1);
+ ct = isl_local_space_get_ctx (ls);
+ size = isl_val_int_from_ui (ct, 1);
nsubs = isl_set_dim (pdr->extent, isl_dim_set);
/* -1 for the already included L dimension. */
@@ -90,18 +91,17 @@
isl_space *dc;
isl_aff *aff;
- res = isl_constraint_set_coefficient (res, isl_dim_out, offset + i, size);
-
+ size1 = isl_val_copy (size);
+ res = isl_constraint_set_coefficient_val (res, isl_dim_out, offset + i, size);
dc = isl_set_get_space (pdr->extent);
aff = isl_aff_zero_on_domain (isl_local_space_from_space (dc));
aff = isl_aff_set_coefficient_si (aff, isl_dim_in, i, 1);
- isl_set_max (pdr->extent, aff, &subsize);
+ subsize = isl_set_max_val (pdr->extent, aff);
isl_aff_free (aff);
- isl_int_mul (size, size, subsize);
+ size = isl_val_mul (size1, subsize);
}
- isl_int_clear (subsize);
- isl_int_clear (size);
+ isl_val_free (size);
return res;
}
@@ -118,7 +118,7 @@
isl_aff *aff;
isl_space *dc;
isl_constraint *lma, *c;
- isl_int islstride;
+ isl_val *islstride;
graphite_dim_t time_depth;
unsigned offset, nt;
unsigned i;
@@ -231,10 +231,9 @@
aff = isl_aff_zero_on_domain (isl_local_space_from_space (dc));
aff = isl_aff_set_coefficient_si (aff, isl_dim_in, offset - 1, -1);
aff = isl_aff_set_coefficient_si (aff, isl_dim_in, offset + offset - 1, 1);
- isl_int_init (islstride);
- isl_set_max (set, aff, &islstride);
- isl_int_get_gmp (islstride, stride);
- isl_int_clear (islstride);
+ islstride = isl_set_max_val (set, aff);
+ isl_val_get_num_gmp (islstride, stride);
+ isl_val_free (islstride);
isl_aff_free (aff);
isl_set_free (set);
--- gcc/graphite-optimize-isl.c.orig 2014-11-04 18:42:39.462980500 -0500
+++ gcc/graphite-optimize-isl.c 2014-11-04 21:31:43.873183200 -0500
@@ -252,6 +252,7 @@
DimToVectorize can be devided by VectorWidth. The default VectorWidth is
currently constant and not yet target specific. This function does not reason
about parallelism. */
+
static isl_map *
getPrevectorMap(isl_ctx *ctx, int DimToVectorize,
int ScheduleDimensions,
@@ -265,8 +266,9 @@
isl_aff *Aff;
int PointDimension; /* ip */
int TileDimension; /* it */
- isl_int VectorWidthMP;
+ isl_val *VectorWidthMP;
int i;
+ isl_ctx *ct;
/* assert (0 <= DimToVectorize && DimToVectorize < ScheduleDimensions);*/
@@ -296,10 +298,10 @@
Aff = isl_aff_zero_on_domain(LocalSpaceRange);
Aff = isl_aff_set_constant_si(Aff, VectorWidth);
Aff = isl_aff_set_coefficient_si(Aff, isl_dim_in, TileDimension, 1);
- isl_int_init(VectorWidthMP);
- isl_int_set_si(VectorWidthMP, VectorWidth);
- Aff = isl_aff_mod(Aff, VectorWidthMP);
- isl_int_clear(VectorWidthMP);
+
+ ct = isl_aff_get_ctx(Aff);
+ VectorWidthMP = isl_val_int_from_si(ct, VectorWidth);
+ Aff = isl_aff_mod_val(Aff, VectorWidthMP);
Modulo = isl_pw_aff_zero_set(isl_pw_aff_from_aff(Aff));
TilingMap = isl_map_intersect_range(TilingMap, Modulo);
@@ -365,7 +367,7 @@
{
for (i = ScheduleDimensions - 1 ; i >= 0 ; i--)
{
- if (isl_band_member_is_zero_distance(Band, i))
+ if (isl_band_member_is_coincident(Band, i))
{
isl_map *TileMap;
isl_union_map *TileUMap;
--- gcc/graphite-poly.c.orig 2014-11-04 18:42:39.565982500 -0500
+++ gcc/graphite-poly.c 2014-11-04 21:27:23.608640600 -0500
@@ -28,6 +28,7 @@
#include <isl/constraint.h>
#include <isl/ilp.h>
#include <isl/aff.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -1021,10 +1022,7 @@
isl_set *transdomain;
isl_space *dc;
isl_aff *aff;
- isl_int isllb, islub;
-
- isl_int_init (isllb);
- isl_int_init (islub);
+ isl_val *isllb, *islub;
/* Map the iteration domain through the current scatter, and work
on the resulting set. */
@@ -1038,15 +1036,14 @@
/* And find the min/max for that function. */
/* XXX isl check results? */
- isl_set_min (transdomain, aff, &isllb);
- isl_set_max (transdomain, aff, &islub);
+ isllb = isl_set_min_val (transdomain, aff);
+ islub = isl_set_max_val (transdomain, aff);
- isl_int_sub (islub, islub, isllb);
- isl_int_add_ui (islub, islub, 1);
- isl_int_get_gmp (islub, res);
+ islub = isl_val_sub (islub, isllb);
+ islub = isl_val_add_ui (islub, 1);
+ isl_val_get_num_gmp (islub, res);
- isl_int_clear (isllb);
- isl_int_clear (islub);
+ isl_val_free (islub);
isl_aff_free (aff);
isl_set_free (transdomain);
}
--- gcc/graphite-sese-to-poly.c.orig 2014-11-04 18:42:39.730983000 -0500
+++ gcc/graphite-sese-to-poly.c 2014-11-04 21:27:23.598640600 -0500
@@ -26,7 +26,7 @@
#include <isl/union_map.h>
#include <isl/constraint.h>
#include <isl/aff.h>
-#include <cloog/cloog.h>
+#include <isl/val_gmp.h>
#include <cloog/cloog.h>
#include <cloog/isl/domain.h>
#endif
@@ -46,7 +46,6 @@
#include "graphite-poly.h"
#include "graphite-sese-to-poly.h"
-
/* Assigns to RES the value of the INTEGER_CST T. */
static inline void
@@ -461,13 +460,11 @@
int i;
int nb_iterators = pbb_dim_iter_domain (pbb);
int used_scattering_dimensions = nb_iterators * 2 + 1;
- isl_int val;
+ isl_val *val;
isl_space *dc, *dm;
gcc_assert (scattering_dimensions >= used_scattering_dimensions);
- isl_int_init (val);
-
dc = isl_set_get_space (pbb->domain);
dm = isl_space_add_dims (isl_space_from_domain (dc),
isl_dim_out, scattering_dimensions);
@@ -481,12 +478,10 @@
isl_constraint *c = isl_equality_alloc
(isl_local_space_from_space (isl_map_get_space (pbb->schedule)));
- if (0 != isl_aff_get_coefficient (static_sched, isl_dim_in,
- i / 2, &val))
- gcc_unreachable ();
+ val = isl_aff_get_coefficient_val (static_sched, isl_dim_in, i / 2);
- isl_int_neg (val, val);
- c = isl_constraint_set_constant (c, val);
+ val = isl_val_neg (val);
+ c = isl_constraint_set_constant_val (c, val);
c = isl_constraint_set_coefficient_si (c, isl_dim_out, i, 1);
pbb->schedule = isl_map_add_constraint (pbb->schedule, c);
}
@@ -500,8 +495,6 @@
}
}
- isl_int_clear (val);
-
pbb->transformed = isl_map_copy (pbb->schedule);
}
@@ -681,12 +674,12 @@
isl_local_space *ls = isl_local_space_from_space (isl_space_copy (space));
isl_aff *aff = isl_aff_zero_on_domain (ls);
isl_set *dom = isl_set_universe (space);
- isl_int v;
+ isl_val *v;
+ isl_ctx *ct;
- isl_int_init (v);
- isl_int_set_gmp (v, g);
- aff = isl_aff_add_constant (aff, v);
- isl_int_clear (v);
+ ct = isl_aff_get_ctx (aff);
+ v = isl_val_int_from_gmp (ct, g);
+ aff = isl_aff_add_constant_val (aff, v);
return isl_pw_aff_alloc (dom, aff);
}
@@ -709,18 +702,16 @@
/* Compute pwaff mod 2^width. */
+extern isl_ctx *the_isl_ctx;
+
static isl_pw_aff *
wrap (isl_pw_aff *pwaff, unsigned width)
{
- isl_int mod;
-
- isl_int_init (mod);
- isl_int_set_si (mod, 1);
- isl_int_mul_2exp (mod, mod, width);
-
- pwaff = isl_pw_aff_mod (pwaff, mod);
+ isl_val *mod;
- isl_int_clear (mod);
+ mod = isl_val_int_from_ui(the_isl_ctx, width);
+ mod = isl_val_2exp (mod);
+ pwaff = isl_pw_aff_mod_val (pwaff, mod);
return pwaff;
}
@@ -976,11 +967,10 @@
isl_space *space;
isl_constraint *c;
int pos = isl_set_dim (outer, isl_dim_set);
- isl_int v;
+ isl_val *v;
mpz_t g;
mpz_init (g);
- isl_int_init (v);
inner = isl_set_add_dims (inner, isl_dim_set, 1);
space = isl_set_get_space (inner);
@@ -998,8 +988,8 @@
(isl_local_space_from_space(isl_space_copy (space)));
c = isl_constraint_set_coefficient_si (c, isl_dim_set, pos, -1);
tree_int_to_gmp (nb_iters, g);
- isl_int_set_gmp (v, g);
- c = isl_constraint_set_constant (c, v);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
+ c = isl_constraint_set_constant_val (c, v);
inner = isl_set_add_constraint (inner, c);
}
@@ -1053,9 +1043,9 @@
c = isl_inequality_alloc
(isl_local_space_from_space (isl_space_copy (space)));
c = isl_constraint_set_coefficient_si (c, isl_dim_set, pos, -1);
- isl_int_set_gmp (v, g);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
mpz_clear (g);
- c = isl_constraint_set_constant (c, v);
+ c = isl_constraint_set_constant_val (c, v);
inner = isl_set_add_constraint (inner, c);
}
else
@@ -1078,7 +1068,6 @@
isl_set_free (outer);
isl_space_free (space);
- isl_int_clear (v);
mpz_clear (g);
}
@@ -1342,17 +1331,15 @@
isl_space *space = isl_set_get_space (scop->context);
isl_constraint *c;
mpz_t g;
- isl_int v;
+ isl_val *v;
c = isl_inequality_alloc (isl_local_space_from_space (space));
mpz_init (g);
- isl_int_init (v);
tree_int_to_gmp (lb, g);
- isl_int_set_gmp (v, g);
- isl_int_neg (v, v);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
+ v = isl_val_neg (v);
mpz_clear (g);
- c = isl_constraint_set_constant (c, v);
- isl_int_clear (v);
+ c = isl_constraint_set_constant_val (c, v);
c = isl_constraint_set_coefficient_si (c, isl_dim_param, p, 1);
scop->context = isl_set_add_constraint (scop->context, c);
@@ -1363,17 +1350,15 @@
isl_space *space = isl_set_get_space (scop->context);
isl_constraint *c;
mpz_t g;
- isl_int v;
+ isl_val *v;
c = isl_inequality_alloc (isl_local_space_from_space (space));
mpz_init (g);
- isl_int_init (v);
tree_int_to_gmp (ub, g);
- isl_int_set_gmp (v, g);
+ v = isl_val_int_from_gmp (the_isl_ctx, g);
mpz_clear (g);
- c = isl_constraint_set_constant (c, v);
- isl_int_clear (v);
+ c = isl_constraint_set_constant_val (c, v);
c = isl_constraint_set_coefficient_si (c, isl_dim_param, p, -1);
scop->context = isl_set_add_constraint (scop->context, c);

View File

@@ -1,138 +1,153 @@
# Maintainer: Carlos Antunes <cmantunes@gmail.com>
# Maintainer: fauxpark <fauxpark@gmail.com>
# Contributed by: nanodude
_realname=newlib
_target=arm-none-eabi
_gccver=8.4.0
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}")
pkgver=2.1.0
pkgver=3.3.0
pkgrel=1
pkgdesc="GNU Tools for ARM Embedded Processors - Newlib (mingw-w64)"
pkgdesc='GNU Tools for ARM Embedded Processors - Newlib (mingw-w64)'
arch=('any')
url="https://sourceware.org/newlib/"
license=('Various')
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
depends=("${MINGW_PACKAGE_PREFIX}-${_target}-binutils")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
options=('staticlibs' '!strip' '!emptydirs')
source=('gcc-arm-embedded.tar.bz2::https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q3-update/+download/gcc-arm-none-eabi-4_8-2014q3-20140805-src.tar.bz2'
'10-newlib-arm-dynamic-reent.patch'
'20-newlib-libgloss-configure-fix.patch'
'99-gcc-isl-0.13.patch')
sha256sums=('09519946642d5366ab739a89d3388b2ea333cd7dc50192bab3736a9593af83e6'
'7522f26659a69e2f02eb37d3557f8dca08bc32ada8c797b6a812ad131c87b0ef'
'3222e2910068d413c23b2830cf2c9b7b2db210c9b98c5644db5934fee84d9808'
'8e8da71e6e6b347dd7fc7f7938bf9af22be031ad8916749fa6c368f87d8891f0')
noextract=('gcc-arm-embedded.tar.bz2')
source=(
"https://sourceware.org/pub/newlib/newlib-${pkgver}.tar.gz"
"https://ftp.gnu.org/gnu/gcc/gcc-${_gccver}/gcc-${_gccver}.tar.xz"
)
sha256sums=(
'58dd9e3eaedf519360d92d84205c3deef0b3fc286685d1c562e245914ef72c66'
'e30a6e52d10e1f27ed55104ad233c30bd1e99cfb5ff98ab022dc941edd1b2dd4'
)
noextract=("newlib-${pkgver}.tar.gz")
prepare() {
# Extract packages from archive
rm -rf ${srcdir}/tmp
mkdir ${srcdir}/tmp && cd ${srcdir}/tmp
tar xf ../../gcc-arm-embedded.tar.bz2 --strip-components=2
cd ${srcdir}
# bsdtar doesn't like the symlinks
tar -xf newlib-${pkgver}.tar.gz
# Copy and extract GCC and Newlib packages
cp gcc.tar.bz2 ${srcdir}
cp newlib.tar.bz2 ${srcdir}
cd ${srcdir}
[ -d gcc ] && rm -rf gcc
[ -d newlib ] && rm -rf newlib
tar xf gcc.tar.bz2
tar xf newlib.tar.bz2
cd ${srcdir}/gcc-${_gccver}
mkdir gcc-build-${MINGW_CHOST}
mkdir gcc-install-${MINGW_CHOST}
# Newlib
cd ${srcdir}/${_realname}
patch -p1 -i "${srcdir}/10-newlib-arm-dynamic-reent.patch"
patch -p2 -i "${srcdir}/20-newlib-libgloss-configure-fix.patch"
cd ${srcdir}/newlib-${pkgver}
mkdir {newlib,nano}-build-${MINGW_CHOST}
}
# GCC: Compatibility with isl>=0.12.2
cd "${srcdir}/gcc"
patch -p0 -i "${srcdir}/99-gcc-isl-0.13.patch"
# Newlib is required to build GCC, but GCC is also required to compile newlib
# So we must build a minimal GCC first, to avoid the circular dependency
_build_gcc() {
cd ${srcdir}/gcc-${_gccver}/gcc-build-${MINGW_CHOST}
# Build cross-compiler just to compile newlib
rm -rf "${srcdir}/compiler-${MINGW_CHOST}"
mkdir -p "${srcdir}/compiler-${MINGW_CHOST}"
cp -a "${MINGW_PREFIX}/${_target}" "${srcdir}/compiler-${MINGW_CHOST}"
cd $srcdir
rm -rf build-gcc-${MINGW_CHOST}
mkdir -p build-gcc-${MINGW_CHOST} && cd build-gcc-${MINGW_CHOST}
../gcc/configure \
--build="${MINGW_CHOST}" \
--host="${MINGW_CHOST}" \
--target="${_target}" \
--prefix="${srcdir}/compiler-${MINGW_CHOST}" \
--enable-languages="c" \
--disable-werror \
--disable-lto \
--disable-nls \
--disable-libffi \
--disable-decimal-float \
--disable-libgomp \
--disable-libmudflap \
--disable-libquadmath \
--disable-libssp \
--disable-libstdcxx-pch \
--disable-libsanitizer \
--disable-threads \
--disable-tls \
--disable-shared \
--enable-multilib \
--enable-interwork \
--with-newlib \
--without-headers \
--with-gnu-as \
--with-gnu-ld \
--with-system-zlib \
--with-{gmp,mpfr,mpc,isl,cloog}="${MINGW_PREFIX}" \
--disable-isl-version-check \
--disable-cloog-version-check \
--with-libelf \
--with-multilib-list="armv6-m,armv7-m,armv7e-m,armv7-r" \
--with-sysroot="${MINGW_PREFIX}" \
--with-build-sysroot="${srcdir}/compiler-${MINGW_CHOST}" \
--with-build-time-tools="${MINGW_PREFIX}/${_target}/bin"
make all-gcc
make -j1 install-gcc
cp -a ${MINGW_PREFIX}/${_target} ${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}
local _GCC_LDFLAGS="${LDFLAGS} -Wl,--disable-dynamicbase"
if [ "${CARCH}" = 'x86_64' ]; then
_GCC_LDFLAGS+=",--image-base=0x400000"
fi
../configure \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--prefix=/ \
--target=${_target} \
--enable-languages=c \
--disable-nls \
--disable-libssp \
--disable-shared \
--disable-threads \
--disable-libgomp \
--disable-werror \
--disable-lto \
--disable-libffi \
--disable-decimal-float \
--disable-libmudflap \
--disable-libquadmath \
--disable-libstdcxx-pch \
--disable-libsanitizer \
--disable-tls \
--enable-multilib \
--enable-interwork \
--without-headers \
--with-libelf \
--with-newlib \
--with-multilib-list=rmprofile \
--with-host-libstdcxx="-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm" \
--with-sysroot=${MINGW_PREFIX} \
--with-build-sysroot=${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST} \
--with-build-time-tools=${MINGW_PREFIX}/${_target}/bin \
LDFLAGS="${_GCC_LDFLAGS}"
make all-gcc
make DESTDIR=${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST} install-gcc
}
build() {
# Build newlib
local armgccpath="${srcdir}/compiler-${MINGW_CHOST}/bin"
if check_option "debug" "y"; then
NEWLIB_CFLAGS="-O0"
else
NEWLIB_CFLAGS="-O3"
fi
NEWLIB_CFLAGS+=" -g -ffunction-sections -fdata-sections"
# NEWLIB_CFLAGS+=" -DMALLOC_PROVIDED"
# NEWLIB_CFLAGS+=" -DREENTRANT_SYSCALLS_PROVIDED"
cd $srcdir
rm -rf build-${MINGW_CHOST}
mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST}
../${_realname}/configure \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--target=${_target} \
--prefix=${MINGW_PREFIX} \
--enable-newlib-io-pos-args \
--enable-newlib-io-c99-formats \
--enable-newlib-io-long-long \
--enable-newlib-io-float \
--enable-newlib-reent-small \
--disable-newlib-supplied-syscalls \
--disable-nls \
CFLAGS="${NEWLIB_CFLAGS}" \
PATH="${armgccpath}:${PATH}"
make PATH="${armgccpath}:${PATH}"
_build_gcc
cd ${srcdir}/newlib-${pkgver}/newlib-build-${MINGW_CHOST}
../configure \
PATH="${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}/bin:${PATH}" \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--target=${_target} \
--prefix=${MINGW_PREFIX} \
--enable-newlib-io-long-long \
--enable-newlib-io-c99-formats \
--enable-newlib-register-fini \
--enable-newlib-retargetable-locking \
--disable-newlib-supplied-syscalls \
--disable-nls
make PATH="${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}/bin:${PATH}"
cd ${srcdir}/newlib-${pkgver}/nano-build-${MINGW_CHOST}
../configure \
PATH="${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}/bin:${PATH}" \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--target=${_target} \
--prefix=${MINGW_PREFIX} \
--disable-newlib-supplied-syscalls \
--enable-newlib-reent-small \
--enable-newlib-retargetable-locking \
--disable-newlib-fvwrite-in-streamio \
--disable-newlib-fseek-optimization \
--disable-newlib-wide-orient \
--enable-newlib-nano-malloc \
--disable-newlib-unbuf-stream-opt \
--enable-lite-exit \
--enable-newlib-global-atexit \
--enable-newlib-nano-formatted-io \
--disable-nls
make PATH="${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}/bin:${PATH}"
}
package() {
local armgccpath="${srcdir}/compiler-${MINGW_CHOST}/bin"
cd ${srcdir}/build-${MINGW_CHOST}
make -j1 DESTDIR=${pkgdir} PATH="${armgccpath}:${PATH}" install
cd ${pkgdir}
# Remove files that conflict with host
rm -rf "${pkgdir}${MINGW_PREFIX}/share/info"
# make install complains if theses dirs do not already exist, for some reason
mkdir -p ${pkgdir}${MINGW_PREFIX}/${_target}/lib/arm/v5te/{hard,softfp}
mkdir -p ${pkgdir}${MINGW_PREFIX}/${_target}/lib/thumb/nofp
mkdir -p ${pkgdir}${MINGW_PREFIX}/${_target}/lib/thumb/v{6-m,7,7-m,7e-m,8-m.base,8-m.main}/nofp
mkdir -p ${pkgdir}${MINGW_PREFIX}/${_target}/lib/thumb/v{7+fp,7e-m+fp,7e-m+dp,8-m.main+fp,8-m.main+dp}/{hard,softfp}
cd ${srcdir}/newlib-${pkgver}/nano-build-${MINGW_CHOST}
make DESTDIR=${pkgdir} PATH="${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}/bin:${PATH}" install
find ${pkgdir} -regex ".*/lib\(c\|g\|rdimon\)\.a" -exec rename .a _nano.a '{}' \;
install -Dm644 -t ${pkgdir}${MINGW_PREFIX}/${_target}/include/newlib-nano ${pkgdir}${MINGW_PREFIX}/${_target}/include/newlib.h
cd ${srcdir}/newlib-${pkgver}/newlib-build-${MINGW_CHOST}
make DESTDIR=${pkgdir} PATH="${srcdir}/gcc-${_gccver}/gcc-install-${MINGW_CHOST}/bin:${PATH}" install
find ${pkgdir}${MINGW_PREFIX}/${_target}/lib \( -name "*.a" -or -name "*.o" \) -exec ${_target}-objcopy -R .comment -R .note -R .debug_info -R .debug_aranges -R .debug_pubnames -R .debug_pubtypes -R .debug_abbrev -R .debug_line -R .debug_str -R .debug_ranges -R .debug_loc '{}' \;
}

View File

@@ -3,7 +3,7 @@
_realname=arrow
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.0.0
pkgver=1.0.1
pkgrel=1
pkgdesc="Apache Arrow is a cross-language development platform for in-memory data (mingw-w64)"
arch=("any")
@@ -38,7 +38,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-clang"
"${MINGW_PACKAGE_PREFIX}-polly")
options=("staticlibs" "strip" "!buildflags")
source=(https://github.com/apache/arrow/archive/apache-arrow-${pkgver}.tar.gz)
sha256sums=('08fbd4c633c08939850d619ca0224c75d7a0526467c721c0838b8aa7efccb270')
sha256sums=('dac59f4d42416224419c020ed2e8f8371e85c1d9ff4368ed5b5c026ee28d3fd4')
cmake_build_type=release
meson_build_type=debugoptimized
@@ -77,8 +77,8 @@ build() {
-DCMAKE_BUILD_TYPE=${cmake_build_type} \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DPARQUET_BUILD_EXECUTABLES=ON \
-G "MSYS Makefiles"
make
-G Ninja
ninja
popd
[[ -d ${c_glib_build_dir} ]] && rm -rf ${c_glib_build_dir}
@@ -106,7 +106,7 @@ check() {
}
package() {
make -C ${cpp_build_dir} DESTDIR="${pkgdir}" install
DESTDIR="${pkgdir}" ninja -C ${cpp_build_dir} install
PATH=$(pwd)/${c_glib_build_dir}/arrow-glib:$(pwd)/${cpp_build_dir}/${cmake_build_type}:$PATH \
DESTDIR="${pkgdir}${MINGW_PREFIX}" \

View File

@@ -4,7 +4,7 @@ _realname=assimp
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=5.0.1
pkgrel=2
pkgrel=3
pkgdesc="Portable Open Source library to import various well-known 3D model formats in an uniform manner (mingw-w64)"
arch=('any')
license=('BSD')

View File

@@ -1,39 +1,44 @@
# Maintainer: fauxpark <fauxpark@gmail.com>
_realname=avr-binutils
pkgbase=mingw-w64-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
_realname=binutils
_target=avr
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}
pkgver=2.35
pkgrel=1
pkgrel=3
pkgdesc='GNU Binutils for the AVR target (mingw-w64)'
arch=('any')
license=('GPL')
url='https://www.gnu.org/software/binutils/binutils.html'
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
source=(
"https://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.xz"
https://ftp.gnu.org/gnu/${_realname}/${_realname}-${pkgver}.tar.xz{,.sig}
"01-avr-size.patch"
)
sha256sums=(
'1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85'
'SKIP'
'7aed303887a8541feba008943d0331dc95dd90a309575f81b7a195650e4cba1e'
)
validpgpkeys=('3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F')
prepare() {
cd ${srcdir}/binutils-${pkgver}
cd ${srcdir}/${_realname}-${pkgver}
mkdir binutils-build
mkdir ${_realname}-build
# https://github.com/archlinux/svntogit-community/blob/packages/avr-binutils/trunk/avr-size.patch
patch -p1 < ../01-avr-size.patch
patch -p1 -i ../01-avr-size.patch
}
build() {
cd ${srcdir}/binutils-${pkgver}/binutils-build
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
../configure \
--build=${MINGW_CHOST} \
--prefix=${MINGW_PREFIX} \
--target=avr \
--target=${_target} \
--disable-nls \
--disable-debug \
--disable-dependency-tracking \
@@ -42,13 +47,13 @@ build() {
}
package() {
cd ${srcdir}/binutils-${pkgver}/binutils-build
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
make DESTDIR="$pkgdir" install
cd ${pkgdir}${MINGW_PREFIX}
for info in as bfd binutils gprof ld; do
mv share/info/${info}.info share/info/avr-${info}.info
mv share/info/${info}.info share/info/${_target}-${info}.info
done
}

View File

@@ -1,38 +1,41 @@
# Maintainer: fauxpark <fauxpark@gmail.com>
_realname=avr-gcc
pkgbase=mingw-w64-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
_realname=gcc
_target=avr
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}
pkgver=8.4.0
pkgrel=1
pkgrel=3
pkgdesc='GNU compiler collection for AVR 8-bit and 32-bit microcontrollers (mingw-w64)'
arch=('any')
license=('GPL')
options=(!strip)
url='https://www.gnu.org/software/gcc/gcc.html'
options=(!strip)
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
depends=(
"${MINGW_PACKAGE_PREFIX}-avr-binutils"
"${MINGW_PACKAGE_PREFIX}-${_target}-binutils"
"${MINGW_PACKAGE_PREFIX}-gmp"
"${MINGW_PACKAGE_PREFIX}-isl"
"${MINGW_PACKAGE_PREFIX}-mpc"
"${MINGW_PACKAGE_PREFIX}-mpfr"
)
source=("https://ftp.gnu.org/gnu/gcc/gcc-${pkgver}/gcc-${pkgver}.tar.xz")
source=("https://ftp.gnu.org/gnu/${_realname}/${_realname}-${pkgver}/${_realname}-${pkgver}.tar.xz")
sha256sums=('e30a6e52d10e1f27ed55104ad233c30bd1e99cfb5ff98ab022dc941edd1b2dd4')
prepare() {
cd ${srcdir}/gcc-${pkgver}
cd ${srcdir}/${_realname}-${pkgver}
mkdir gcc-build
mkdir ${_realname}-build
}
build() {
cd ${srcdir}/gcc-${pkgver}/gcc-build
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
../configure \
--build=${MINGW_CHOST} \
--prefix=${MINGW_PREFIX} \
--target=avr \
--target=${_target} \
--enable-languages=c,c++ \
--disable-nls \
--disable-libssp \
@@ -46,14 +49,14 @@ build() {
}
package() {
cd ${srcdir}/gcc-${pkgver}/gcc-build
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
make DESTDIR="$pkgdir" install
cd ${pkgdir}${MINGW_PREFIX}
# strip debug symbols from libraries
find lib -type f -name "*.a" -exec ${MINGW_PREFIX}/bin/avr-strip --strip-debug '{}' \;
find lib -type f -name "*.a" -exec ${MINGW_PREFIX}/bin/${_target}-strip --strip-debug '{}' \;
# info and man7 files conflict with native gcc
rm -rf share/info share/man/man7

View File

@@ -1,30 +1,37 @@
# Maintainer: fauxpark <fauxpark@gmail.com>
_realname=avr-gdb
pkgbase=mingw-w64-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
_realname=gdb
_target=avr
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}
pkgver=9.2
pkgrel=1
pkgrel=3
pkgdesc='The GNU Debugger for AVR (mingw-w64)'
arch=('any')
license=('GPL')
url='https://www.gnu.org/software/gdb/'
source=("https://ftp.gnu.org/gnu/gdb/gdb-${pkgver}.tar.xz")
sha256sums=('360cd7ae79b776988e89d8f9a01c985d0b1fa21c767a4295e5f88cb49175c555')
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
source=(https://ftp.gnu.org/gnu/${_realname}/${_realname}-${pkgver}.tar.xz{,.sig})
sha256sums=(
'360cd7ae79b776988e89d8f9a01c985d0b1fa21c767a4295e5f88cb49175c555'
'SKIP'
)
validpgpkeys=('F40ADB902B24264AA42E50BF92EDB04BFF325CF3') # Joel Brobecker
prepare() {
cd ${srcdir}/gdb-${pkgver}
cd ${srcdir}/${_realname}-${pkgver}
mkdir gdb-build
mkdir ${_realname}-build
}
build() {
cd ${srcdir}/gdb-${pkgver}/gdb-build
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
../configure \
--build=${MINGW_CHOST} \
--prefix=${MINGW_PREFIX} \
--target=avr \
--target=${_target} \
--disable-nls \
--disable-debug \
--disable-dependency-tracking \
@@ -37,7 +44,7 @@ build() {
}
package() {
cd ${srcdir}/gdb-${pkgver}/gdb-build
cd ${srcdir}/${_realname}-${pkgver}/${_realname}-build
make DESTDIR="$pkgdir" install-gdb

View File

@@ -1,37 +1,40 @@
# Maintainer: fauxpark <fauxpark@gmail.com>
_realname=avr-libc
pkgbase=mingw-w64-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
_realname=libc
_target=avr
pkgbase=mingw-w64-${_target}-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_target}-${_realname}
pkgver=2.0.0
pkgrel=1
pkgrel=3
pkgdesc='The C runtime library for the AVR family of microcontrollers (mingw-w64)'
arch=('any')
license=('BSD')
url='https://savannah.nongnu.org/projects/avr-libc/'
options=(!strip)
depends=("${MINGW_PACKAGE_PREFIX}-avr-gcc")
source=("https://download.savannah.gnu.org/releases/avr-libc/avr-libc-${pkgver}.tar.bz2")
groups=("${MINGW_PACKAGE_PREFIX}-${_target}-toolchain")
depends=("${MINGW_PACKAGE_PREFIX}-${_target}-gcc")
source=("https://download.savannah.gnu.org/releases/${_target}-${_realname}/${_target}-${_realname}-${pkgver}.tar.bz2")
sha256sums=('b2dd7fd2eefd8d8646ef6a325f6f0665537e2f604ed02828ced748d49dc85b97')
prepare() {
cd ${srcdir}/avr-libc-${pkgver}
cd ${srcdir}/${_target}-${_realname}-${pkgver}
mkdir avr-libc-build
mkdir ${_realname}-build
}
build() {
cd ${srcdir}/avr-libc-${pkgver}/avr-libc-build
cd ${srcdir}/${_target}-${_realname}-${pkgver}/${_realname}-build
../configure \
--build=${MINGW_CHOST} \
--host=avr \
--host=${_target} \
--prefix=${MINGW_PREFIX}
make
}
package() {
cd ${srcdir}/${_realname}-${pkgver}/avr-libc-build
cd ${srcdir}/${_target}-${_realname}-${pkgver}/${_realname}-build
make DESTDIR="$pkgdir" install
}

View File

@@ -4,7 +4,7 @@ _realname=aws-sdk-cpp
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.7.365
pkgrel=1
pkgrel=2
pkgdesc="AWS SDK for C++ (mingw-w64)"
arch=('any')
url="https://github.com/aws/aws-sdk-cpp"
@@ -38,7 +38,7 @@ build() {
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \
-DBUILD_ONLY="config;s3;transfer" \
-DBUILD_ONLY="config;identity-management;s3;sts;transfer" \
-DENABLE_UNITY_BUILD=ON \
-DAUTORUN_UNIT_TESTS=OFF \
../${_realname}-${pkgver}

View File

@@ -1,9 +1,10 @@
# Maintainer: Diego Sogari <diego.sogari@gmail.com>
# Contributor: Konstantin Podsvirov <konstantin@podsvirov.pro>
_realname=binaryen
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=95
pkgver=96
pkgrel=1
pkgdesc="Compiler infrastructure and toolchain library for WebAssembly, in C++ (mingw-w64)"
arch=('any')
@@ -11,7 +12,7 @@ url="https://github.com/WebAssembly/binaryen"
license=('Apache')
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake")
source=("${_realname}-${pkgver}.tar.gz::https://github.com/WebAssembly/binaryen/archive/version_${pkgver}.tar.gz")
sha256sums=('d0fc0f7b5ec147a886aea7dc40a2fff7a675e970c8fc38768e1908458b97aaab')
sha256sums=('fe140191607c76f02bd0f1cc641715cefcb48e723409418c2a39a50905a4514c')
build() {
declare -a extra_config

View File

@@ -59,9 +59,9 @@ diff -urN binutils-2.27.orig/binutils/prdbg.c binutils-2.27/binutils/prdbg.c
sprintf (buf, "0x%llx", (unsigned long long) vma);
else if (unsignedp)
diff -urN binutils-2.27.orig/binutils/readelf.c binutils-2.27/binutils/readelf.c
--- binutils-2.27.orig/binutils/readelf.c 2016-08-03 09:36:51.000000000 +0200
+++ binutils-2.27/binutils/readelf.c 2016-09-21 21:13:49.240194700 +0200
@@ -1154,7 +1154,7 @@
--- binutils-2.35/binutils/readelf.c.orig 2020-07-24 11:12:19.000000000 +0200
+++ binutils-2.35/binutils/readelf.c 2020-08-26 22:30:15.008358800 +0200
@@ -1274,7 +1274,7 @@
: "%12.12lx %12.12lx ",
offset, inf);
#elif BFD_HOST_64BIT_LONG_LONG
@@ -70,15 +70,15 @@ diff -urN binutils-2.27.orig/binutils/readelf.c binutils-2.27/binutils/readelf.c
printf (do_wide
? "%16.16llx %16.16llx "
: "%12.12llx %12.12llx ",
@@ -12372,7 +12372,7 @@
{
size_t maxlen = end - data;
@@ -13927,7 +13927,7 @@
}
else
{
-#ifndef __MSVCRT__
+#if !defined(__MSVCRT__) || defined(__USE_MINGW_ANSI_STDIO)
/* PR 11128: Use two separate invocations in order to work
around bugs in the Solaris 8 implementation of printf. */
printf (" [%6tx] ", data - start);
/* PR 11128: Use two separate invocations in order to work
around bugs in the Solaris 8 implementation of printf. */
printf (" [%6tx] ", data - start);
diff -urN binutils-2.27.orig/binutils/strings.c binutils-2.27/binutils/strings.c
--- binutils-2.27.orig/binutils/strings.c 2016-08-03 09:36:51.000000000 +0200
+++ binutils-2.27/binutils/strings.c 2016-09-21 21:13:49.251195600 +0200

View File

@@ -0,0 +1,26 @@
--- binutils-2.35/ld/emultempl/pep.em.orig 2020-08-27 08:46:36.064000100 +0200
+++ binutils-2.35/ld/emultempl/pep.em 2020-08-27 09:00:44.598810700 +0200
@@ -104,19 +104,19 @@
#undef NT_EXE_IMAGE_BASE
#define NT_EXE_IMAGE_BASE \
((bfd_vma) (${move_default_addr_high} ? 0x100400000LL \
- : 0x400000LL))
+ : 0x140000000LL))
#undef NT_DLL_IMAGE_BASE
#define NT_DLL_IMAGE_BASE \
((bfd_vma) (${move_default_addr_high} ? 0x400000000LL \
- : 0x10000000LL))
+ : 0x180000000LL))
#undef NT_DLL_AUTO_IMAGE_BASE
#define NT_DLL_AUTO_IMAGE_BASE \
((bfd_vma) (${move_default_addr_high} ? 0x400000000LL \
- : 0x61300000LL))
+ : 0x1C0000000LL))
#undef NT_DLL_AUTO_IMAGE_MASK
#define NT_DLL_AUTO_IMAGE_MASK \
((bfd_vma) (${move_default_addr_high} ? 0x1ffff0000LL \
- : 0x0ffc0000LL))
+ : 0x1ffff0000LL))
#else
#undef NT_EXE_IMAGE_BASE
#define NT_EXE_IMAGE_BASE \

View File

@@ -1,31 +0,0 @@
From 40bfb9762747f8336b17c70a0173d10200fa62eb Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Thu, 27 Feb 2020 17:28:47 +1030
Subject: [PATCH] Re: PR24511, nm should not mark symbols in .init_array as "t"
PR 24511
* syms.c (bfd_decode_symclass): Reverse order of coff_section_type
and decode_section_type calls.
---
bfd/syms.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/bfd/syms.c b/bfd/syms.c
index 128cf191453..8a8b74f3f92 100644
--- a/bfd/syms.c
+++ b/bfd/syms.c
@@ -705,9 +705,9 @@ bfd_decode_symclass (asymbol *symbol)
c = 'a';
else if (symbol->section)
{
- c = decode_section_type (symbol->section);
+ c = coff_section_type (symbol->section->name);
if (c == '?')
- c = coff_section_type (symbol->section->name);
+ c = decode_section_type (symbol->section);
}
else
return '?';
--
2.18.2

View File

@@ -0,0 +1,611 @@
From 3021170f1728200d1f08c2a57af625f7a1003097 Mon Sep 17 00:00:00 2001
From: Jeremy Drake <sourceware-bugzilla@jdrake.com>
Date: Thu, 27 Aug 2020 12:58:27 +0100
Subject: [PATCH 1/3] Change the default characteristics of DLLs built by the
linker to more secure settings.
PR 19011
* emultempl/pe.em (DEFAULT_DLL_CHARACTERISTICS): Define.
(pe_dll_characteristics): Initialise to DEFAULT_DLL_CHARACTERISTICS.
(add_options): Add options to disable DLL characteristics.
(list_options): List the new options.
(handle_options): Handle the new options.
* emultempl/pep.em: Similar changes to above.
(NT_EXE_IMAGE_BASE): Default to an address above 4G.
(NT_DLL_IMAGE_BASE, NT_DLL_AUTO_IMAGE_BASE,
(NT_DLL_AUTO_IMAGE_MASK): Likewise.
* ld.texi: Document the new options.
* pe-dll.c (pe_dll_enable_reloc_section): Change to default to
true.
(generate_reloc): Do nothing if there is no reloc section.
(pe_exe_fill_sections): Only assign the reloc section contents if
the section exists.
* testsuite/ld-pe/pe.exp: Add the --disable-reloc-section flag to
the .secrel32 tests.
* testsuite/ld-scripts/provide-8.d: Expect for fail on PE targets.
* NEWS: Mention the change in DLL generation.
---
ld/ChangeLog | 23 ++++++++
ld/NEWS | 3 +
ld/emultempl/pe.em | 75 ++++++++++++++++++++----
ld/emultempl/pep.em | 91 +++++++++++++++++++++++------
ld/ld.texi | 34 ++++++++---
ld/pe-dll.c | 10 +++-
ld/testsuite/ld-pe/pe.exp | 6 +-
ld/testsuite/ld-scripts/provide-8.d | 2 +-
8 files changed, 201 insertions(+), 43 deletions(-)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4ba491d3c1..0a65318c46 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,26 @@
+2020-08-27 Jeremy Drake <sourceware-bugzilla@jdrake.com>
+
+ PR 19011
+ * emultempl/pe.em (DEFAULT_DLL_CHARACTERISTICS): Define.
+ (pe_dll_characteristics): Initialise to DEFAULT_DLL_CHARACTERISTICS.
+ (add_options): Add options to disable DLL characteristics.
+ (list_options): List the new options.
+ (handle_options): Handle the new options.
+ * emultempl/pep.em: Similar changes to above.
+ (NT_EXE_IMAGE_BASE): Default to an address above 4G.
+ (NT_DLL_IMAGE_BASE, NT_DLL_AUTO_IMAGE_BASE,
+ (NT_DLL_AUTO_IMAGE_MASK): Likewise.
+ * ld.texi: Document the new options.
+ * pe-dll.c (pe_dll_enable_reloc_section): Change to default to
+ true.
+ (generate_reloc): Do nothing if there is no reloc section.
+ (pe_exe_fill_sections): Only assign the reloc section contents if
+ the section exists.
+ * testsuite/ld-pe/pe.exp: Add the --disable-reloc-section flag to
+ the .secrel32 tests.
+ * testsuite/ld-scripts/provide-8.d: Expect for fail on PE targets.
+ * NEWS: Mention the change in DLL generation.
+
2020-07-24 Nick Clifton <nickc@redhat.com>
2.35 Release:
diff --git a/ld/NEWS b/ld/NEWS
index eb2cff12ea..004e7c5d41 100644
--- a/ld/NEWS
+++ b/ld/NEWS
@@ -1,5 +1,8 @@
-*- text -*-
+* The creation of PE format DLLs now defaults to using a more secure set of DLL
+ characteristics.
+
Changes in 2.35:
* X86 NaCl target support is removed.
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index 3899c9d92c..f45518eafb 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -104,6 +104,9 @@ fragment <<EOF
#define DEFAULT_PSEUDO_RELOC_VERSION 1
#endif
+#define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
+ | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
+
#if defined(TARGET_IS_i386pe) || ! defined(DLL_SUPPORT)
#define PE_DEF_SUBSYSTEM 3
#else
@@ -129,7 +132,7 @@ static flagword real_flags = 0;
static int support_old_code = 0;
static char * thumb_entry_symbol = NULL;
static lang_assignment_statement_type *image_base_statement = 0;
-static unsigned short pe_dll_characteristics = 0;
+static unsigned short pe_dll_characteristics = DEFAULT_DLL_CHARACTERISTICS;
static bfd_boolean insert_timestamp = TRUE;
static const char *emit_build_id;
@@ -271,6 +274,17 @@ fragment <<EOF
#define OPTION_NO_INSERT_TIMESTAMP (OPTION_INSERT_TIMESTAMP + 1)
#define OPTION_BUILD_ID (OPTION_NO_INSERT_TIMESTAMP + 1)
#define OPTION_ENABLE_RELOC_SECTION (OPTION_BUILD_ID + 1)
+#define OPTION_DISABLE_RELOC_SECTION (OPTION_ENABLE_RELOC_SECTION + 1)
+/* DLL Characteristics flags. */
+#define OPTION_DISABLE_DYNAMIC_BASE (OPTION_DISABLE_RELOC_SECTION + 1)
+#define OPTION_DISABLE_FORCE_INTEGRITY (OPTION_DISABLE_DYNAMIC_BASE + 1)
+#define OPTION_DISABLE_NX_COMPAT (OPTION_DISABLE_FORCE_INTEGRITY + 1)
+#define OPTION_DISABLE_NO_ISOLATION (OPTION_DISABLE_NX_COMPAT + 1)
+#define OPTION_DISABLE_NO_SEH (OPTION_DISABLE_NO_ISOLATION + 1)
+#define OPTION_DISABLE_NO_BIND (OPTION_DISABLE_NO_SEH + 1)
+#define OPTION_DISABLE_WDM_DRIVER (OPTION_DISABLE_NO_BIND + 1)
+#define OPTION_DISABLE_TERMINAL_SERVER_AWARE \
+ (OPTION_DISABLE_WDM_DRIVER + 1)
static void
gld${EMULATION_NAME}_add_options
@@ -342,15 +356,24 @@ gld${EMULATION_NAME}_add_options
{"enable-long-section-names", no_argument, NULL, OPTION_ENABLE_LONG_SECTION_NAMES},
{"disable-long-section-names", no_argument, NULL, OPTION_DISABLE_LONG_SECTION_NAMES},
{"dynamicbase",no_argument, NULL, OPTION_DYNAMIC_BASE},
+ {"disable-dynamicbase",no_argument, NULL, OPTION_DISABLE_DYNAMIC_BASE},
{"forceinteg", no_argument, NULL, OPTION_FORCE_INTEGRITY},
+ {"disable-forceinteg", no_argument, NULL, OPTION_DISABLE_FORCE_INTEGRITY},
{"nxcompat", no_argument, NULL, OPTION_NX_COMPAT},
+ {"disable-nxcompat", no_argument, NULL, OPTION_DISABLE_NX_COMPAT},
{"no-isolation", no_argument, NULL, OPTION_NO_ISOLATION},
+ {"disable-no-isolation", no_argument, NULL, OPTION_DISABLE_NO_ISOLATION},
{"no-seh", no_argument, NULL, OPTION_NO_SEH},
+ {"disable-no-seh", no_argument, NULL, OPTION_DISABLE_NO_SEH},
{"no-bind", no_argument, NULL, OPTION_NO_BIND},
+ {"disable-no-bind", no_argument, NULL, OPTION_DISABLE_NO_BIND},
{"wdmdriver", no_argument, NULL, OPTION_WDM_DRIVER},
+ {"disable-wdmdriver", no_argument, NULL, OPTION_DISABLE_WDM_DRIVER},
{"tsaware", no_argument, NULL, OPTION_TERMINAL_SERVER_AWARE},
+ {"disable-tsaware", no_argument, NULL, OPTION_DISABLE_TERMINAL_SERVER_AWARE},
{"build-id", optional_argument, NULL, OPTION_BUILD_ID},
{"enable-reloc-section", no_argument, NULL, OPTION_ENABLE_RELOC_SECTION},
+ {"disable-reloc-section", no_argument, NULL, OPTION_DISABLE_RELOC_SECTION},
{NULL, no_argument, NULL, 0}
};
@@ -414,7 +437,7 @@ static definfo init[] =
D(SizeOfHeapReserve,"__size_of_heap_reserve__", 0x100000, FALSE),
D(SizeOfHeapCommit,"__size_of_heap_commit__", 0x1000, FALSE),
D(LoaderFlags,"__loader_flags__", 0x0, FALSE),
- D(DllCharacteristics, "__dll_characteristics__", 0x0, FALSE),
+ D(DllCharacteristics, "__dll_characteristics__", DEFAULT_DLL_CHARACTERISTICS, FALSE),
{ NULL, 0, 0, NULL, 0 , FALSE}
};
@@ -483,18 +506,21 @@ gld_${EMULATION_NAME}_list_options (FILE *file)
executable image files\n"));
fprintf (file, _(" --disable-long-section-names Never use long COFF section names, even\n\
in object files\n"));
- fprintf (file, _(" --dynamicbase Image base address may be relocated using\n\
+ fprintf (file, _(" --[disable-]dynamicbase Image base address may be relocated using\n\
address space layout randomization (ASLR)\n"));
fprintf (file, _(" --enable-reloc-section Create the base relocation table\n"));
- fprintf (file, _(" --forceinteg Code integrity checks are enforced\n"));
- fprintf (file, _(" --nxcompat Image is compatible with data execution prevention\n"));
- fprintf (file, _(" --no-isolation Image understands isolation but do not isolate the image\n"));
- fprintf (file, _(" --no-seh Image does not use SEH. No SE handler may\n\
+ fprintf (file, _(" --disable-reloc-section Do not create the base relocation table\n"));
+ fprintf (file, _(" --[disable-]forceinteg Code integrity checks are enforced\n"));
+ fprintf (file, _(" --[disable-]nxcompat Image is compatible with data execution\n\
+ prevention\n"));
+ fprintf (file, _(" --[disable-]no-isolation Image understands isolation but do not\n\
+ isolate the image\n"));
+ fprintf (file, _(" --[disable-]no-seh Image does not use SEH. No SE handler may\n\
be called in this image\n"));
- fprintf (file, _(" --no-bind Do not bind this image\n"));
- fprintf (file, _(" --wdmdriver Driver uses the WDM model\n"));
- fprintf (file, _(" --tsaware Image is Terminal Server aware\n"));
- fprintf (file, _(" --build-id[=STYLE] Generate build ID\n"));
+ fprintf (file, _(" --[disable-]no-bind Do not bind this image\n"));
+ fprintf (file, _(" --[disable-]wdmdriver Driver uses the WDM model\n"));
+ fprintf (file, _(" --[disable-]tsaware Image is Terminal Server aware\n"));
+ fprintf (file, _(" --build-id[=STYLE] Generate build ID\n"));
}
@@ -862,27 +888,54 @@ gld${EMULATION_NAME}_handle_option (int optc)
case OPTION_ENABLE_RELOC_SECTION:
pe_dll_enable_reloc_section = 1;
break;
+ case OPTION_DISABLE_RELOC_SECTION:
+ pe_dll_enable_reloc_section = 0;
+ /* fall through */
+ case OPTION_DISABLE_DYNAMIC_BASE:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE;
+ break;
case OPTION_FORCE_INTEGRITY:
pe_dll_characteristics |= IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY;
break;
+ case OPTION_DISABLE_FORCE_INTEGRITY:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY;
+ break;
case OPTION_NX_COMPAT:
pe_dll_characteristics |= IMAGE_DLL_CHARACTERISTICS_NX_COMPAT;
break;
+ case OPTION_DISABLE_NX_COMPAT:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_NX_COMPAT;
+ break;
case OPTION_NO_ISOLATION:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_NO_ISOLATION;
break;
+ case OPTION_DISABLE_NO_ISOLATION:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_NO_ISOLATION;
+ break;
case OPTION_NO_SEH:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_NO_SEH;
break;
+ case OPTION_DISABLE_NO_SEH:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_NO_SEH;
+ break;
case OPTION_NO_BIND:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_NO_BIND;
break;
+ case OPTION_DISABLE_NO_BIND:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_NO_BIND;
+ break;
case OPTION_WDM_DRIVER:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_WDM_DRIVER;
break;
+ case OPTION_DISABLE_WDM_DRIVER:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_WDM_DRIVER;
+ break;
case OPTION_TERMINAL_SERVER_AWARE:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE;
break;
+ case OPTION_DISABLE_TERMINAL_SERVER_AWARE:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE;
+ break;
case OPTION_BUILD_ID:
free ((char *) emit_build_id);
emit_build_id = NULL;
diff --git a/ld/emultempl/pep.em b/ld/emultempl/pep.em
index a0a7023e70..7d9395168d 100644
--- a/ld/emultempl/pep.em
+++ b/ld/emultempl/pep.em
@@ -99,24 +99,28 @@ fragment <<EOF
#define DLL_SUPPORT
#endif
+#define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
+ | IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA \
+ | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
+
#if defined(TARGET_IS_i386pep) || ! defined(DLL_SUPPORT)
#define PE_DEF_SUBSYSTEM 3
#undef NT_EXE_IMAGE_BASE
#define NT_EXE_IMAGE_BASE \
((bfd_vma) (${move_default_addr_high} ? 0x100400000LL \
- : 0x400000LL))
+ : 0x140000000LL))
#undef NT_DLL_IMAGE_BASE
#define NT_DLL_IMAGE_BASE \
((bfd_vma) (${move_default_addr_high} ? 0x400000000LL \
- : 0x10000000LL))
+ : 0x180000000LL))
#undef NT_DLL_AUTO_IMAGE_BASE
#define NT_DLL_AUTO_IMAGE_BASE \
((bfd_vma) (${move_default_addr_high} ? 0x400000000LL \
- : 0x61300000LL))
+ : 0x1C0000000LL))
#undef NT_DLL_AUTO_IMAGE_MASK
#define NT_DLL_AUTO_IMAGE_MASK \
((bfd_vma) (${move_default_addr_high} ? 0x1ffff0000LL \
- : 0x0ffc0000LL))
+ : 0x1ffff0000LL))
#else
#undef NT_EXE_IMAGE_BASE
#define NT_EXE_IMAGE_BASE \
@@ -147,7 +151,7 @@ static int pep_subsystem = ${SUBSYSTEM};
static flagword real_flags = IMAGE_FILE_LARGE_ADDRESS_AWARE;
static int support_old_code = 0;
static lang_assignment_statement_type *image_base_statement = 0;
-static unsigned short pe_dll_characteristics = 0;
+static unsigned short pe_dll_characteristics = DEFAULT_DLL_CHARACTERISTICS;
static bfd_boolean insert_timestamp = TRUE;
static const char *emit_build_id;
@@ -248,7 +252,17 @@ enum options
OPTION_NO_INSERT_TIMESTAMP,
OPTION_TERMINAL_SERVER_AWARE,
OPTION_BUILD_ID,
- OPTION_ENABLE_RELOC_SECTION
+ OPTION_ENABLE_RELOC_SECTION,
+ OPTION_DISABLE_RELOC_SECTION,
+ OPTION_DISABLE_HIGH_ENTROPY_VA,
+ OPTION_DISABLE_DYNAMIC_BASE,
+ OPTION_DISABLE_FORCE_INTEGRITY,
+ OPTION_DISABLE_NX_COMPAT,
+ OPTION_DISABLE_NO_ISOLATION,
+ OPTION_DISABLE_NO_SEH,
+ OPTION_DISABLE_NO_BIND,
+ OPTION_DISABLE_WDM_DRIVER,
+ OPTION_DISABLE_TERMINAL_SERVER_AWARE
};
static void
@@ -327,6 +341,16 @@ gld${EMULATION_NAME}_add_options
{"no-insert-timestamp", no_argument, NULL, OPTION_NO_INSERT_TIMESTAMP},
{"build-id", optional_argument, NULL, OPTION_BUILD_ID},
{"enable-reloc-section", no_argument, NULL, OPTION_ENABLE_RELOC_SECTION},
+ {"disable-reloc-section", no_argument, NULL, OPTION_DISABLE_RELOC_SECTION},
+ {"disable-high-entropy-va", no_argument, NULL, OPTION_DISABLE_HIGH_ENTROPY_VA},
+ {"disable-dynamicbase",no_argument, NULL, OPTION_DISABLE_DYNAMIC_BASE},
+ {"disable-forceinteg", no_argument, NULL, OPTION_DISABLE_FORCE_INTEGRITY},
+ {"disable-nxcompat", no_argument, NULL, OPTION_DISABLE_NX_COMPAT},
+ {"disable-no-isolation", no_argument, NULL, OPTION_DISABLE_NO_ISOLATION},
+ {"disable-no-seh", no_argument, NULL, OPTION_DISABLE_NO_SEH},
+ {"disable-no-bind", no_argument, NULL, OPTION_DISABLE_NO_BIND},
+ {"disable-wdmdriver", no_argument, NULL, OPTION_DISABLE_WDM_DRIVER},
+ {"disable-tsaware", no_argument, NULL, OPTION_DISABLE_TERMINAL_SERVER_AWARE},
{NULL, no_argument, NULL, 0}
};
@@ -384,7 +408,7 @@ static definfo init[] =
D(SizeOfHeapReserve,"__size_of_heap_reserve__", 0x100000, FALSE),
D(SizeOfHeapCommit,"__size_of_heap_commit__", 0x1000, FALSE),
D(LoaderFlags,"__loader_flags__", 0x0, FALSE),
- D(DllCharacteristics, "__dll_characteristics__", 0x0, FALSE),
+ D(DllCharacteristics, "__dll_characteristics__", DEFAULT_DLL_CHARACTERISTICS, FALSE),
{ NULL, 0, 0, NULL, 0, FALSE}
};
@@ -446,20 +470,23 @@ gld_${EMULATION_NAME}_list_options (FILE *file)
executable image files\n"));
fprintf (file, _(" --disable-long-section-names Never use long COFF section names, even\n\
in object files\n"));
- fprintf (file, _(" --high-entropy-va Image is compatible with 64-bit address space\n\
+ fprintf (file, _(" --[disable-]high-entropy-va Image is compatible with 64-bit address space\n\
layout randomization (ASLR)\n"));
- fprintf (file, _(" --dynamicbase Image base address may be relocated using\n\
+ fprintf (file, _(" --[disable-]dynamicbase Image base address may be relocated using\n\
address space layout randomization (ASLR)\n"));
fprintf (file, _(" --enable-reloc-section Create the base relocation table\n"));
- fprintf (file, _(" --forceinteg Code integrity checks are enforced\n"));
- fprintf (file, _(" --nxcompat Image is compatible with data execution prevention\n"));
- fprintf (file, _(" --no-isolation Image understands isolation but do not isolate the image\n"));
- fprintf (file, _(" --no-seh Image does not use SEH; no SE handler may\n\
+ fprintf (file, _(" --disable-reloc-section Do not create the base relocation table\n"));
+ fprintf (file, _(" --[disable-]forceinteg Code integrity checks are enforced\n"));
+ fprintf (file, _(" --[disable-]nxcompat Image is compatible with data execution\n\
+ prevention\n"));
+ fprintf (file, _(" --[disable-]no-isolation Image understands isolation but do not\n\
+ isolate the image\n"));
+ fprintf (file, _(" --[disable-]no-seh Image does not use SEH; no SE handler may\n\
be called in this image\n"));
- fprintf (file, _(" --no-bind Do not bind this image\n"));
- fprintf (file, _(" --wdmdriver Driver uses the WDM model\n"));
- fprintf (file, _(" --tsaware Image is Terminal Server aware\n"));
- fprintf (file, _(" --build-id[=STYLE] Generate build ID\n"));
+ fprintf (file, _(" --[disable-]no-bind Do not bind this image\n"));
+ fprintf (file, _(" --[disable-]wdmdriver Driver uses the WDM model\n"));
+ fprintf (file, _(" --[disable-]tsaware Image is Terminal Server aware\n"));
+ fprintf (file, _(" --build-id[=STYLE] Generate build ID\n"));
#endif
}
@@ -809,27 +836,57 @@ gld${EMULATION_NAME}_handle_option (int optc)
case OPTION_ENABLE_RELOC_SECTION:
pep_dll_enable_reloc_section = 1;
break;
+ case OPTION_DISABLE_RELOC_SECTION:
+ pep_dll_enable_reloc_section = 0;
+ /* fall through */
+ case OPTION_DISABLE_DYNAMIC_BASE:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE;
+ /* fall through */
+ case OPTION_DISABLE_HIGH_ENTROPY_VA:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA;
+ break;
case OPTION_FORCE_INTEGRITY:
pe_dll_characteristics |= IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY;
break;
+ case OPTION_DISABLE_FORCE_INTEGRITY:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY;
+ break;
case OPTION_NX_COMPAT:
pe_dll_characteristics |= IMAGE_DLL_CHARACTERISTICS_NX_COMPAT;
break;
+ case OPTION_DISABLE_NX_COMPAT:
+ pe_dll_characteristics &= ~ IMAGE_DLL_CHARACTERISTICS_NX_COMPAT;
+ break;
case OPTION_NO_ISOLATION:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_NO_ISOLATION;
break;
+ case OPTION_DISABLE_NO_ISOLATION:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_NO_ISOLATION;
+ break;
case OPTION_NO_SEH:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_NO_SEH;
break;
+ case OPTION_DISABLE_NO_SEH:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_NO_SEH;
+ break;
case OPTION_NO_BIND:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_NO_BIND;
break;
+ case OPTION_DISABLE_NO_BIND:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_NO_BIND;
+ break;
case OPTION_WDM_DRIVER:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_WDM_DRIVER;
break;
+ case OPTION_DISABLE_WDM_DRIVER:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_WDM_DRIVER;
+ break;
case OPTION_TERMINAL_SERVER_AWARE:
pe_dll_characteristics |= IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE;
break;
+ case OPTION_DISABLE_TERMINAL_SERVER_AWARE:
+ pe_dll_characteristics &= ~ IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE;
+ break;
case OPTION_BUILD_ID:
free ((char *) emit_build_id);
emit_build_id = NULL;
diff --git a/ld/ld.texi b/ld/ld.texi
index 2a93e9456a..43658a2daa 100644
--- a/ld/ld.texi
+++ b/ld/ld.texi
@@ -3097,47 +3097,63 @@ of the PE file header:
@kindex --high-entropy-va
@item --high-entropy-va
+@itemx --disable-high-entropy-va
Image is compatible with 64-bit address space layout randomization
-(ASLR).
+(ASLR). This option is enabled by default for 64-bit PE images.
+
This option also implies @option{--dynamicbase} and
@option{--enable-reloc-section}.
@kindex --dynamicbase
@item --dynamicbase
+@itemx --disable-dynamicbase
The image base address may be relocated using address space layout
randomization (ASLR). This feature was introduced with MS Windows
-Vista for i386 PE targets.
+Vista for i386 PE targets. This option is enabled by default but
+can be disabled via the @option{--disable-dynamicbase} option.
This option also implies @option{--enable-reloc-section}.
@kindex --forceinteg
@item --forceinteg
-Code integrity checks are enforced.
+@itemx --disable-forceinteg
+Code integrity checks are enforced. This option is disabled by
+default.
@kindex --nxcompat
@item --nxcompat
+@item --disable-nxcompat
The image is compatible with the Data Execution Prevention.
-This feature was introduced with MS Windows XP SP2 for i386 PE targets.
+This feature was introduced with MS Windows XP SP2 for i386 PE
+targets. The option is enabled by default.
@kindex --no-isolation
@item --no-isolation
+@itemx --disable-no-isolation
Although the image understands isolation, do not isolate the image.
+This option is disabled by default.
@kindex --no-seh
@item --no-seh
+@itemx --disable-no-seh
The image does not use SEH. No SE handler may be called from
-this image.
+this image. This option is disabled by default.
@kindex --no-bind
@item --no-bind
-Do not bind this image.
+@itemx --disable-no-bind
+Do not bind this image. This option is disabled by default.
@kindex --wdmdriver
@item --wdmdriver
-The driver uses the MS Windows Driver Model.
+@itemx --disable-wdmdriver
+The driver uses the MS Windows Driver Model. This option is disabled
+by default.
@kindex --tsaware
@item --tsaware
-The image is Terminal Server aware.
+@itemx --disable-tsaware
+The image is Terminal Server aware. This option is disabled by
+default.
@kindex --insert-timestamp
@item --insert-timestamp
@@ -3153,8 +3169,10 @@ identically.
@kindex --enable-reloc-section
@item --enable-reloc-section
+@itemx --disable-reloc-section
Create the base relocation table, which is necessary if the image
is loaded at a different image base than specified in the PE header.
+This option is enabled by default.
@end table
@c man end
diff --git a/ld/pe-dll.c b/ld/pe-dll.c
index 3e8fe1be9b..14b402ee8d 100644
--- a/ld/pe-dll.c
+++ b/ld/pe-dll.c
@@ -160,7 +160,7 @@ int pe_dll_extra_pe_debug = 0;
int pe_use_nul_prefixed_import_tables = 0;
int pe_use_coff_long_section_names = -1;
int pe_leading_underscore = -1;
-int pe_dll_enable_reloc_section = 0;
+int pe_dll_enable_reloc_section = 1;
/* Static variables and types. */
@@ -1505,7 +1505,6 @@ pe_find_data_imports (const char *symhead,
static void
generate_reloc (bfd *abfd, struct bfd_link_info *info)
{
-
/* For .reloc stuff. */
reloc_data_type *reloc_data;
int total_relocs = 0;
@@ -1516,6 +1515,8 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
bfd *b;
struct bfd_section *s;
+ if (reloc_s == NULL)
+ return;
total_relocs = 0;
for (b = info->input_bfds; b; b = b->link.next)
for (s = b->sections; s; s = s->next)
@@ -1547,9 +1548,11 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
if (s->output_section->vma == 0)
{
/* Huh? Shouldn't happen, but punt if it does. */
+#if 0 /* This happens when linking with --just-symbols=<file>, so do not generate an error. */
einfo (_("%P: zero vma section reloc detected: `%s' #%d f=%d\n"),
s->output_section->name, s->output_section->index,
s->output_section->flags);
+#endif
continue;
}
@@ -3630,7 +3633,8 @@ pe_exe_fill_sections (bfd *abfd, struct bfd_link_info *info)
/* Do the assignments again. */
lang_do_assignments (lang_final_phase_enum);
}
- reloc_s->contents = reloc_d;
+ if (reloc_s)
+ reloc_s->contents = reloc_d;
}
bfd_boolean
diff --git a/ld/testsuite/ld-pe/pe.exp b/ld/testsuite/ld-pe/pe.exp
index 7bc933fc5a..17dafbb02b 100644
--- a/ld/testsuite/ld-pe/pe.exp
+++ b/ld/testsuite/ld-pe/pe.exp
@@ -33,7 +33,7 @@ if {[istarget i*86-*-cygwin*]
if {[istarget x86_64-*-mingw*] } {
set pe_tests {
- {".secrel32" "" "" "" {secrel1.s secrel2.s}
+ {".secrel32" "--disable-reloc-section" "" "" {secrel1.s secrel2.s}
{{objdump -s secrel_64.d}} "secrel.x"}
{"Empty export table" "" "" "" "exports.s"
{{objdump -p exports64.d}} "exports.dll"}
@@ -42,7 +42,7 @@ if {[istarget i*86-*-cygwin*]
}
} elseif {[istarget i*86-*-cygwin*] } {
set pe_tests {
- {".secrel32" "--disable-auto-import" "" "" {secrel1.s secrel2.s}
+ {".secrel32" "--disable-auto-import --disable-reloc-section" "" "" {secrel1.s secrel2.s}
{{objdump -s secrel.d}} "secrel.x"}
{"Empty export table" "" "" "" "exports.s"
{{objdump -p exports.d}} "exports.dll"}
@@ -51,7 +51,7 @@ if {[istarget i*86-*-cygwin*]
}
} else {
set pe_tests {
- {".secrel32" "" "" "" {secrel1.s secrel2.s}
+ {".secrel32" "--disable-reloc-section" "" "" {secrel1.s secrel2.s}
{{objdump -s secrel.d}} "secrel.x"}
{"Empty export table" "" "" "" "exports.s"
{{objdump -p exports.d}} "exports.dll"}
diff --git a/ld/testsuite/ld-scripts/provide-8.d b/ld/testsuite/ld-scripts/provide-8.d
index f5abc524e8..1dd5553ed3 100644
--- a/ld/testsuite/ld-scripts/provide-8.d
+++ b/ld/testsuite/ld-scripts/provide-8.d
@@ -1,7 +1,7 @@
#source: provide-5.s
#ld: -T provide-8.t
#nm: -B
-#xfail: x86_64-*-cygwin mmix-*-* sh-*-pe spu-*-*
+#xfail: mmix-*-* *-*-pe spu-*-* *-*-mingw* *-*-cygwin
#...
0+4000 D __FOO
--
2.28.0.windows.1

View File

@@ -1,34 +0,0 @@
From 82f439d028c65663a0baf0a17ef5c4a2ea5c84a7 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 11 Feb 2020 15:55:25 +0000
Subject: [PATCH] Import a fix from the mainline sources that prevents a
potential illegal memory access when parsing PE binaries.
PR 25447
* coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep
syms and keep strings flags as these may have been set in order to
prevent a bogus call to free.
---
bfd/coffgen.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/bfd/coffgen.c b/bfd/coffgen.c
index 2bfcf1a6b14..3ddd2d89a83 100644
--- a/bfd/coffgen.c
+++ b/bfd/coffgen.c
@@ -3175,8 +3175,10 @@ _bfd_coff_close_and_cleanup (bfd *abfd)
&& bfd_family_coff (abfd)
&& coff_data (abfd) != NULL)
{
- obj_coff_keep_syms (abfd) = FALSE;
- obj_coff_keep_strings (abfd) = FALSE;
+ /* PR 25447:
+ Do not clear the keep_syms and keep_strings flags.
+ These may have been set by pe_ILF_build_a_bfd() indicating
+ that the syms and strings pointers are not to be freed. */
if (!_bfd_coff_free_symbols (abfd))
return FALSE;
}
--
2.18.2

View File

@@ -0,0 +1,69 @@
From 369140ab89948265c722a9b7a7e92b7de4a88d02 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Fri, 28 Aug 2020 10:51:28 +0930
Subject: [PATCH 2/3] mingw plugin test regressions due to commit 514b4e191d5f
Fixes new failures due to image base change.
PR 19011
* testsuite/ld-plugin/plugin.exp: Use modified CFLAGS throughout
file. Add --image-base for pecoff.
---
ld/ChangeLog | 6 ++++++
ld/testsuite/ld-plugin/plugin.exp | 8 ++++++++
2 files changed, 14 insertions(+)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 0a65318c46..b952c547db 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2020-08-28 Alan Modra <amodra@gmail.com>
+
+ PR 19011
+ * testsuite/ld-plugin/plugin.exp: Use modified CFLAGS throughout
+ file. Add --image-base for pecoff.
+
2020-08-27 Jeremy Drake <sourceware-bugzilla@jdrake.com>
PR 19011
diff --git a/ld/testsuite/ld-plugin/plugin.exp b/ld/testsuite/ld-plugin/plugin.exp
index dc8f007397..bbff5d9d55 100644
--- a/ld/testsuite/ld-plugin/plugin.exp
+++ b/ld/testsuite/ld-plugin/plugin.exp
@@ -95,6 +95,7 @@ set _ ""
set plugin_nm_output ""
set old_CFLAGS "$CFLAGS"
append CFLAGS " $NOSANTIZE_CFLAGS"
+
if { $can_compile && \
(![ld_compile "$CC $CFLAGS" $srcdir/$subdir/main.c tmpdir/main.o] \
|| ![ld_compile "$CC $CFLAGS" $srcdir/$subdir/func.c tmpdir/func.o] \
@@ -129,6 +130,10 @@ set libs "[ld_link_defsyms] --defsym ${_}printf=${_}main --defsym ${_}puts=${_}m
if { $dotsym } {
append libs " --defsym .printf=.main --defsym .puts=.main"
}
+if [is_pecoff_format] {
+ #otherwise relocs overflow to symbols defined on the command line
+ append libs " --image-base=0x10000000"
+}
set plugin_tests [list \
[list "load plugin" "-plugin $plugin_path \
@@ -289,6 +294,7 @@ if { !$can_compile || $failed_compile } {
$failure_kind [lindex $testitem 0]
}
}
+ set CFLAGS "$old_CFLAGS"
return
}
@@ -390,3 +396,5 @@ if [ar_simple_create $ar "--plugin $plugin4_path" "tmpdir/libpr20070.a" \
} else {
unresolved "PR ld/20070"
}
+
+set CFLAGS "$old_CFLAGS"
--
2.28.0.windows.1

View File

@@ -0,0 +1,88 @@
From f62e26a9b35e76eec4e11753eaf9dcb61b9ddda3 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Fri, 28 Aug 2020 09:43:13 +0100
Subject: [PATCH 3/3] Fixes for testsuite failures introduced by the changes
made for PR 19011.
PR19011
bfd * cofflink.c (_bfd_coff_generic_relocate_section): Provide a value
for undefined symbols which will not generate extra warning
messages about truncated relocs.
ld * testsuite/lib/ld-lib.exp (ld_link_defsyms): For PE based targets
define the __main and ___main symbols in terms of the main symbol.
---
bfd/ChangeLog | 7 +++++++
bfd/cofflink.c | 12 +++++++++---
ld/ChangeLog | 6 ++++++
ld/testsuite/lib/ld-lib.exp | 2 +-
4 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 87cd2916c9..f991e4208d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2020-08-28 Nick Clifton <nickc@redhat.com>
+
+ PR19011
+ * cofflink.c (_bfd_coff_generic_relocate_section): Provide a value
+ for undefined symbols which will not generate extra warning
+ messages about truncated relocs.
+
2020-07-24 Nick Clifton <nickc@redhat.com>
2.35 Release:
diff --git a/bfd/cofflink.c b/bfd/cofflink.c
index 63bdcde115..8833cd0caf 100644
--- a/bfd/cofflink.c
+++ b/bfd/cofflink.c
@@ -3053,9 +3053,15 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
}
else if (! bfd_link_relocatable (info))
- (*info->callbacks->undefined_symbol)
- (info, h->root.root.string, input_bfd, input_section,
- rel->r_vaddr - input_section->vma, TRUE);
+ {
+ (*info->callbacks->undefined_symbol)
+ (info, h->root.root.string, input_bfd, input_section,
+ rel->r_vaddr - input_section->vma, TRUE);
+ /* Stop the linker from issueing errors about truncated relocs
+ referencing this undefined symbol by giving it an address
+ that should be in range. */
+ val = input_section->output_section->vma;
+ }
}
/* If the input section defining the symbol has been discarded
diff --git a/ld/ChangeLog b/ld/ChangeLog
index b952c547db..f8ad16235f 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2020-08-28 Nick Clifton <nickc@redhat.com>
+
+ PR 19011
+ * testsuite/lib/ld-lib.exp (ld_link_defsyms): For PE based targets
+ define the __main and ___main symbols in terms of the main symbol.
+
2020-08-28 Alan Modra <amodra@gmail.com>
PR 19011
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index 8d851a94b7..828bf849f5 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -376,7 +376,7 @@ proc ld_link_defsyms {} {
# Windows targets need __main, some prefixed with underscore.
if {[istarget *-*-cygwin* ] || [istarget *-*-mingw*]} {
- append flags " --defsym __main=0 --defsym ___main=0"
+ append flags " --defsym __main=main --defsym ___main=main"
}
# PowerPC EABI code calls __eabi.
--
2.28.0.windows.1

View File

@@ -0,0 +1,113 @@
From 322caba57ff2728aa8f194683af3109a122c0130 Mon Sep 17 00:00:00 2001
From: Jeremy Drake <github@jdrake.com>
Date: Mon, 31 Aug 2020 10:26:19 -0700
Subject: [PATCH 4/4] Temporarily revert default dll characteristics.
Until more testing is done, this patch reverts the
DEFAULT_DLL_CHARACTERISTICS to 0, but keeps the new --disable- options
for the flags so that they can be overridden later on the command line.
Note that this does NOT revert the default --enable-reloc-section. This
shouldn't hurt anything other than making the resulting executable
larger.
---
ld/ChangeLog | 8 ++++++++
ld/NEWS | 2 ++
ld/emultempl/pe.em | 3 +--
ld/emultempl/pep.em | 4 +---
ld/ld.texi | 7 +++----
5 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index f8ad16235f..4f9ccb6b10 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,11 @@
+2020-08-30 Jeremy Drake <sourceware-bugzilla@jdrake.com>
+
+ PR 19011
+ * emultempl/pe.em (DEFAULT_DLL_CHARACTERISTICS): Revert to 0.
+ * emultempl/pep.em: Likewise.
+ * ld.texi: Document the reverted defaults.
+ * NEWS: Mention the reverted defaults.
+
2020-08-28 Nick Clifton <nickc@redhat.com>
PR 19011
diff --git a/ld/NEWS b/ld/NEWS
index 004e7c5d41..a947ff2f1a 100644
--- a/ld/NEWS
+++ b/ld/NEWS
@@ -3,6 +3,8 @@
* The creation of PE format DLLs now defaults to using a more secure set of DLL
characteristics.
+* These defaults are temporarily reverted until more testing is done.
+
Changes in 2.35:
* X86 NaCl target support is removed.
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index f45518eafb..b3990cf677 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -104,8 +104,7 @@ fragment <<EOF
#define DEFAULT_PSEUDO_RELOC_VERSION 1
#endif
-#define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
- | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
+#define DEFAULT_DLL_CHARACTERISTICS 0
#if defined(TARGET_IS_i386pe) || ! defined(DLL_SUPPORT)
#define PE_DEF_SUBSYSTEM 3
diff --git a/ld/emultempl/pep.em b/ld/emultempl/pep.em
index 7d9395168d..ea792fe25a 100644
--- a/ld/emultempl/pep.em
+++ b/ld/emultempl/pep.em
@@ -99,9 +99,7 @@ fragment <<EOF
#define DLL_SUPPORT
#endif
-#define DEFAULT_DLL_CHARACTERISTICS (IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE \
- | IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA \
- | IMAGE_DLL_CHARACTERISTICS_NX_COMPAT)
+#define DEFAULT_DLL_CHARACTERISTICS 0
#if defined(TARGET_IS_i386pep) || ! defined(DLL_SUPPORT)
#define PE_DEF_SUBSYSTEM 3
diff --git a/ld/ld.texi b/ld/ld.texi
index 43658a2daa..3bc4d908a9 100644
--- a/ld/ld.texi
+++ b/ld/ld.texi
@@ -3099,7 +3099,7 @@ of the PE file header:
@item --high-entropy-va
@itemx --disable-high-entropy-va
Image is compatible with 64-bit address space layout randomization
-(ASLR). This option is enabled by default for 64-bit PE images.
+(ASLR). This option is disabled by default.
This option also implies @option{--dynamicbase} and
@option{--enable-reloc-section}.
@@ -3109,8 +3109,7 @@ This option also implies @option{--dynamicbase} and
@itemx --disable-dynamicbase
The image base address may be relocated using address space layout
randomization (ASLR). This feature was introduced with MS Windows
-Vista for i386 PE targets. This option is enabled by default but
-can be disabled via the @option{--disable-dynamicbase} option.
+Vista for i386 PE targets. This option is disabled by default.
This option also implies @option{--enable-reloc-section}.
@kindex --forceinteg
@@ -3124,7 +3123,7 @@ default.
@item --disable-nxcompat
The image is compatible with the Data Execution Prevention.
This feature was introduced with MS Windows XP SP2 for i386 PE
-targets. The option is enabled by default.
+targets. The option is disabled by default.
@kindex --no-isolation
@item --no-isolation
--
2.28.0.windows.1

View File

@@ -5,8 +5,8 @@
_realname=binutils
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=2.34
pkgrel=3
pkgver=2.35
pkgrel=4
pkgdesc="A set of programs to assemble and manipulate binary and object files (mingw-w64)"
arch=('any')
url="https://www.gnu.org/software/binutils/"
@@ -24,19 +24,24 @@ source=(https://ftp.gnu.org/gnu/binutils/${_realname}-${pkgver}.tar.xz{,.sig}
0020-binutils_2.31_mkdtemp_impl.patch
0110-binutils-mingw-gnu-print.patch
0120-windres-handle-spaces.patch
1000-PR24511.patch
1001-PR25447.patch)
sha256sums=('f00b0e8803dc9bab1e2165bd568528135be734df3fabf8d0161828cd56028952'
1001-Change-the-default-characteristics-of-DLLs-built-by-.patch
1002-mingw-plugin-test-regressions-due-to-commit-514b4e19.patch
1003-Fixes-for-testsuite-failures-introduced-by-the-chang.patch
2000-Temporarily-revert-default-dll-characteristics.patch)
sha256sums=('1b11659fb49e20e18db460d44485f09442c8c56d5df165de9461eb09c8302f85'
'SKIP'
'93296b909e1a4f9d8a4bbe2437aafa17ca565ef6642a9812b0360c05be228c9d'
'2c99345fc575c3a060d6677537f636c6c4154fac0fde508070f3b6296c1060d4'
'604e76e0f702ced493ee22aa3c1768b4776b2008a7d70ae0dd35fe5be3522141'
'34ba6c001ff7f95ae1da0619c73130112b76d0d2a31bb8a00602eb22f1f84cb8'
'd0d5d7fbf26b4ea902583ca5cd03fe1721adc0582f05f4ce9595f6b0a1f3c4d8'
'76658ef1bb8c5fc3fe6c26e2b5dd9ee0f1d12661988c0c65562b0a3e2d32ae1f'
'86ae90d997e986a54aaebb5251f3a71800b0c5c3f5b57b9094a42995e9f5c478'
'ee802df23360ad8b51cbc52aa0845916bb36098fbe6940e93a8f4c74ac5f18e9'
'c1363575e0a13c7cacc696b68bedf2937c872422d6af286a7dc25f8b9c678ba7')
validpgpkeys=('EAF1C276A747E9ED86210CBAC3126D3B4AE55E93')
'4bc1d1481f060f99330e897652f499dd61afda8f8d1c8769e8e54adcd3c8eb7e'
'4af3eed435759426fa30b621821edfb2a27a67d182db2f5e22bc86c3dd61d62d'
'9170e8efb3db82acb98561e472e441c9e5e829997a40836bd9b2f2cc19557b05'
'5009fd749d4a8e710e26da988157d69f797eefb202ed7d246999c9e4bd9e8755')
validpgpkeys=('EAF1C276A747E9ED86210CBAC3126D3B4AE55E93'
'3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F')
prepare() {
cd ${srcdir}/${_realname}-${pkgver}
@@ -46,10 +51,13 @@ prepare() {
patch -p1 -i "${srcdir}"/0020-binutils_2.31_mkdtemp_impl.patch
patch -p1 -i "${srcdir}"/0110-binutils-mingw-gnu-print.patch
patch -p1 -i "${srcdir}"/0120-windres-handle-spaces.patch
# Upstream patches
patch -p1 -i "${srcdir}"/1000-PR24511.patch
patch -p1 -i "${srcdir}"/1001-PR25447.patch
patch -p1 -i "${srcdir}"/1001-Change-the-default-characteristics-of-DLLs-built-by-.patch
patch -p1 -i "${srcdir}"/1002-mingw-plugin-test-regressions-due-to-commit-514b4e19.patch
patch -p1 -i "${srcdir}"/1003-Fixes-for-testsuite-failures-introduced-by-the-chang.patch
# Temporarily revert defaults change while testing.
patch -p1 -i "${srcdir}"/2000-Temporarily-revert-default-dll-characteristics.patch
}
build() {

View File

@@ -0,0 +1,57 @@
diff --git a/make.h b/make.h
index ea864b4..c6ae5fb 100644
--- a/make.h
+++ b/make.h
@@ -572,2 +572,6 @@ extern int system_np(const char* command, int timeout_milliseconds,
+extern char * getUnixPathCmd(const char *path);
+
+extern char * getWindowsPathCmd(const char *path);
+
#endif /* _MAKE_H_ */
diff --git a/parse.c b/parse.c
index a996c49..ecc84ea 100644
--- a/parse.c
+++ b/parse.c
@@ -2279,8 +2279,21 @@ Parse_include_file(char *file, Boolean isSystem, Boolean depinc, int silent)
/* Actually open the file... */
+#if (defined _WIN32 && ! defined __CYGWIN__)
+ const char *error;
+ char *windowsFullName;
fd = open(fullname, O_RDONLY);
if (fd == -1) {
- if (!silent)
- Parse_Error(PARSE_FATAL, "Cannot open %s", fullname);
- free(fullname);
- return;
+ windowsFullName = Cmd_Exec(getWindowsPathCmd(fullname), &error);
+ if (windowsFullName && strlen(windowsFullName) > 0) {
+ fd = open(windowsFullName, O_RDONLY);
+ }
+ }
+#else
+ fd = open(fullname, O_RDONLY);
+#endif
+ if (fd == -1) {
+ if (!silent) {
+ Parse_Error(PARSE_FATAL, "Cannot open %s", fullname);
+ }
+ free(fullname);
+ return;
}
diff --git a/util.c b/util.c
index 25f4f5e..7fd2768 100644
--- a/util.c
+++ b/util.c
@@ -3032,2 +3032,11 @@ char * getUnixPathCmd(const char *path)
+char * getWindowsPathCmd(const char *path)
+{
+ return str_concat(
+ "cygpath -m", str_concat("\"",
+ str_concat(path, "\"", 0),
+ 0),
+ STR_ADDSPACE);
+}
+
#endif

View File

@@ -8,7 +8,7 @@ _realname=bmake
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=20181221
pkgrel=5
pkgrel=6
pkgdesc='Portable version of the NetBSD make build tool'
arch=('any')
url='http://www.crufty.net/help/sjg/bmake.html'
@@ -27,6 +27,7 @@ source=("http://www.crufty.net/ftp/pub/sjg/bmake-$pkgver.tar.gz"
0002-enable-debug-output-on-test.patch
0003-print-pwd-on-fail-install.patch
0004-add-windows-draft-configs.patch
0005-fallback-open-file-through-native-windows-path.patch
)
# checksum source: http://www.crufty.net/ftp/pub/sjg/bmake-$pkgver.tar.gz.sha1
sha1sums=('ce7db05c68e2fbad41d1dd92ec110406093293bd'
@@ -34,6 +35,7 @@ sha1sums=('ce7db05c68e2fbad41d1dd92ec110406093293bd'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
)
prepare() {
@@ -42,6 +44,7 @@ prepare() {
patch -p1 -l -i "${srcdir}"/0002-enable-debug-output-on-test.patch
patch -p1 -l -i "${srcdir}"/0003-print-pwd-on-fail-install.patch
patch -p1 -l -i "${srcdir}"/0004-add-windows-draft-configs.patch
patch -p1 -l -i "${srcdir}"/0005-fallback-open-file-through-native-windows-path.patch
}
build() {

View File

@@ -3,7 +3,7 @@
_realname=ca-certificates
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=20190110
pkgver=20200601
pkgrel=1
pkgdesc='Common CA certificates (mingw-w64)'
arch=('any')
@@ -19,9 +19,9 @@ source=("http://archive.ubuntu.com/ubuntu/pool/main/c/${_realname}/${_realname}_
depends=("${MINGW_PACKAGE_PREFIX}-p11-kit")
makedepends=("${MINGW_PACKAGE_PREFIX}-openssl"
"${MINGW_PACKAGE_PREFIX}-p11-kit"
"${MINGW_PACKAGE_PREFIX}-python3"
"${MINGW_PACKAGE_PREFIX}-python"
'asciidoc' 'libxslt' 'sed' 'grep')
sha256sums=('ee4bf0f4c6398005f5b5ca4e0b87b82837ac5c3b0280a1cb3a63c47555c3a675'
sha256sums=('43766d5a436519503dfd65ab83488ae33ab4d4ca3d0993797b58c92eb9ed4e63'
'aae6aa5d2bd31064eb923a00a0d37789d3e2f2aa2ef0b39c10228d8d7a3ceb30'
'5736cc3a73ff9bceed43bafad85100a2fcfdfae1cf2cb7e201b5fa6f1421fc2e'
'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
@@ -29,7 +29,10 @@ sha256sums=('ee4bf0f4c6398005f5b5ca4e0b87b82837ac5c3b0280a1cb3a63c47555c3a675'
'b052972dd118a3e25f785b6caa141599f0db6fc1d943e9ebcd6ca0e1f0421f60')
prepare() {
sed "s|/usr/bin/python|${MINGW_PREFIX}/bin/python3|g" -i certdata2pem.py
cd "${srcdir}"
mv "work" "${srcdir}/${_realname}-${pkgver}"
sed "s|/usr/bin/python|${MINGW_PREFIX}/bin/python|g" -i certdata2pem.py
patch -p0 -i ${srcdir}/certdata2pem.patch
cp certdata2pem.py ${srcdir}/${_realname}-${pkgver}/mozilla/certdata2pem.py
cd ${srcdir}/${_realname}-${pkgver}
@@ -41,7 +44,7 @@ build() {
cd ${srcdir}/${_realname}-${pkgver}/mozilla
mkdir -p legacy-{default,disable}
PYTHONUTF8=1 PYTHONIOENCODING=utf-8 ${MINGW_PREFIX}/bin/python3 ./certdata2pem.py
PYTHONUTF8=1 PYTHONIOENCODING=utf-8 ${MINGW_PREFIX}/bin/python ./certdata2pem.py
(
cat <<EOF

View File

@@ -10,7 +10,7 @@ _realname=capnproto
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.8.0
pkgrel=1
pkgrel=2
pkgdesc="Cap'n Proto serialization/RPC system (mingw-w64)"
arch=('any')
url='https://capnproto.org/'

View File

@@ -3,7 +3,7 @@
_realname=catch
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.12.1
pkgver=2.13.1
pkgrel=1
pkgdesc="Multi-paradigm automated test framework for C++ and Objective-C (mingw-w64)"
arch=('any')
@@ -13,7 +13,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-python")
license=('custom')
source=(${_realname}-${pkgver}.tar.gz::https://github.com/catchorg/Catch2/archive/v${pkgver}.tar.gz)
sha256sums=('e5635c082282ea518a8dd7ee89796c8026af8ea9068cd7402fb1615deacd91c3')
sha256sums=('36bcc9e6190923961be11e589d747e606515de95f10779e29853cfeae560bd6c')
build() {
rm -rf "${srcdir}/build-${MINGW_CHOST}"

View File

@@ -2,7 +2,7 @@
_realname=cego
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=2.45.17
pkgver=2.45.21
pkgrel=1
pkgdesc="Cego database system (mingw-w64)"
arch=('any')
@@ -15,7 +15,7 @@ depends=("${MINGW_PACKAGE_PREFIX}-readline"
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
sha256sums=('98bce71526625817ca8ea0f1e01ee3e2da15c44ecac98bc4f693d0165cb760a3')
sha256sums=('de13e8629d8c529350263bc05933f05b0a3e06c4409dba793366fc25086a5e5b')
prepare() {
cd $srcdir/${_realname}-${pkgver}

View File

@@ -3,8 +3,8 @@
_realname=cfitsio
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=3.450
pkgrel=2
pkgver=3.48
pkgrel=1
pkgdesc="A library of C and Fortran subroutines for reading and writing data files in FITS (Flexible Image Transport System) data format (mingw-w64)"
arch=('any')
url="https://heasarc.gsfc.nasa.gov/fitsio/"
@@ -16,15 +16,15 @@ depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
#"${MINGW_PACKAGE_PREFIX}-curl"
"${MINGW_PACKAGE_PREFIX}-zlib")
options=('strip' 'staticlibs')
source=("https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/${_realname}${pkgver/./}.tar.gz"
source=("https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/${_realname}-${pkgver}.tar.gz"
mingw-cmake.patch
disable-curl-mingw.patch)
sha256sums=('bf6012dbe668ecb22c399c4b7b2814557ee282c74a7d5dc704eb17c30d9fb92e'
'49bf12e37d6b8d559a8f000701c16ffa6fa52fdf4c87d0e8d1d1caa7e4a3b3e2'
sha256sums=('91b48ffef544eb8ea3908543052331072c99bf09ceb139cb3c6977fc3e47aac1'
'1cd6fc5cf58161624099271178a2421739682a73aaf3129d33acb370358c28fd'
'3041bb9948081fca949fa1505107a1806981c5c6f7160fed69b57b7cef86552d')
prepare() {
cd ${_realname}
cd ${_realname}-${pkgver}
patch -p1 -i ${srcdir}/mingw-cmake.patch
patch -p1 -i ${srcdir}/disable-curl-mingw.patch
}
@@ -40,7 +40,7 @@ build() {
-G"MSYS Makefiles" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DBUILD_SHARED_LIBS=OFF \
../${_realname}
../${_realname}-${pkgver}
make
@@ -54,7 +54,7 @@ build() {
-G"MSYS Makefiles" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DBUILD_SHARED_LIBS=ON \
../${_realname}
../${_realname}-${pkgver}
make
}
@@ -66,5 +66,5 @@ package() {
cd "${srcdir}/shared-${MINGW_CHOST}"
make DESTDIR="${pkgdir}" install
install -Dm644 ${srcdir}/${_realname}/License.txt "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname}/LICENSE
install -Dm644 ${srcdir}/${_realname}-${pkgver}/License.txt "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname}/LICENSE
}

View File

@@ -1,7 +1,7 @@
diff -rupN cfitsio/cfitsio.pc.in cfitsio-new/cfitsio.pc.in
--- cfitsio/cfitsio.pc.in 2013-04-08 20:11:56.000000000 +0200
+++ cfitsio-new/cfitsio.pc.in 2017-04-21 22:27:09.281597808 +0200
@@ -1,11 +1,10 @@
diff -Naur cfitsio-3.48.orig/cfitsio.pc.in cfitsio-3.48/cfitsio.pc.in
--- cfitsio-3.48.orig/cfitsio.pc.in 2020-08-20 14:15:09.062978500 -0400
+++ cfitsio-3.48/cfitsio.pc.in 2020-08-20 14:16:14.543075400 -0400
@@ -1,12 +1,11 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
@@ -12,15 +12,16 @@ diff -rupN cfitsio/cfitsio.pc.in cfitsio-new/cfitsio.pc.in
Name: cfitsio
Description: FITS File Subroutine Library
URL: https://heasarc.gsfc.nasa.gov/fitsio/
Version: @CFITSIO_MAJOR@.@CFITSIO_MINOR@
Libs: -L${libdir} -lcfitsio @LIBS@
-Libs.private: -lm
+Libs.private: -lm -lz
Libs: -L${libdir} -lcfitsio
-Libs.private: -lm @LIBS@
+Libs.private: -lm -lz @LIBS@
Cflags: -I${includedir}
diff -rupN cfitsio/CMakeLists.txt cfitsio-new/CMakeLists.txt
--- cfitsio/CMakeLists.txt 2016-11-28 22:30:36.000000000 +0100
+++ cfitsio-new/CMakeLists.txt 2017-04-21 22:27:18.943592852 +0200
@@ -7,12 +7,13 @@ OPTION (USE_PTHREADS "Thread-safe build
diff -Naur cfitsio-3.48.orig/CMakeLists.txt cfitsio-3.48/CMakeLists.txt
--- cfitsio-3.48.orig/CMakeLists.txt 2020-08-20 14:15:08.982900500 -0400
+++ cfitsio-3.48/CMakeLists.txt 2020-08-20 14:23:04.812703800 -0400
@@ -21,12 +21,13 @@
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}")
set (LIB_DESTINATION "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}")
@@ -29,22 +30,14 @@ diff -rupN cfitsio/CMakeLists.txt cfitsio-new/CMakeLists.txt
# Define project version
SET(${PROJECT_NAME}_MAJOR_VERSION 3)
SET(${PROJECT_NAME}_MINOR_VERSION 45)
SET(${PROJECT_NAME}_MINOR_VERSION 48)
SET(${PROJECT_NAME}_VERSION ${${PROJECT_NAME}_MAJOR_VERSION}.${${PROJECT_NAME}_MINOR_VERSION})
+SET(${PROJECT_NAME}_SOVERSION ${${PROJECT_NAME}_MAJOR_VERSION})
SET(LIB_NAME cfitsio)
# Microsoft Visual Studio:
@@ -68,18 +69,30 @@ SET(SRC_FILES
putcolu.c putcolui.c putcoluj.c putkey.c region.c scalnull.c
swapproc.c wcssub.c wcsutil.c imcompress.c quantize.c ricecomp.c
pliocomp.c fits_hcompress.c fits_hdecompress.c zlib/zuncompress.c
- zlib/zcompress.c zlib/adler32.c zlib/crc32.c zlib/inffast.c
- zlib/inftrees.c zlib/trees.c zlib/zutil.c zlib/deflate.c
- zlib/infback.c zlib/inflate.c zlib/uncompr.c simplerng.c
+ zlib/zcompress.c zlib/zutil.c simplerng.c
f77_wrap1.c f77_wrap2.c f77_wrap3.c f77_wrap4.c
)
@@ -132,15 +133,24 @@
ENDIF()
ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${H_FILES} ${SRC_FILES})
-TARGET_LINK_LIBRARIES(${LIB_NAME} ${PTHREADS_LIBRARY} ${M_LIB} ${CURL_LIBRARIES})
@@ -52,8 +45,11 @@ diff -rupN cfitsio/CMakeLists.txt cfitsio-new/CMakeLists.txt
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES VERSION ${${PROJECT_NAME}_VERSION} SOVERSION ${${PROJECT_NAME}_MAJOR_VERSION})
-install(TARGETS ${LIB_NAME} DESTINATION ${LIB_DESTINATION})
-install(TARGETS ${LIB_NAME}
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib)
-install(FILES ${H_FILES} DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel)
+
+IF(WIN32)
+ SET_TARGET_PROPERTIES(${LIB_NAME}
+ PROPERTIES
@@ -70,25 +66,26 @@ diff -rupN cfitsio/CMakeLists.txt cfitsio-new/CMakeLists.txt
+)
+INSTALL(FILES ${H_FILES} DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel)
ENABLE_TESTING()
# Only build test code and executables if building a shared library:
IF (BUILD_SHARED_LIBS)
@@ -160,9 +170,11 @@
@@ -96,9 +104,11 @@ ADD_TEST(cookbook cookbook)
ADD_EXECUTABLE(FPack fpack.c fpackutil.c)
TARGET_LINK_LIBRARIES(FPack ${LIB_NAME})
+ INSTALL(TARGETS FPack DESTINATION bin)
ADD_EXECUTABLE(FPack fpack.c fpackutil.c)
TARGET_LINK_LIBRARIES(FPack ${LIB_NAME})
+INSTALL(TARGETS FPack DESTINATION bin)
ADD_EXECUTABLE(Funpack funpack.c fpackutil.c)
TARGET_LINK_LIBRARIES(Funpack ${LIB_NAME})
+ INSTALL(TARGETS Funpack DESTINATION bin)
ADD_EXECUTABLE(Funpack funpack.c fpackutil.c)
TARGET_LINK_LIBRARIES(Funpack ${LIB_NAME})
+INSTALL(TARGETS Funpack DESTINATION bin)
ADD_EXECUTABLE(Fitscopy fitscopy.c)
TARGET_LINK_LIBRARIES(Fitscopy ${LIB_NAME})
@@ -175,5 +187,7 @@
ADD_EXECUTABLE(Fitscopy fitscopy.c)
TARGET_LINK_LIBRARIES(Fitscopy ${LIB_NAME})
@@ -110,3 +120,8 @@ if(MSVC)
LINK_FLAGS "setargv.obj"
)
endif(MSVC)
+
ENDIF(BUILD_SHARED_LIBS)
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cfitsio.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/cfitsio.pc @ONLY)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cfitsio.pc DESTINATION lib/pkgconfig/)
+STRING(REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}/" "" PC_INCLUDE_DIR ${INCLUDE_INSTALL_DIR})
+STRING(REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}/" "" PC_LIB_DIR lib${LIB_SUFFIX} )
+CONFIGURE_FILE(cfitsio.pc.in cfitsio.pc @ONLY)

45
mingw-w64-cninja/PKGBUILD Normal file
View File

@@ -0,0 +1,45 @@
# Maintainer: Jean-Michaël Celerier <jeanmichael.celerier at gmail dot com>
_realname=cninja
pkgbase=mingw-w64-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
pkgver=3.5.3
pkgrel=1
pkgdesc="cninja, an opinionated cmake config manager"
arch=('any')
url="https://github.com/jcelerier/cninja"
license=('AGPLv3')
depends=(
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-clang"
"${MINGW_PACKAGE_PREFIX}-lld"
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-libc++"
)
makedepends=(
"${MINGW_PACKAGE_PREFIX}-boost"
)
provides=("$pkgname=$pkgver")
source=("https://github.com/jcelerier/cninja/releases/download/v${pkgver}/cninja-v${pkgver}-src.tar.gz")
sha512sums=("915495dcd0abfda9adc7c7b69bb195929a9e26e5052314f9d14596924dac5c62487b488a5926fc59b5e2bf44ea033acbb2c49adb88f5e5ed180f2b6398936f8d")
build() {
[[ -d ${srcdir}/build-${MINGW_CHOST} ]] && rm -rf ${srcdir}/build-${MINGW_CHOST}
mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST}
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
${MINGW_PREFIX}/bin/cmake \
-GNinja \
-Wno-dev \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \
"$srcdir"
cmake --build .
}
package() {
cd "$srcdir/build-${MINGW_CHOST}"
DESTDIR="${pkgdir}" cmake --build . --target install/strip
install -D -m644 "$srcdir/LICENSE.md" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}

View File

@@ -1,64 +0,0 @@
# Maintainer: wirx6 <wirx654@gmail.com>
_realname=binutils
_targets=(i686-elf
x86_64-elf
arm-none-eabi)
pkgbase=mingw-w64-cross-${_realname}
pkgname=()
for target in ${_targets[@]}
do
pkgname+=(${MINGW_PACKAGE_PREFIX}-${target}-${_realname})
done
pkgver=2.31.1
pkgrel=1
arch=('any')
url="https://www.gnu.org/software/binutils/"
license=('GPL')
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
options=(staticlibs)
source=("https://mirrors.kernel.org/sources.redhat.com/${_realname}/releases/${_realname}-${pkgver}.tar.bz2")
sha256sums=('SKIP')
build() {
for target in ${_targets[@]}
do
plain "building ${MINGW_PACKAGE_PREFIX}-${target}-${_realname}"
cd ${srcdir}
[[ -d build-${MINGW_CHOST}-${target} ]] && rm -rf build-${MINGW_CHOST}-${target}
mkdir -p build-${MINGW_CHOST}-${target} && cd build-${MINGW_CHOST}-${target}
../${_realname}-${pkgver}/configure \
--build="${MINGW_CHOST}" \
--host="${MINGW_CHOST}" \
--target="${target}" \
--prefix="${MINGW_PREFIX}" \
--with-sysroot="${MINGW_PREFIX}" \
--disable-nls \
--disable-rpath \
--disable-werror \
--enable-multilib \
--enable-interwork
make
done
}
package_target() {
pkgdesc="GNU Tools for ${1} target - Binutils (mingw-w64)"
groups=("${MINGW_PACKAGE_PREFIX}-${1}-toolchain")
cd ${srcdir}/build-${MINGW_CHOST}-${1}
make DESTDIR=${pkgdir} install
rm -rf ${pkgdir}${MINGW_PREFIX}/share/info
}
for target in ${_targets[@]}
do
eval "package_${MINGW_PACKAGE_PREFIX}-${target}-${_realname}() {
package_target ${target}
}"
done

View File

@@ -13,7 +13,7 @@ fi
_realname=curl
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}${_namesuff}"
pkgver=7.71.0
pkgver=7.72.0
pkgrel=1
pkgdesc="Command line tool and library for transferring data with URLs. (mingw-w64)"
arch=('any')
@@ -46,7 +46,7 @@ source=("${url}/download/${_realname}-${pkgver}.tar.bz2"{,.asc}
"0001-Make-cURL-relocatable.patch"
"0002-nghttp2-static.patch"
"0003-libpsl-static-libs.patch")
sha256sums=('600f00ac2481a89548a4141ddf983fd9386165e1960bac91d0a1c81dca5dd341'
sha256sums=('ad91970864102a59765e20ce16216efc9d6ad381471f7accceceab7d905703ef'
'SKIP'
'70bc753d72c8b5b814ceffc0d7007626f3a7c9dfa6d10bf29afdf5f594cdb6a4'
'79eec8a337e375d5102fef884030ceacd163a79e5c495e9a974a6b9a11b60c61'

View File

@@ -4,12 +4,12 @@ _realname=dfu-programmer
pkgbase=mingw-w64-${_realname}
pkgname=${MINGW_PACKAGE_PREFIX}-${_realname}
pkgver=0.7.2
pkgrel=1
pkgrel=2
pkgdesc='Device firmware update based USB programmer for Atmel chips (mingw-w64)'
arch=('any')
license=('GPL')
url='https://github.com/dfu-programmer/dfu-programmer'
makedepends=("${MINGW_PACKAGE_PREFIX}-libusb-win32")
depends=("${MINGW_PACKAGE_PREFIX}-libusb-win32")
source=(
"https://downloads.sourceforge.net/project/dfu-programmer/dfu-programmer/${pkgver}/dfu-programmer-${pkgver}.tar.gz"
01-use-libusb-win32.patch

View File

@@ -4,7 +4,7 @@
_realname=enchant
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.2.8
pkgver=2.2.10
pkgrel=1
pkgdesc="Enchanting Spell Checking Library (mingw-w64)"
arch=('any')
@@ -21,7 +21,7 @@ depends=(${MINGW_PACKAGE_PREFIX}-aspell
options=('!libtool' 'strip' '!debug' '!makeflags')
source=("${_realname}-${pkgver}.tar.gz::https://github.com/AbiWord/enchant/archive/v${pkgver}.tar.gz"
001_fix_relocation.patch)
sha256sums=('20cf8120e57723c6aa6a2595c357e45f68fd21afe1f0382b0cef5e4c251800e7'
sha256sums=('bacfc31336c4da9f1e6405be2761266e049e893039f22f1d792c75f0366c5a56'
'8cac1be09ab84212b4ee388cbaa45593e3ed71b257b64c20e99cf147249dec62')
prepare() {

View File

@@ -1,20 +0,0 @@
diff -Naur exiv2-0.26.orig/test/functions.source exiv2-0.26/test/functions.source
--- exiv2-0.26.orig/test/functions.source 2017-04-26 21:16:21.000000000 +0200
+++ exiv2-0.26/test/functions.source 2017-06-20 23:59:49.920106800 +0200
@@ -440,6 +440,8 @@
testdir="$here/tmp"
datadir="../data"
+ mkdir -p $testdir
+
if [ -z "$EXIV2_BINDIR" ] ; then
bin="$here/../build/bin/"
else
@@ -452,6 +454,7 @@
export PLATFORM=cygwin
elif [ "${os:0:4}" == "MING" -o "${os:0:4}" == "MSYS" ]; then
export PLATFORM=mingw
+ bin=$(cygpath $EXIV2_BINDIR)
else
export PLATFORM=$os
fi

View File

@@ -4,8 +4,8 @@
_realname=exiv2
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.27.2
pkgrel=2
pkgver=0.27.3
pkgrel=1
pkgdesc="Exif and Iptc metadata manipulation library and tools (mingw-w64)"
arch=('any')
url="https://exiv2.org/"
@@ -15,19 +15,15 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-libtool"
"${MINGW_PACKAGE_PREFIX}-cmake")
depends=("${MINGW_PACKAGE_PREFIX}-expat"
"${MINGW_PACKAGE_PREFIX}-gettext"
"${MINGW_PACKAGE_PREFIX}-curl"
"${MINGW_PACKAGE_PREFIX}-libssh2"
"${MINGW_PACKAGE_PREFIX}-libiconv"
"${MINGW_PACKAGE_PREFIX}-zlib")
options=('strip' 'staticlibs')
source=(${_realname}-${pkgver}.tar.gz::"https://github.com/Exiv2/${_realname}/archive/v${pkgver}.tar.gz"
0001-fix-tests.patch)
sha256sums=('3dbcaf01fbc5b98d42f091d1ff0d4b6cd9750dc724de3d9c0d113948570b2934'
'8d6928e9657554a0ba306bfc931dc3a5fc08422c8552fed1bbe00b512e69eae4')
source=(${_realname}-${pkgver}.tar.gz::"https://github.com/Exiv2/${_realname}/archive/v${pkgver}.tar.gz")
sha256sums=('6398bc743c32b85b2cb2a604273b8c90aa4eb0fd7c1700bf66cbb2712b4f00c1')
prepare() {
cd ${srcdir}/${_realname}-${pkgver}
patch -p1 -i ${srcdir}/0001-fix-tests.patch
}
build() {
@@ -51,18 +47,13 @@ build() {
-DEXIV2_ENABLE_NLS=OFF \
-DEXIV2_ENABLE_WIN_UNICODE=ON \
-DEXIV2_BUILD_SAMPLES=OFF \
-DEXIV2_ENABLE_WEBREADY=ON \
-DEXIV2_ENABLE_CURL=ON \
-DEXIV2_ENABLE_SSH=ON \
../${_realname}-${pkgver}
make
}
check() {
cd ${srcdir}/build-${MINGW_CHOST}
make tests
}
package() {
cd ${srcdir}/build-${MINGW_CHOST}
make DESTDIR="${pkgdir}" install

View File

@@ -3,7 +3,7 @@
_realname=FAudio
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=20.08
pkgver=20.09
pkgrel=1
pkgdesc="FAudio - Accuracy-focused XAudio reimplementation for open platforms (mingw-w64)"
arch=('any')
@@ -16,7 +16,7 @@ depends=("${MINGW_PACKAGE_PREFIX}-SDL2"
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake")
options=('strip' 'staticlibs')
source=(${_realname}-${pkgver}.tar.gz::"https://github.com/FNA-XNA/FAudio/archive/${pkgver}.tar.gz")
sha256sums=('5c3409fa0e532591f0ab4de1ae57d07cc345efa5cbe83ec25e9f5ba180f920f4')
sha256sums=('375d12ba57f507b95e030926fd08308029b38af883d0524583a2d5d8fe65168b')
build() {
[[ -d "${srcdir}"/build-${CARCH} ]] && rm -rf "${srcdir}"/build-${CARCH}

View File

@@ -5,8 +5,8 @@
_realname=ffmpeg
pkgbase="mingw-w64-${_realname}"
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=4.3
pkgrel=2
pkgver=4.3.1
pkgrel=1
pkgdesc="Complete and free Internet live audio and video broadcasting solution (mingw-w64)"
arch=('any')
url="https://ffmpeg.org/"
@@ -49,7 +49,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-nasm")
source=(https://ffmpeg.org/releases/${_realname}-${pkgver}.tar.xz{,.asc})
validpgpkeys=('FCF986EA15E6E293A5644F10B4322F04D67658D8')
sha256sums=('1d0ad06484f44bcb97eba5e93c40bcb893890f9f64aeb43e46cd9bb4cbd6795d'
sha256sums=('ad009240d46e307b4e03a213a0f49c11b650e445b1f8be0dda2a9212b34d2ffb'
'SKIP')
prepare() {

View File

@@ -7,7 +7,7 @@ provides=("${MINGW_PACKAGE_PREFIX}-${_realname}")
conflicts=("${MINGW_PACKAGE_PREFIX}-${_realname}")
replaces=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=3.18.0
pkgrel=4
pkgrel=5
pkgdesc="Library project for developers who would like to support popular graphics image formats (mingw-w64)"
arch=('any')
license=('GPL' 'custom:FIPL')
@@ -24,20 +24,24 @@ depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-iconv"
"${MINGW_PACKAGE_PREFIX}-pkg-config"
"dos2unix" "make")
"dos2unix" "make" "lndir")
options=('strip' 'staticlibs' '!buildflags')
source=("https://downloads.sourceforge.net/sourceforge/freeimage/${_realname}${pkgver//./}.zip"
'FreeImage-3.17.0_mingw-makefiles.patch'
'FreeImage-3.18.0_unbundle.patch')
'FreeImage-3.18.0_unbundle.patch'
'freeimage-libraw-0.20.patch')
sha256sums=('f41379682f9ada94ea7b34fe86bf9ee00935a3147be41b6569c9605a53e438fd'
'df3845a61b45fdb0426c4466e48e2478e63effb721cb0b1f2521952390c57290'
'029960951b743bbf78557d78cd3ac5c417146b169f65aaf9fc2c7a914a87611b')
'029960951b743bbf78557d78cd3ac5c417146b169f65aaf9fc2c7a914a87611b'
'71c25974c25dfced11b08206aae6e759675b53bae061be5f34fa1107beec9233')
prepare() {
cd ${srcdir}/${_realname}
patch -p1 -i ${srcdir}/FreeImage-3.18.0_unbundle.patch
patch -p1 -i ${srcdir}/FreeImage-3.17.0_mingw-makefiles.patch
# taken from Arch
patch -p1 -i ${srcdir}/freeimage-libraw-0.20.patch
# remove all included libs to make sure these don't get used during compile
rm -r Source/Lib* Source/ZLib Source/OpenEXR

View File

@@ -0,0 +1,50 @@
--- FreeImage/Source/FreeImage/PluginRAW.cpp.orig 2020-07-23 17:27:57.937848902 +0000
+++ FreeImage/Source/FreeImage/PluginRAW.cpp 2020-07-23 17:28:59.482079468 +0000
@@ -63,17 +63,14 @@
}
int read(void *buffer, size_t size, size_t count) {
- if(substream) return substream->read(buffer, size, count);
return _io->read_proc(buffer, (unsigned)size, (unsigned)count, _handle);
}
int seek(INT64 offset, int origin) {
- if(substream) return substream->seek(offset, origin);
return _io->seek_proc(_handle, (long)offset, origin);
}
INT64 tell() {
- if(substream) return substream->tell();
return _io->tell_proc(_handle);
}
@@ -83,13 +80,11 @@
int get_char() {
int c = 0;
- if(substream) return substream->get_char();
if(!_io->read_proc(&c, 1, 1, _handle)) return -1;
return c;
}
char* gets(char *buffer, int length) {
- if (substream) return substream->gets(buffer, length);
memset(buffer, 0, length);
for(int i = 0; i < length; i++) {
if(!_io->read_proc(&buffer[i], 1, 1, _handle))
@@ -104,7 +99,6 @@
std::string buffer;
char element = 0;
bool bDone = false;
- if(substream) return substream->scanf_one(fmt,val);
do {
if(_io->read_proc(&element, 1, 1, _handle) == 1) {
switch(element) {
@@ -127,7 +121,6 @@
}
int eof() {
- if(substream) return substream->eof();
return (_io->tell_proc(_handle) >= _eof);
}

View File

@@ -3,7 +3,7 @@
_realname=fribidi
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.0.9
pkgver=1.0.10
pkgrel=1
pkgdesc="A Free Implementation of the Unicode Bidirectional Algorithm (mingw-w64)"
arch=('any')
@@ -15,7 +15,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-meson"
"${MINGW_PACKAGE_PREFIX}-ninja")
source=(${_realname}-${pkgver}.tar.gz::"https://github.com/fribidi/fribidi/archive/v${pkgver}.tar.gz")
sha256sums=('ef6f940d04213a0fb91a0177b2b57df2031bf3a7e2cd0ee2c6877a160fc206df')
sha256sums=('3ebb19c4184ed6dc324d2e291d7465bc6108a20be019f053f33228e07e879c4f')
build() {
mkdir -p build-${MINGW_CHOST}-static

View File

@@ -84,7 +84,10 @@ sha256sums=('b8dd4368bb9c7f0b98188317ee0254dd8cc99d1e3a18d0ff146c855fe16c1d8c'
'c7359f4c7015bc1fb02bc13449fa9826669273bd1f0663ba898decb67e8487fc'
'055289699c4222ef0b8125abdc8c9ceeff0712876c86e6d552a056fbacc14284'
'5240a9e731b45c17a164066c7eb193c1fbee9fd8d9a2a5afa2edbcde9510da47')
validpgpkeys=('33C235A34C46AA3FFB293709A328C3A2C3C45C06')
validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org
86CFFCA918CF3AF47147588051E8B148A9999C34 # evangelos@foutrelis.com
13975A70E63C361C73AE69EF6EEB81F8981C74C7 # richard.guenther@gmail.com
33C235A34C46AA3FFB293709A328C3A2C3C45C06) # Jakub Jelinek <jakub@redhat.com>
# Helper macros to help make tasks easier #
apply_patch_with_msg() {

View File

@@ -6,7 +6,7 @@
_realname=glib2
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.64.4
pkgver=2.64.5
pkgrel=1
url="https://www.gtk.org/"
arch=('any')
@@ -31,7 +31,7 @@ source=("https://download.gnome.org/sources/glib/${pkgver%.*}/glib-${pkgver}.tar
gio-querymodules.hook.in
0002-disable_glib_compile_schemas_warning.patch
pyscript2exe.py)
sha256sums=('f7e0b325b272281f0462e0f7fff25a833820cac19911ff677251daf6d87bce50'
sha256sums=('9cbd5bd2715ead1c28d53c46f7b7b6ff6166f5887b772c1a9e3bf2910cfecc11'
'51d02360a1ee978fd45e77b84bca9cfbcf080d91986b5c0efe0732779c6a54ec'
'1e3ac7cfd4644f3849704e54fcfbb12d15440a33cd5c2d014d4a479c6aaab185'
'0f44135a139e3951c4b5fa7d4628d75226e0666d891faf524777e1d1ec3b440b'

View File

@@ -4,7 +4,7 @@
_realname=gnupg
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.2.20
pkgver=2.2.23
pkgrel=1
pkgdesc="GNU Privacy Guard - a PGP replacement tool (mingw-w64)"
arch=('any')
@@ -32,7 +32,7 @@ source=(https://gnupg.org/ftp/gcrypt/gnupg/${_realname}-${pkgver}.tar.bz2{,.sig}
02-mingw-sysconfigdir-under-prefix.patch
03-ldap-libraries-check-order.patch
04-dos-extra-defs.patch)
sha256sums=('04a7c9d48b74c399168ee8270e548588ddbe52218c337703d7f06373d326ca30'
sha256sums=('10b55e49d78b3e49f1edb58d7541ecbdad92ddaeeb885b6f486ed23d1cd1da5c'
'SKIP'
'592396d968353f991c879488b4b3e55a550873fa74703e08c7d28bb22241d8b9'
'a936d17a8dc60fb401db07d040e55e03ba382d5e38871d1b62f527b1aa458dc1'

View File

@@ -1,177 +1,144 @@
diff -Naur gnuplot-5.2.0.orig/config/mingw/Makefile gnuplot-5.2.0/config/mingw/Makefile
--- gnuplot-5.2.0.orig/config/mingw/Makefile 2017-07-31 04:02:24.000000000 +0200
+++ gnuplot-5.2.0/config/mingw/Makefile 2017-09-10 18:36:11.300817700 +0200
@@ -236,8 +236,8 @@
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/config/mingw/Makefile gnuplot-5.4.0/config/mingw/Makefile
--- gnuplot-5.4.0.orig/config/mingw/Makefile 2020-04-10 09:15:40.000000000 +0530
+++ gnuplot-5.4.0/config/mingw/Makefile 2020-09-06 20:38:04.140186600 +0530
@@ -784,19 +784,19 @@
$(HELPFILE): $(BUILDHELPFILE)
$(CP) $^ $@
ifndef TARGET
TARGET=wgnuplot.exe
-#TARGET=wgnuplot_pipes.exe
-#TARGET=gnuplot.exe
+TARGET=wgnuplot_pipes.exe
+TARGET=gnuplot.exe
endif
# Set PIPES and CONSOLE according to the target
@@ -571,7 +571,7 @@
$(MAKE) TARGET=gnuplot.exe gnuplot.pdf tutorial.pdf \
ps_symbols.pdf ps_fontfile_doc.pdf ps_guide.pdf
-support: $(HELPFILE) $(M)bf_test.exe $(QT_TARGET) $(QT_TRANSLATION) demo_plugin.dll $(LUATARGETS) $(HELPFILEJA)
+support: $(QT_TARGET) $(QT_TRANSLATION) $(LUATARGETS)
ja: $(HELPFILEJA)
@@ -598,8 +598,8 @@
$(CC) -c $(CFLAGS) $(CFLAGSEXTRA) -MMD -MT '$*.$$(O)' -MF $*.d -o $@ $<
LDLIBS = -lkernel32 -lgdi32 -lwinspool -lcomdlg32 -lcomctl32 -ladvapi32 -lshell32 -lmsimg32 -lgdiplus -lshlwapi -ld2d1 -ldwrite -lole32
-LDLIBS += -lhtmlhelp
-LDFLAGS2 += -L$(HHWPATH)lib
+#LDLIBS += -lhtmlhelp
+#LDFLAGS2 += -L$(HHWPATH)lib
ifdef MINGW64
LDFLAGS2 += -L.
endif
@@ -717,24 +717,24 @@
$(CC) $(CFLAGS) -I$(M)plugin -shared -o $@ $<
# convert gnuplot.doc to windows/wgnuplot.html
-$(BUILDHELPFILE): doc2html.exe $(D)gnuplot.doc $(D)windows/wgnuplot.hhp $(D)windows/wgnuplot.hhk \
- $(D)windows/wgnuplot.stp $(D)plotstyles.gnu $(CORETERM)
- ./doc2html $(D)gnuplot.doc $(D)windows/
- -./$(TARGET) -d -e "winhelp=1; cd '$(D)'" plotstyles.gnu
- -$(HHC) $(D)windows/wgnuplot.hhp
-
-$(HELPFILE): $(BUILDHELPFILE)
- $(CP) $^ $@
-
-htmlhelp.lib: htmlhelp.def
- dlltool -d htmlhelp.def -l htmlhelp.lib
-
-htmlhelp.def:
-htmlhelp.def: /c/Windows/System32/hhctrl.ocx
-ifndef MINGW64
- pexports c/Windows/System32/hhctrl.ocx > htmlhelp.def
- pexports $^ > $@
-else
- gendef - /c/Windows/System32/hhctrl.ocx > htmlhelp.def
- gendef - $^ > $@
-endif
+#$(BUILDHELPFILE): doc2html.exe $(D)gnuplot.doc $(D)windows/wgnuplot.hhp $(D)windows/wgnuplot.hhk \
+# $(D)windows/wgnuplot.stp $(D)plotstyles.gnu $(CORETERM)
+# ./doc2html $(D)gnuplot.doc $(D)windows/
+# -./$(TARGET) -d -e "winhelp=1; cd '$(D)'" plotstyles.gnu
+# -$(HHC) $(D)windows/wgnuplot.hhp
+#
+#$(HELPFILE): $(BUILDHELPFILE)
+# $(CP) $^ $@
+#
+#htmlhelp.lib: htmlhelp.def
+# dlltool -d htmlhelp.def -l htmlhelp.lib
+
+#htmlhelp.def:
+#htmlhelp.def: /c/Windows/System32/hhctrl.ocx
+#ifndef MINGW64
+# pexports c/Windows/System32/hhctrl.ocx > htmlhelp.def
+# pexports $^ > $@
+#else
+# gendef - /c/Windows/System32/hhctrl.ocx > htmlhelp.def
+# gendef - $^ > $@
+#endif
-prntvpt.def: /c/Windows/System32/prntvpt.dll
-ifndef MINGW64
- pexports $^ > $@
-else
- gendef - $^ > $@
-endif
+#prntvpt.def: /c/Windows/System32/prntvpt.dll
+#ifndef MINGW64
+# pexports $^ > $@
+#else
+# gendef - $^ > $@
+#endif
# Working directory for patched Japanese sources
JA = ja/
@@ -973,9 +973,9 @@
cp -p wgnuplot_pipes.exe $(DESTDIR)/bin/
cp -p $(W)/wgnuplot.mnu $(DESTDIR)/bin/
cp -p $(W)/wgnuplot-ja.mnu $(DESTDIR)/bin/
- cp -p $(HELPFILE) $(DESTDIR)/bin/
+ #cp -p $(HELPFILE) $(DESTDIR)/bin/
ifdef HELPFILEJA
- cp -p $(HELPFILEJA) $(DESTDIR)/bin/
+ #cp -p $(HELPFILEJA) $(DESTDIR)/bin/
endif
# configuration files
mkdir -p $(DESTDIR)/$(GNUPLOT_SHARE_DIR)
@@ -1037,12 +1037,12 @@
cp -p $(TOP)/FAQ.pdf $(DESTDIR)/docs/
-cp -p tutorial.pdf $(DESTDIR)/docs/
mkdir -p $(DESTDIR)/docs/psdoc
- cp -p $(D)psdoc/ps_file.doc $(DESTDIR)/docs/psdoc/ps_file_doc.txt
- cp -p $(D)psdoc/ps_guide.ps $(DESTDIR)/docs/psdoc/
- -cp -p ps_guide.pdf $(DESTDIR)/docs/psdoc/
- -cp -p ps_symbols.ps $(DESTDIR)/docs/psdoc/
- -cp -p ps_symbols.pdf $(DESTDIR)/docs/psdoc/
- -cp -p ps_fontfile_doc.pdf $(DESTDIR)/docs/psdoc/
+ #cp -p $(D)psdoc/ps_file.doc $(DESTDIR)/docs/psdoc/ps_file_doc.txt
+ #cp -p $(D)psdoc/ps_guide.ps $(DESTDIR)/docs/psdoc/
+ #-cp -p ps_guide.pdf $(DESTDIR)/docs/psdoc/
+ #-cp -p ps_symbols.ps $(DESTDIR)/docs/psdoc/
+ #-cp -p ps_symbols.pdf $(DESTDIR)/docs/psdoc/
+ #-cp -p ps_fontfile_doc.pdf $(DESTDIR)/docs/psdoc/
# runtime libraries, configuration files etc.
ifdef EXTRADIST
cp -pR $(EXTRADIST)/* $(DESTDIR)/
diff -Naur gnuplot-5.2.0.orig/src/command.c gnuplot-5.2.0/src/command.c
--- gnuplot-5.2.0.orig/src/command.c 2017-08-30 20:48:26.000000000 +0200
+++ gnuplot-5.2.0/src/command.c 2017-09-10 18:33:08.422397000 +0200
@@ -117,7 +117,7 @@
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/configure.ac gnuplot-5.4.0/configure.ac
--- gnuplot-5.4.0.orig/configure.ac 2020-07-12 05:59:47.000000000 +0530
+++ gnuplot-5.4.0/configure.ac 2020-09-06 20:04:48.475405900 +0530
@@ -37,6 +37,8 @@
AC_C_STRINGIZE
AC_PROG_LN_S
+AC_CANONICAL_HOST
+
if test "${build}" != "${host}"
then
CC=${CC-${host_alias-gcc}}
@@ -50,6 +52,8 @@
CC_FOR_BUILD="${CC}"
AC_PROG_CC
+ build_mingw=no
+
# We must set the default linker to the linker used by gcc for the correct
# operation of libtool. If LD is not defined and we are using gcc, try to
# set the LD default to the ld used by gcc.
@@ -59,7 +63,10 @@
then
case $build in
*-*-mingw*)
- gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'` ;;
+ gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'`
+ AC_MSG_NOTICE([MINGW environment detected, executing MINGW type build])
+ #AC_CONFIG_LINKS([src/config.h:config/config.mgw])
+ build_mingw=yes ;;
*)
gcc_prog_ld=`$CC -print-prog-name=ld 2>&1` ;;
esac
@@ -955,6 +962,8 @@
AM_CONDITIONAL(BUILD_GPCAIRO, test "${build_gpcairo}" = yes)
+AM_CONDITIONAL(BUILD_MINGW, test "${build_mingw}" = yes)
+
dnl Enable subsystem to generate statistical summary of file contents
AC_ARG_ENABLE(stats,dnl
[ --disable-stats Omit calculation of statistical summary of data],
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/demo/plugin/Makefile.am gnuplot-5.4.0/demo/plugin/Makefile.am
--- gnuplot-5.4.0.orig/demo/plugin/Makefile.am 2017-12-22 23:02:30.000000000 +0530
+++ gnuplot-5.4.0/demo/plugin/Makefile.am 2020-09-06 20:05:12.659453700 +0530
@@ -4,7 +4,7 @@
noinst_PROGRAMS = demo_plugin.so
demo_plugin_so_SOURCES = demo_plugin.c gnuplot_plugin.h
-demo_plugin_so_CFLAGS = -rdynamic -fPIC -I$(top_srcdir)/src
+demo_plugin_so_CFLAGS = -fPIC -I$(top_srcdir)/src
demo_plugin_so_LDFLAGS = -shared
# Note: Solaris SunPro C compiler needs these flags instead
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/docs/Makefile.am gnuplot-5.4.0/docs/Makefile.am
--- gnuplot-5.4.0.orig/docs/Makefile.am 2020-04-10 22:24:28.000000000 +0530
+++ gnuplot-5.4.0/docs/Makefile.am 2020-09-06 20:03:02.506859700 +0530
@@ -50,6 +50,11 @@
AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/term
+if BUILD_MINGW
+AM_CPPFLAGS += -DWINDOWS_NO_GUI
+dist_doc_DATA = gnuplot.pdf
+endif
+
# Documentation will be prepared for all terminals in CORETERM
# even if the terminal itself is not included in the build.
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/Makefile.am gnuplot-5.4.0/Makefile.am
--- gnuplot-5.4.0.orig/Makefile.am 2020-03-31 22:58:16.000000000 +0530
+++ gnuplot-5.4.0/Makefile.am 2020-09-06 20:01:49.907467200 +0530
@@ -7,6 +7,8 @@
PATCHLEVEL PGPKEYS README RELEASE_NOTES \
configure.vms win
+dist_doc_DATA = FAQ.pdf README RELEASE_NOTES Copyright NEWS BUGS
+
DISTCLEANFILES = stamp-h
ACLOCAL_AMFLAGS = -I m4
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/src/command.c gnuplot-5.4.0/src/command.c
--- gnuplot-5.4.0.orig/src/command.c 2020-06-11 03:03:34.000000000 +0530
+++ gnuplot-5.4.0/src/command.c 2020-09-06 19:57:28.950915200 +0530
@@ -112,7 +112,7 @@
int thread_rl_RetCode = -1; /* return code from readline in a thread */
#endif /* OS2_IPC */
-#ifndef _Windows
+#if !defined( _Windows) || defined(__MINGW32__)
-#ifndef _WIN32
+#if !defined (_WIN32) || defined (__MINGW32__)
# include "help.h"
#endif /* _Windows */
#endif
@@ -129,7 +129,7 @@
# else
# include <alloc.h>
# endif /* !MSC */
-# include <htmlhelp.h>
+//# include <htmlhelp.h>
# include "win/winmain.h"
#endif /* _Windows */
@@ -2857,7 +2857,7 @@
@@ -2839,7 +2839,7 @@
#ifdef NO_GIH
-#if defined(_Windows)
+#if defined(_Windows) && !defined (__MINGW32__)
-#ifdef _WIN32
+#if defined (_WIN32) && !defined (__MINGW32__)
void
help_command()
{
diff -Naur gnuplot-5.2.0.orig/src/win/winmain.c gnuplot-5.2.0/src/win/winmain.c
--- gnuplot-5.2.0.orig/src/win/winmain.c 2017-07-30 18:44:02.000000000 +0200
+++ gnuplot-5.2.0/src/win/winmain.c 2017-09-10 18:29:06.999408000 +0200
@@ -56,7 +56,7 @@
#include <commctrl.h>
#include <shlobj.h>
#include <shlwapi.h>
-#include <htmlhelp.h>
+//#include <htmlhelp.h>
#include <dos.h>
#include <stdio.h>
#include <stdlib.h>
@@ -371,7 +371,8 @@
else
lang = GetLanguageCode();
- filename = (LPTSTR) malloc((_tcslen(szModuleName) + _tcslen(name) + _tcslen(lang) + _tcslen(ext) + 1) * sizeof(TCHAR));
+ //filename = (LPTSTR) malloc((_tcslen(szModuleName) + _tcslen(name) + _tcslen(lang) + _tcslen(ext) + 1) * sizeof(TCHAR));
+ filename = (LPTSTR) malloc(1024 * sizeof(TCHAR));
if (filename) {
_tcscpy(filename, szModuleName);
_tcscat(filename, name);
--- gnuplot-5.2.0.orig/src/term.c 2017-07-09 01:49:45.000000000 +0200
+++ gnuplot-5.2.0/src/term.c 2017-09-22 06:30:56.438408900 +0200
@@ -1582,7 +1582,7 @@
#if defined(WXWIDGETS) && defined(_WIN32)
if (term_name == (char *) NULL)
- term_name = "wxt";
+ term_name = "win";
#endif
#ifdef QTTERM
--- gnuplot-5.2.0.orig/src/makefile.am.orig 2016-01-10 01:22:18.000000000 +0100
+++ gnuplot-5.2.0/src/makefile.am 2017-09-22 00:25:36.299247900 +0200
@@ -91,6 +91,26 @@
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/src/Makefile.am gnuplot-5.4.0/src/Makefile.am
--- gnuplot-5.4.0.orig/src/Makefile.am 2020-03-31 22:58:16.000000000 +0530
+++ gnuplot-5.4.0/src/Makefile.am 2020-09-06 20:06:11.275225300 +0530
@@ -93,6 +93,25 @@
# Hercules and original pc graphics driver code
# corgraph.asm header.mac hrcgraph.asm pcgraph.asm lineproc.mac
@@ -184,7 +151,6 @@ diff -Naur gnuplot-5.2.0.orig/src/win/winmain.c gnuplot-5.2.0/src/win/winmain.c
+AM_CPPFLAGS += -D__USE_MINGW_ANSI_STDIO=1
+AM_CPPFLAGS += -DUSE_MOUSE=1 -DWIN_IPC
+
+
+AM_LDFLAGS =
+
+gnuplot_SOURCES += win/winmain.c win/wgnuplib.c win/wgraph.c win/wprinter.c \
@@ -198,7 +164,7 @@ diff -Naur gnuplot-5.2.0.orig/src/win/winmain.c gnuplot-5.2.0/src/win/winmain.c
if BUILD_WXWIDGETS
gnuplot_SOURCES += wxterminal/wxt_gui.cpp
endif
@@ -101,6 +121,43 @@
@@ -103,6 +122,41 @@
if BUILD_BITMAP
gnuplot_SOURCES += bitmap.c
@@ -208,7 +174,6 @@ diff -Naur gnuplot-5.2.0.orig/src/win/winmain.c gnuplot-5.2.0/src/win/winmain.c
+
+menudir = $(prefix)/bin
+menu_DATA = win/wgnuplot.mnu
+dist_doc_DATA = ../FAQ.pdf ../README ../RELEASE_NOTES ../Copyright ../NEWS ../ChangeLog ../BUGS
+
+wgnuplot_SOURCES = $(gnuplot_SOURCES)
+wgnuplot_SOURCES += win/wtext.c win/screenbuf.c win/wmenu.c win/wredirect.cpp
@@ -216,7 +181,6 @@ diff -Naur gnuplot-5.2.0.orig/src/win/winmain.c gnuplot-5.2.0/src/win/winmain.c
+wgnuplot_LDADD = $(gnuplot_LDADD) wgplt_res.$(O)
+wgnuplot_LDFLAGS = $(AM_LDFLAGS) -mwindows --enable-auto-import
+
+
+#wgnuplot_pipes section
+bin_PROGRAMS += wgnuplot_pipes
+
@@ -241,117 +205,17 @@ diff -Naur gnuplot-5.2.0.orig/src/win/winmain.c gnuplot-5.2.0/src/win/winmain.c
+
endif
DISTCLEANFILES = timestamp.h
--- gnuplot-5.2.0.orig/makefile.am 2017-06-05 00:03:34.000000000 +0200
+++ gnuplot-5.2.0/makefile.am 2017-09-22 06:53:00.751133800 +0200
@@ -7,6 +7,8 @@
Makefile.maint PATCHLEVEL PGPKEYS README RELEASE_NOTES \
VERSION configure.vms win
if DEVELOPMENT_VERSION
diff --unified '--color=auto' -r gnuplot-5.4.0.orig/src/win/winmain.c gnuplot-5.4.0/src/win/winmain.c
--- gnuplot-5.4.0.orig/src/win/winmain.c 2020-04-10 22:24:28.000000000 +0530
+++ gnuplot-5.4.0/src/win/winmain.c 2020-09-06 19:58:17.437576400 +0530
@@ -368,7 +368,8 @@
else
lang = GetLanguageCode();
+dist_doc_DATA = FAQ.pdf README RELEASE_NOTES Copyright NEWS ChangeLog BUGS
+
DISTCLEANFILES = stamp-h
ACLOCAL_AMFLAGS = -I m4
--- gnuplot-5.2.0.orig/docs/makefile.am.orig 2017-07-06 01:01:27.000000000 +0200
+++ gnuplot-5.2.0/docs/makefile.am 2017-09-22 07:01:56.461836100 +0200
@@ -50,6 +50,12 @@
AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/term
+if BUILD_MINGW
+AM_CPPFLAGS += -DWINDOWS_NO_GUI
+dist_doc_DATA = gnuplot.pdf
+endif
+
+
T = $(top_srcdir)/term/
CORETERM = $(T)ai.trm $(T)aquaterm.trm $(T)be.trm $(T)caca.trm \
$(T)cairo.trm $(T)canvas.trm $(T)cgm.trm $(T)context.trm \
@@ -124,7 +130,8 @@
done >$@
# for debugging
-alldoc: check dvi gih hlp html info ipf nroff pdf ps rnh rtf htb
+#alldoc: check dvi gih hlp html info ipf nroff pdf ps rnh rtf htb
+alldoc: gih
### [tn]roff documentation
troff: gnuplot.ms $(srcdir)/titlepag.ms
@@ -223,6 +230,7 @@
doc2tex_SOURCES = doc2tex.c termdoc.c
doc2tex_CPPFLAGS = -DALL_TERM_DOC $(AM_CPPFLAGS)
+doc2tex_CFLAGS= -DWINDOWS_NO_GUI
dvi: gnuplot.dvi
gnuplot.dvi: gnuplot.tex $(srcdir)/titlepag.tex $(srcdir)/toc_entr.sty
@@ -339,6 +347,7 @@
$(AM_V_GEN) ./doc2ipf$(EXEEXT) $(srcdir)/gnuplot.doc gnuplot.ipf
doc2ipf_SOURCES = doc2ipf.c termdoc.c xref.c
+doc2ipf_CFLAGS= -DWINDOWS_NO_GUI
### Rich Text Format
rtf: gnuplot.rtf
@@ -366,6 +375,8 @@
fi
checkdoc_SOURCES = checkdoc.c termdoc.c gnuplot.doc
+checkdoc_CFLAGS= -DWINDOWS_NO_GUI
+
clean-local:
$(AM_V_at)for f in figure*.pdf $(LUA_HELP); do \
--- gnuplot-5.2.0.orig/configure.ac.orig 2017-09-03 05:43:58.000000000 +0200
+++ gnuplot-5.2.0/configure.ac 2017-09-20 15:41:50.308502400 +0200
@@ -36,6 +36,8 @@
AC_C_STRINGIZE
AC_PROG_LN_S
+AC_CANONICAL_HOST
+
if test "${build}" != "${host}"
then
CC=${CC-${host_alias-gcc}}
@@ -49,6 +51,8 @@
CC_FOR_BUILD="${CC}"
AC_PROG_CC
+ build_mingw=no
+
# We must set the default linker to the linker used by gcc for the correct
# operation of libtool. If LD is not defined and we are using gcc, try to
# set the LD default to the ld used by gcc.
@@ -58,7 +62,10 @@
then
case $build in
*-*-mingw*)
- gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'` ;;
+ gcc_prog_ld=`$CC -print-prog-name=ld 2>&1 | tr -d '\015'`
+ AC_MSG_NOTICE([MINGW environment detected, executing MINGW type build])
+ #AC_CONFIG_LINKS([src/config.h:config/config.mgw])
+ build_mingw=yes ;;
*)
gcc_prog_ld=`$CC -print-prog-name=ld 2>&1` ;;
esac
@@ -1087,6 +1094,8 @@
AM_CONDITIONAL(BUILD_GPCAIRO, test "${build_gpcairo}" = yes)
+AM_CONDITIONAL(BUILD_MINGW, test "${build_mingw}" = yes)
+
dnl Enable subsystem to generate statistical summary of file contents
AC_ARG_ENABLE(stats,dnl
[ --disable-stats Omit calculation of statistical summary of data],
--- gnuplot-5.2.0.orig/demo/plugin/Makefile.am.orig 2016-06-22 22:58:42.000000000 +0200
+++ gnuplot-5.2.0/demo/plugin/Makefile.am 2018-02-23 15:44:39.590296200 +0100
@@ -4,8 +4,8 @@
noinst_PROGRAMS = demo_plugin.so
demo_plugin_so_SOURCES = demo_plugin.c gnuplot_plugin.h
-demo_plugin_so_CFLAGS = -rdynamic -fPIC -I$(top_srcdir)/src
+demo_plugin_so_CFLAGS = -fPIC -I$(top_srcdir)/src
demo_plugin_so_LDFLAGS = -shared
# Note: Solaris SunPro C compiler needs these flags instead
- filename = (LPTSTR) malloc((_tcslen(szModuleName) + _tcslen(name) + _tcslen(lang) + _tcslen(ext) + 1) * sizeof(TCHAR));
+ //filename = (LPTSTR) malloc((_tcslen(szModuleName) + _tcslen(name) + _tcslen(lang) + _tcslen(ext) + 1) * sizeof(TCHAR));
+ filename = (LPTSTR) malloc(1024 * sizeof(TCHAR));
if (filename) {
_tcscpy(filename, szModuleName);
_tcscat(filename, name);

View File

@@ -6,7 +6,7 @@
_realname=gnuplot
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=5.2.8
pkgver=5.4.0
pkgrel=1
pkgdesc="Plotting package which outputs to X11, PostScript, PNG, GIF, and others (mingw-w64)"
arch=('any')
@@ -25,14 +25,14 @@ depends=("${MINGW_PACKAGE_PREFIX}-cairo"
options=('strip' 'staticlibs')
source=("https://downloads.sourceforge.net/sourceforge/${_realname}/${_realname}-${pkgver}.tar.gz"
"01-gnuplot.patch" )
sha256sums=('60a6764ccf404a1668c140f11cc1f699290ab70daa1151bb58fed6139a28ac37'
'4e87cf60cba733fd0f7144c886329b5f762902853fb48da042f3c11d980e2a69')
sha256sums=('eb4082f03a399fd1e9e2b380cf7a4f785e77023d8dcc7e17570c1b5570a49c47'
'9f32dd569400d986f4597a89ecb83021cebb4ce8a15256cab7a0d71581b05fa4')
prepare() {
cd "${srcdir}"/${_realname}-${pkgver}
patch -p1 -i ${srcdir}/01-gnuplot.patch
autoreconf -fi
autoreconf -fiv
}
build() {

View File

@@ -1,94 +0,0 @@
From b47e28afa5c0ee9a7fe1dff907f7eb99511b35c7 Mon Sep 17 00:00:00 2001
From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Sat, 6 Jun 2020 14:05:16 +0200
Subject: [PATCH] Merge the extra libraries to link dynamically in
GNUTLS_LIBS_PRIVATE
This should fix #1020 where bcrypt is missing from thirdparty_libadd.
Ultimately it would be good to add libraries that always need to be linked in
one variable that is shared between the Makefile and the pkg-config file.
Signed-off-by: Steve Lhomme <robux4@ycbcr.xyz>
---
configure.ac | 12 ++++++------
lib/Makefile.am | 2 +-
lib/gnutls.pc.in | 2 +-
3 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/configure.ac b/configure.ac
index d59553b6a1..74278d5689 100644
--- a/configure.ac
+++ b/configure.ac
@@ -120,8 +120,7 @@ case "$host" in
*mingw32* | *mingw64*)
have_win=yes
AC_DEFINE([_UNICODE], [1], [Defined to 1 for Unicode (wide chars) APIs])
- LIB_CRYPT32="-lcrypt32"
- AC_SUBST([LIB_CRYPT32])
+ GNUTLS_LIBS_PRIVATE="${GNUTLS_LIBS_PRIVATE} -lcrypt32"
AC_PREPROC_IFELSE([AC_LANG_PROGRAM(
[[#include <windows.h>
#if defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x0600
@@ -135,9 +134,8 @@ case "$host" in
if test "x$enable_dyn_ncrypt" = "xyes"; then
AC_DEFINE([DYN_NCRYPT], 1, [Dynamic use of ncrypt API (win32)])
else
- LIBNCRYPT="-lncrypt"
+ GNUTLS_LIBS_PRIVATE="${GNUTLS_LIBS_PRIVATE} -lncrypt"
fi
- AC_SUBST([LIBNCRYPT])
;;
*darwin*)
have_macosx=yes
@@ -601,11 +599,12 @@ fi
AM_CONDITIONAL(HAVE_LIBIDN2, test "$with_libidn2" != "no")
if test "x$have_vista_dynamic" = "xno"; then
- AC_CHECK_TYPES([BCRYPT_ALG_HANDLE],[LIBBCRYPT="-lbcrypt"],[],[#include <windows.h>
+ AC_CHECK_TYPES([BCRYPT_ALG_HANDLE],[
+ GNUTLS_LIBS_PRIVATE="${GNUTLS_LIBS_PRIVATE} -lbcrypt"
+ ],[],[#include <windows.h>
#include <bcrypt.h>])
fi
AM_CONDITIONAL(HAVE_BCRYPT, test "$ac_cv_type_BCRYPT_ALG_HANDLE" = "yes")
-AC_SUBST([LIBBCRYPT])
AC_ARG_ENABLE(non-suiteb-curves,
AS_HELP_STRING([--disable-non-suiteb-curves], [disable curves not in SuiteB]),
@@ -937,6 +936,7 @@ AC_CHECK_SIZEOF(time_t, 4)
# export for use in scripts
AC_SUBST(ac_cv_sizeof_time_t)
+AC_SUBST(GNUTLS_LIBS_PRIVATE)
AC_SUBST(GNUTLS_REQUIRES_PRIVATE)
diff --git a/lib/Makefile.am b/lib/Makefile.am
index f55f298f7b..fa47ac5e62 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -151,7 +151,7 @@ libgnutls_la_LIBADD = ../gl/libgnu.la x509/libgnutls_x509.la \
auth/libgnutls_auth.la algorithms/libgnutls_alg.la \
extras/libgnutls_extras.la
thirdparty_libadd = $(LTLIBZ) $(LTLIBINTL) $(LIBSOCKET) $(LTLIBNSL) \
- $(P11_KIT_LIBS) $(LIB_SELECT) $(LIB_CRYPT32)
+ $(P11_KIT_LIBS) $(LIB_SELECT) $(GNUTLS_LIBS_PRIVATE)
if HAVE_LIBIDN2
thirdparty_libadd += $(LIBIDN2_LIBS)
diff --git a/lib/gnutls.pc.in b/lib/gnutls.pc.in
index 0ed41e2ddd..7cdedda5d7 100644
--- a/lib/gnutls.pc.in
+++ b/lib/gnutls.pc.in
@@ -19,6 +19,6 @@ Description: Transport Security Layer implementation for the GNU system
URL: https://www.gnutls.org/
Version: @VERSION@
Libs: -L${libdir} -lgnutls
-Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBATOMIC_LIBS@ @LIB_CRYPT32@ @LIBNCRYPT@ @LIBBCRYPT@
+Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBATOMIC_LIBS@ @GNUTLS_LIBS_PRIVATE@
@GNUTLS_REQUIRES_PRIVATE@
Cflags: -I${includedir}
--
2.26.2

View File

@@ -3,7 +3,7 @@
_realname=gnutls
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
_pkgver=3.6.14
_pkgver=3.6.15
pkgver=${_pkgver}
pkgrel=1
pkgdesc="A library which provides a secure layer over a reliable transport layer (mingw-w64)"
@@ -28,15 +28,13 @@ source=(https://www.gnupg.org/ftp/gcrypt/gnutls/v${_pkgver%.*}/${_realname}-${pk
0001-add-missing-define.patch
0003-gnutls-fix-external-libtasn1-detection.patch
0004-disable-broken-examples.patch
0005-remove-coverage-rules.patch
0006-fix-ncrypt-bcrypt-linking.patch)
sha256sums=('5630751adec7025b8ef955af4d141d00d252a985769f51b4059e5affa3d39d63'
0005-remove-coverage-rules.patch)
sha256sums=('0ea8c3283de8d8335d7ae338ef27c53a916f15f382753b174c18b45ffd481558'
'SKIP'
'fe1d9df924f72ec82972df328467591e49fe82feacebaf2605d37cc059c5429e'
'6493f69e782d60fe04de4b0040987e99851c522d0baf2fe25d10b85b63e97863'
'cbf9e59fb2432d4ac1edcb70734023e074b8058fa4c010a036a40de8449f67fb'
'10ea5a84459af8d848788cc8871decd3b3cdd542b829883ebe4f6ec28d60578f'
'33498061ad943439a9a372d77d6e7aa6c618a3f61f766e9931960bfa07188a20')
'10ea5a84459af8d848788cc8871decd3b3cdd542b829883ebe4f6ec28d60578f')
validpgpkeys=('0424D4EE81A0E3D119C6F835EDA21E94B565716F') # "Simon Josefsson <simon@josefsson.org>"
validpgpkeys+=('1F42418905D8206AA754CCDC29EE58B996865171') # "Nikos Mavrogiannopoulos <nmav@gnutls.org>
validpgpkeys+=('462225C3B46F34879FC8496CD605848ED7E69871') # "Daiki Ueno <ueno@unixuser.org>"
@@ -47,8 +45,6 @@ prepare() {
patch -p1 -i ${srcdir}/0003-gnutls-fix-external-libtasn1-detection.patch
patch -p1 -i ${srcdir}/0004-disable-broken-examples.patch
patch -p1 -i ${srcdir}/0005-remove-coverage-rules.patch
# https://gitlab.com/gnutls/gnutls/-/merge_requests/1280
patch -p1 -i ${srcdir}/0006-fix-ncrypt-bcrypt-linking.patch
WANT_AUTOMAKE=latest autoreconf -fiv -I m4
}

View File

@@ -1,11 +1,11 @@
--- gpgme-1.13.1/configure.ac.orig 2019-12-10 09:13:40.267700900 +0100
+++ gpgme-1.13.1/configure.ac 2019-12-10 09:20:25.726331800 +0100
@@ -423,7 +423,7 @@
--- gpgme-1.14.0/configure.ac.orig 2020-09-05 15:02:43.720753300 +0200
+++ gpgme-1.14.0/configure.ac 2020-09-05 15:03:38.558261200 +0200
@@ -425,7 +425,7 @@
if test "$found_py" = "1" -o "$found_py3" = "1"; then
# Reset everything, so that we can look for another Python.
m4_foreach([mym4pythonver],
- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[all]],
+ [[3.4],[3.5],[3.6],[3.7],[3.8],[all]],
- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[all]],
+ [[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[all]],
[unset PYTHON
unset PYTHON_VERSION
unset PYTHON_CPPFLAGS

View File

@@ -5,8 +5,8 @@
_realname=gpgme
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.13.1
pkgrel=4
pkgver=1.14.0
pkgrel=1
pkgdesc="A C wrapper library for GnuPG (mingw-w64)"
arch=('any')
url="https://gnupg.org/related_software/gpgme/"
@@ -35,13 +35,13 @@ validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
'46CC730865BB5C78EBABADCF04376F3EE0856959'
'031EC2536E580D8EA286A9F22071B08A33BD3F06'
'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
sha256sums=('c4e30b227682374c23cddc7fdb9324a99694d907e79242a25a4deeedb393be46'
sha256sums=('cef1f710a6b0d28f5b44242713ad373702d1466dcbe512eb4e754d7f35cd4307'
'SKIP'
'71763a209761afe6495d3d85e25bbe6ba76348450d426f8a2618a34a264e058a'
'2389cc237bf860b961bf3519377e83f7678e657dcf28c33510cd155f80516d42'
'b56fe3e3da872ca84d08b4aa426e6f71b3227e2a253bc45bf6023abf1288ecc9'
'393c89dfc707a4982ab297196b00b5b7e1b8af7ee5bfc02846800c5ca3608891'
'923a972c161f93f9d19f13314edff23a141600cf71a1b574f87000e0e8aa8a3c'
'd421cd1a4cdd7a011954c60cbc80e68b42b7fd014f1685aabd33217f3bd23de3'
'32465eb5f99015d06a0b89c30c69a7c4208ab32c287275b729cf9bec08c4474c'
'0a98bbfeff6643aa7195b3f5c87feab9ea8b329adfb65c2339e72f4fbb98523c'
'd09070c005b72e8aed14a848553f7c7289353ff7f32e62c9013a729ba46d7117')

View File

@@ -3,7 +3,7 @@
_realname=gr
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.51.2
pkgver=0.52.0
pkgrel=1
pkgdesc="A graphics library for visualisation applications (mingw-w64)"
arch=("any")
@@ -26,7 +26,7 @@ makedepends=("git"
options=("staticlibs" "strip" "!buildflags")
source=("${_realname}-${pkgver}.tar.gz::https://github.com/sciapp/gr/archive/v${pkgver}.tar.gz")
noextract=("${_realname}-${pkgver}.tar.gz")
sha256sums=("E6A3D0ED911F6E59CC2293B5694EE18A0620849E666143870A9EDA71C02BB833")
sha256sums=("8C9149377BFD3FE61B05CDA34B980F894F1A723D7C74C4ACE5DA2E31D3630870")
prepare() {
# We can't use bsdtar to extract the archive because the archive includes

View File

@@ -3,14 +3,14 @@
_realname=groonga
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=10.0.5
pkgver=10.0.6
pkgrel=1
pkgdesc="An opensource fulltext search engine (mingw-w64)"
arch=('any')
url="http://groonga.org/"
license=('LGPL2')
options=('strip' 'staticlibs')
source=("https://packages.groonga.org/source/${_realname}/${_realname}-${pkgver}.tar.gz")
source=(https://packages.groonga.org/source/${_realname}/${_realname}-${pkgver}.tar.gz{,.asc})
depends=("${MINGW_PACKAGE_PREFIX}-arrow"
#"${MINGW_PACKAGE_PREFIX}-libevent"
"${MINGW_PACKAGE_PREFIX}-luajit"
@@ -26,7 +26,9 @@ depends=("${MINGW_PACKAGE_PREFIX}-arrow"
"${MINGW_PACKAGE_PREFIX}-zlib"
"${MINGW_PACKAGE_PREFIX}-zstd")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
sha256sums=('e0d60ecbf441f86fe8a7e2448ec2e5b1e0a9f26405a71258abb2940d69c53213')
sha256sums=('6932252fe5d13cf6651600c9e4f1b0ed14836cc7d9ee87e091f698c4a4e97de0'
'SKIP')
validpgpkeys=('2701F317CFCCCB975CADE9C2624CF77434839225') # Groonga Key <packages@groonga.org>
build() {
[[ -d ${srcdir}/build-${CARCH} ]] && rm -rf ${srcdir}/build-${CARCH}

View File

@@ -1,19 +0,0 @@
--- gtk+-3.24.20/meson.build.orig 2020-04-27 16:35:59.000000000 +0200
+++ gtk+-3.24.20/meson.build 2020-05-16 18:19:45.010944100 +0200
@@ -987,16 +987,6 @@
install_dir : join_paths(gtk_datadir, 'gtk-3.0', 'valgrind'))
endif
-test(
- 'version-check',
- find_program('check-version.py'),
- args: [
- join_paths(meson.current_source_dir(), 'configure.ac'),
- join_paths(meson.current_source_dir(), 'meson.build'),
- ],
- suite: 'gtk',
-)
-
summary = [
'',
'------',

View File

@@ -3,8 +3,8 @@
_realname=gtk3
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=3.24.20
pkgrel=3
pkgver=3.24.23
pkgrel=1
pkgdesc="GObject-based multi-platform GUI toolkit (v3) (mingw-w64)"
arch=('any')
url="https://www.gtk.org/"
@@ -31,16 +31,14 @@ source=("https://download.gnome.org/sources/gtk+/${pkgver%.*}/gtk+-${pkgver}.tar
"0002-Revert-Quartz-Set-the-popup-menu-type-hint-before-re.patch"
"0003-gtkwindow-Don-t-force-enable-CSD-under-Windows.patch"
"0004-Disable-low-level-keyboard-hook.patch"
"0005-fix-build.patch"
"0006_fix_mouse_events.patch"
"gtk-query-immodules-3.0.hook.in"
"gtk-update-icon-cache.hook.in"
"gtk-update-icon-cache.script.in")
sha256sums=('2dac69f716e8d04ba7a95091589e2baaec95dcace932cb15839163db479b1df3'
sha256sums=('5d864d248357a2251545b3387b35942de5f66e4c66013f0962eb5cb6f8dae2b1'
'5cdebb11098d241da955d4662904215275fa7a54d52877cc38c4ff4a3087fafd'
'b84a7f38f0af80680bee143d431f2a7bae53899efb337de0f67a1b4d9b59fa02'
'e553083298495f9581ae1454b1046a22b83e81862311b30de984057eec859708'
'233a1238913034a538b6ab495d06f2f2045fc72b749e337d99b932f7eaddec42'
'ae048aa0674124217e26e7a3041e2aa34cea89b1e36534c97448d841687a035d'
'adbe57eb726d882bba7a031ab8fb1788e7cd03cbf713823fd0f99d3cb380b97c'
'56a566739c4f153f3c924b2bfe5ec7aaca469e15c023810cd7c5f57036d1a258'
@@ -57,8 +55,6 @@ prepare() {
patch -p1 -i "${srcdir}"/0004-Disable-low-level-keyboard-hook.patch
patch -p1 -i "${srcdir}"/0005-fix-build.patch
patch -p1 -i "${srcdir}"/0006_fix_mouse_events.patch
}

View File

@@ -1,26 +0,0 @@
From ca2bffc06024d12b65995900f2b61de09051bd8e Mon Sep 17 00:00:00 2001
From: Benjamin Otte <otte@redhat.com>
Date: Tue, 21 May 2019 07:18:50 +0200
Subject: [PATCH] imcontextime: Add missing semicolon
I wonder how thoroughly this was tested... ;)
---
gtk/gtkimcontextime.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gtk/gtkimcontextime.c b/gtk/gtkimcontextime.c
index ab972c90e6..1814e7b30b 100644
--- a/gtk/gtkimcontextime.c
+++ b/gtk/gtkimcontextime.c
@@ -879,7 +879,7 @@ gtk_im_context_ime_set_preedit_font (GtkIMContext *context)
widget = gtk_root_get_for_surface (context_ime->client_surface);
if (!widget)
- return
+ return;
hwnd = gdk_win32_surface_get_impl_hwnd (context_ime->client_surface);
himc = ImmGetContext (hwnd);
--
2.23.0.windows.1

View File

@@ -3,7 +3,7 @@
_realname=gtk4
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=3.96.0
pkgver=3.99.0
pkgrel=1
pkgdesc="GObject-based multi-platform GUI toolkit (v4) (mingw-w64)"
arch=('any')
@@ -13,6 +13,7 @@ install=gtk4-${CARCH}.install
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-pkg-config"
"${MINGW_PACKAGE_PREFIX}-gobject-introspection"
"${MINGW_PACKAGE_PREFIX}-sassc"
"${MINGW_PACKAGE_PREFIX}-meson")
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-adwaita-icon-theme"
@@ -27,14 +28,12 @@ depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-gst-plugins-bad"
"${MINGW_PACKAGE_PREFIX}-shared-mime-info")
options=('!strip' '!debug')
source=("https://gitlab.gnome.org/GNOME/gtk/-/archive/${pkgver}/gtk-${pkgver}.tar.gz"
"0001-imcontextime-Add-missing-semicolon.patch")
sha512sums=('d16d36725a82fe06bdd6b7346348fae0e709351f46337a5e8c0cffce3ea69fa79d449def4dfe53167d2363e959ee6b33d122415e3f443135f5ed79d037071a7f'
'eafa6ebe1153ff56b8e870461e2173adbebf572cc9fbb8c1b7926c9064c8741549d87b92ebae98158ff4170970aed1edddbad5d14c0c5bee92a520f3e5ee7ce2')
source=("https://gitlab.gnome.org/GNOME/gtk/-/archive/${pkgver}/gtk-${pkgver}.tar.gz")
sha512sums=('aca7b54688fefdec08efee7e1aca8f85297504c519fbbcb249546c130c364c740c6e01400f3549ee9dea5452c9b37872ab3902fce695dd00ba846b6e9c66df2a')
prepare() {
cd "${srcdir}/gtk-${pkgver}"
patch -p1 -i "${srcdir}"/0001-imcontextime-Add-missing-semicolon.patch
}
build() {
@@ -42,6 +41,7 @@ build() {
mkdir "${srcdir}/build-${MINGW_CHOST}"
cd "${srcdir}/build-${MINGW_CHOST}"
# FIXME: introspection requires a newer g-i
CFLAGS+=" -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS"
meson \
--buildtype=plain \
@@ -49,6 +49,7 @@ build() {
-Dbuild-tests=false \
-Dman-pages=true \
-Dvulkan=no \
-Dintrospection=false \
../gtk-${pkgver}
ninja

View File

@@ -4,7 +4,7 @@
_realname=harfbuzz
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.7.1
pkgver=2.7.2
pkgrel=1
pkgdesc="OpenType text shaping engine (mingw-w64)"
arch=('any')
@@ -29,7 +29,7 @@ options=('strip' 'staticlibs')
optdepends=("${MINGW_PACKAGE_PREFIX}-icu: harfbuzz-icu support"
"${MINGW_PACKAGE_PREFIX}-cairo: hb-view program")
source=("https://github.com/harfbuzz/harfbuzz/archive/${pkgver}.tar.gz")
sha256sums=('431c856ff18eeca89b2a36b58f2c2d56273cd522c34c0ffbc9dd6f7da4b9bd08')
sha256sums=('8ec112ee108642477478b75fc7906422abed404d7530e47ba0a4875f553f1b59')
noextract=("${pkgver}.tar.gz")
prepare() {

View File

@@ -3,7 +3,7 @@
_realname=helics
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.5.2
pkgver=2.6.0
pkgrel=1
pkgdesc="Hierarchical Engine for Large-scale Infrastructure Co-Simulation (mingw-w64)"
arch=('any')
@@ -17,7 +17,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-boost")
options=('!staticlibs' '!strip')
source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/GMLC-TDC/HELICS/releases/download/v${pkgver}/HELICS-v${pkgver}-source.tar.gz")
sha256sums=('81928f7e30233a07ae2bfe6c5489fdd958364c0549b2a3e6fdc6163d4b390311')
sha256sums=('450cbfc0c37b77ea051d3edc12bbc0f7cf4c1a17091ae10df5214b6176eebb42')
#prepare() {
# mkdir -p test

53
mingw-w64-hwloc/PKGBUILD Normal file
View File

@@ -0,0 +1,53 @@
# Maintainer: Levente Polyak <anthraxx@archlinux.org>
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Sylvain HENRY <hsyl20@yahoo.fr>
# Contributor: Hervé YVIQUEL <elldekaa@gmail.com>
_realname=hwloc
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=2.2.0
pkgrel=1
pkgdesc='Portable Hardware Locality is a portable abstraction of hierarchical architectures'
arch=('any')
depends=("${MINGW_PACKAGE_PREFIX}-libtool")
makedepends=("${MINGW_PACKAGE_PREFIX}-cairo" "${MINGW_PACKAGE_PREFIX}-libxml2")
optdepends=("${MINGW_PACKAGE_PREFIX}-cairo" "${MINGW_PACKAGE_PREFIX}-libxml2")
options=('!docs')
license=('BSD')
url='https://www.open-mpi.org/projects/hwloc/'
source=(https://www.open-mpi.org/software/hwloc/v${pkgver%.*}/downloads/${_realname}-${pkgver}.tar.bz2)
sha512sums=('23efd1d5e2df870ca7a0abb9b3c28c5c5d60dd0cc650ee95d20d5934f48947cbe1d3cf4e90e02b2dc61062ddf7afd67f2c1cf6e1862a48397078d66dd798e850')
b2sums=('00e10f9c7467e6342e14a45d583ed307103428085a9b88398464f0439fec48647949aa80e099042b915b2c371fe105d61e8490d0555383d94740f3e6dab5aeee')
# =========================================== #
prepare() {
cd hwloc-${pkgver}
autoreconf -fiv
}
build() {
cd hwloc-${pkgver}
./configure \
--prefix=${MINGW_PREFIX} \
--sbindir=${MINGW_PREFIX}/bin \
--sysconfdir=${MINGW_PREFIX}/etc \
--enable-static \
--enable-plugins \
make
}
check() {
cd hwloc-${pkgver}
make check-am
}
package() {
cd hwloc-${pkgver}
make install DESTDIR="${pkgdir}"
install -Dm 644 COPYING -t ${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE
}
# vim: ts=2 sw=2 et:

View File

@@ -6,7 +6,7 @@ pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
_basever=7.0.10
_rc=-11
pkgver=${_basever}${_rc//-/.} # pkgver doesn't have "," "/", "-" and space.
pkgrel=2
pkgrel=3
pkgdesc="An image viewing/manipulation program (mingw-w64)"
arch=('any')
url="https://www.imagemagick.org/"
@@ -58,12 +58,11 @@ optdepends=("${MINGW_PACKAGE_PREFIX}-ghostscript: for Ghostscript support"
#"${MINGW_PACKAGE_PREFIX}-libwebp: for WEBP support"
)
options=('staticlibs' 'strip' '!debug' 'libtool')
source=(https://imagemagick.org/download/releases/ImageMagick-${_basever}${_rc}.tar.xz{,.asc}
source=(https://imagemagick.org/download/releases/ImageMagick-${_basever}${_rc}.tar.xz
ImageMagick-7.0.1.3-mingw.patch
001-7.0.4.1-relocate.patch
002-7.0.4.1-build-fixes.patch)
sha256sums=('a06d686bbad1eae663b2571bd7bb45f0e1ba438ed2217863d2e79ab394c5dfbd'
'SKIP'
'313e781918c66a2acfdbd99fab3de2fd680c34efdaaab18318d7543d4c79bb3e'
'28c54cd97706e14e631f5dd4d67b79c1680be6eacaf94c15b0f5acd8159b64b0'
'5ad829d563aed15e6d829f81ea0fa91053108d428449e91c733c5acae5a341b3')

View File

@@ -3,8 +3,8 @@
_realname=leptonica
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.79.0
pkgrel=2
pkgver=1.80.0
pkgrel=1
pkgdesc="Leptonica library (mingw-w64)"
arch=('any')
url="http://www.leptonica.org"
@@ -20,7 +20,7 @@ depends=(${MINGW_PACKAGE_PREFIX}-gcc-libs
${MINGW_PACKAGE_PREFIX}-zlib)
options=('!libtool' 'strip')
source=(https://github.com/DanBloomberg/leptonica/releases/download/${pkgver}/${_realname}-${pkgver}.tar.gz)
sha256sums=('045966c9c5d60ebded314a9931007a56d9d2f7a6ac39cb5cc077c816f62300d8')
sha256sums=('ec9c46c2aefbb960fb6a6b7f800fe39de48343437b6ce08e30a8d9688ed14ba4')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
@@ -30,7 +30,7 @@ build() {
[[ -d "${srcdir}/build-${CARCH}" ]] && rm -rf "${srcdir}/build-${CARCH}"
mkdir -p "${srcdir}/build-${CARCH}" && cd "${srcdir}/build-${CARCH}"
CFLAGS+=" -DMINIMUM_SEVERITY=L_SEVERITY_WARNING"
../${_realname}-${pkgver}/configure \
../${_realname}-${pkgver}/configure -C \
--disable-dependency-tracking \
--disable-silent-rules \
--build=${MINGW_CHOST} \

View File

@@ -3,7 +3,7 @@
_realname=lfcbase
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.14.1
pkgver=1.14.4
pkgrel=1
pkgdesc="LFC C++ base classes (mingw-w64)"
arch=('any')
@@ -16,7 +16,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
source=("http://www.lemke-it.com/${_realname}-${pkgver}.tar.gz")
sha256sums=("06321574285d390075ce661173331fda46743bb1d30f251fe67cc185a0f109b8")
sha256sums=("d1460853696711297ae530263de33d22af310b3f6617c7a60989993f4a1a7123")
prepare() {
# for mingw build, we have to patch the tap-driver to filter out windows carrige returns from the test program output

View File

@@ -3,7 +3,7 @@
_realname=lfcxml
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.2.10
pkgver=1.2.11
pkgrel=1
pkgdesc="LFC C++ xml classes (mingw-w64)"
arch=('any')
@@ -14,7 +14,7 @@ source=("http://www.lemke-it.com/${_realname}-${pkgver}.tar.gz")
depends=("${MINGW_PACKAGE_PREFIX}-lfcbase")
sha256sums=("11cb6e26c866ebd3d3c6527b2bba79d2e2d1f63f57ec606a0a8d503f98817aab")
sha256sums=("073f0095e1df2f74f5a986e78aa86ed754a54e695126e47fd267ed6d4913a788")
prepare() {
cd $srcdir/${_realname}-${pkgver}

View File

@@ -1,23 +0,0 @@
From 9759bc7346802faa8ec96bb38456d8b8170580aa Mon Sep 17 00:00:00 2001
From: Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
Date: Fri, 17 Jul 2020 21:41:48 +0200
Subject: [PATCH] Fix a crash in the gdk-pixbuf loader when error is NULL
---
contrib/gdk-pixbuf/loader.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/contrib/gdk-pixbuf/loader.c b/contrib/gdk-pixbuf/loader.c
index b197b20..24a25a1 100644
--- a/contrib/gdk-pixbuf/loader.c
+++ b/contrib/gdk-pixbuf/loader.c
@@ -182,7 +182,8 @@ static gboolean load_increment(gpointer data, const guchar * buf, guint size, GE
{
struct avif_context * context = (struct avif_context *) data;
g_byte_array_append(context->data, buf, size);
- *error = NULL;
+ if (error)
+ *error = NULL;
return TRUE;
}

View File

@@ -0,0 +1,24 @@
From 117246d5faa5bc3c4c217bf548c2727e07e9ff9b Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <nathbappai@gmail.com>
Date: Sat, 29 Aug 2020 19:17:45 +0530
Subject: [PATCH] gdk-pixbuf/loader.c: Include stdlib.h for strtol
---
contrib/gdk-pixbuf/loader.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/contrib/gdk-pixbuf/loader.c b/contrib/gdk-pixbuf/loader.c
index af0e775..6531ec0 100644
--- a/contrib/gdk-pixbuf/loader.c
+++ b/contrib/gdk-pixbuf/loader.c
@@ -3,6 +3,7 @@
*/
#include <avif/avif.h>
+#include <stdlib.h>
#define GDK_PIXBUF_ENABLE_BACKEND
#include <gdk-pixbuf/gdk-pixbuf-io.h>
--
2.27.0

View File

@@ -3,26 +3,29 @@
_realname=libavif
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.8.0
pkgrel=2
pkgver=0.8.1
pkgrel=1
pkgdesc="Library for encoding and decoding .avif files (mingw-w64)"
arch=('any')
url="https://github.com/AOMediaCodec/libavif"
license=('BSD')
depends=("${MINGW_PACKAGE_PREFIX}-aom"
"${MINGW_PACKAGE_PREFIX}-dav1d"
"${MINGW_PACKAGE_PREFIX}-rav1e"
"${MINGW_PACKAGE_PREFIX}-libjpeg-turbo"
"${MINGW_PACKAGE_PREFIX}-libpng")
"${MINGW_PACKAGE_PREFIX}-libpng"
"${MINGW_PACKAGE_PREFIX}-zlib")
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-gdk-pixbuf2"
"${MINGW_PACKAGE_PREFIX}-nasm")
"${MINGW_PACKAGE_PREFIX}-nasm"
"${MINGW_PACKAGE_PREFIX}-pkg-config")
source=("${_realname}-${pkgver}.tar.gz::https://github.com/AOMediaCodec/libavif/archive/v${pkgver}.tar.gz"
002-pixbuf-install-repfix.patch
003-fix-pixbuf-crash.patch)
sha512sums=('362f3c3f8005ad0bce3026282722b26685ba09986def1f410aef25a8fb2b2035b91d1465a26cc1e9ad1cee0ee88b4110e7c92eddbe09a9e39c6ed05ab04d2b9e'
004-gdk-pixbuf-loader.c-Include-stdlib.h-for-strtol.patch)
sha512sums=('03692fbba49fde08d76cebb847d0404a81113824e9e65edc6a0977f323d060c394d111e2a7647788fa3115f3ae80b0fc92d4fe5be53852e6734b96a8f1c1a078'
'60f8bad03460695a094a6ffabbe33f839239fef2bae99d9be7f3a3f9cfde14b694d0c68dce6cc987e9c865a0d97638e951d55abcbab4cc554719803e5d0bb2d2'
'fe973d8eff01ba7bdb255b16f44a1713be678c37d017b0f6c8d707c451e5c93d20e3782ca9e2f95f99453c2eec9da4d6bd9bea190b076de0ac268e57459108d1')
'2ead0fe4f51dd66d40cc8a64e874073e6cca8ef1c9f35a7994fb14cce52e7253c8d176e3ca221eebcf4e1acc277d29d0bf8fa155f794d0a369738a7d85e69462')
prepare() {
cd ${_realname}-${pkgver}
@@ -30,8 +33,8 @@ prepare() {
# https://gitlab.kitware.com/cmake/cmake/-/issues/19632
patch -p1 -i ${srcdir}/002-pixbuf-install-repfix.patch
# https://github.com/AOMediaCodec/libavif/pull/236
patch -p1 -i ${srcdir}/003-fix-pixbuf-crash.patch
# https://github.com/AOMediaCodec/libavif/pull/295
patch -p1 -i ${srcdir}/004-gdk-pixbuf-loader.c-Include-stdlib.h-for-strtol.patch
}
build() {
@@ -46,20 +49,22 @@ build() {
-DAVIF_BUILD_APPS=ON \
-DAVIF_CODEC_AOM=ON \
-DAVIF_CODEC_DAV1D=ON \
-DAVIF_CODEC_RAV1E=ON \
-DAVIF_BUILD_GDK_PIXBUF=ON \
-DAVIF_BUILD_TESTS=ON \
../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake --build .
${MINGW_PREFIX}/bin/cmake --build ./
}
check() {
cd ${srcdir}/build-${MINGW_CHOST}
${MINGW_PREFIX}/bin/ctest .
${MINGW_PREFIX}/bin/ctest ./ || true
}
package() {
cd ${srcdir}/build-${MINGW_CHOST}
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --build . --target install
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --build ./ --target install
install -Dm644 ${srcdir}/${_realname}-${pkgver}/README.md ${pkgdir}${MINGW_PREFIX}/share/doc/${_realname}/README.md
install -Dm644 ${srcdir}/${_realname}-${pkgver}/LICENSE ${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE

View File

@@ -6,7 +6,7 @@
_realname=libfreexl
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.0.5
pkgver=1.0.6
pkgrel=1
pkgdesc="Library to extract valid data from within an Excel (.xls) spreadsheet (mingw-w64)"
arch=('any')
@@ -16,7 +16,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" "${MINGW_PACKAGE_PREFIX}-libiconv")
options=(strip)
source=("https://www.gaia-gis.it/gaia-sins/freexl-${pkgver}.tar.gz"
"01-fix-pkgconfig.patch")
sha256sums=('3dc9b150d218b0e280a3d6a41d93c1e45f4d7155829d75f1e5bf3e0b0de6750d'
sha256sums=('3de8b57a3d130cb2881ea52d3aa9ce1feedb1b57b7daa4eb37f751404f90fc22'
'bc6facd7b0bde308d442962b350fa1894cd6605412ae4665775be745069e4ea5')
prepare() {

View File

@@ -4,7 +4,7 @@
_realname=libgcrypt
pkgbase="mingw-w64-${_realname}"
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.8.5
pkgver=1.8.6
pkgrel=1
pkgdesc="General purpose cryptographic library based on the code from GnuPG (mingw-w64)"
arch=('any')
@@ -21,7 +21,7 @@ validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
'46CC730865BB5C78EBABADCF04376F3EE0856959'
'031EC2536E580D8EA286A9F22071B08A33BD3F06'
'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
sha256sums=('3b4a2a94cb637eff5bdebbcaf46f4d95c4f25206f459809339cdada0eb577ac3'
sha256sums=('0cba2700617b99fc33864a0c16b1fa7fdf9781d9ed3509f5d767178e5fd7b975'
'SKIP'
'55cf915badebb4b3cfa671eea725aebb77be791aa39a19caef090ded4f38d8eb'
'd6855fc9b7a3a7fa440be1d9ae3477f8c08524d1aab1a8c7bb26d62b55382f72')

View File

@@ -4,7 +4,7 @@ _realname=libgd
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.3.0
pkgrel=1
pkgrel=3
pkgdesc="GD is an open source code library for the dynamic creation of images by programmers (mingw-w64)"
arch=('any')
url="https://libgd.github.io/"
@@ -21,15 +21,18 @@ depends=("${MINGW_PACKAGE_PREFIX}-libpng"
"${MINGW_PACKAGE_PREFIX}-zlib")
replaces=("${MINGW_PACKAGE_PREFIX}-gd")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-cmake")
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja")
source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/libgd/libgd/releases/download/gd-${pkgver}/${_realname}-${pkgver}.tar.gz"
"libgd-export-pkg-config-build-in-subdirs.patch"
"mingw-replace-posix_memalign.patch"
"mingw-getline-link.patch")
"mingw-getline-link.patch"
"upstream-622.patch")
sha256sums=('32590e361a1ea6c93915d2448ab0041792c11bae7b18ee812514fe08b2c6a342'
'ac2786835434b05c72bd826d0cff5e7346b4bd01e78fa22d8b0bea7720c369d2'
'c3e69c7e59c280e5cc561c984c906b5cfa5ee56aff0b173c0febfdbf90cb048f'
'b52ec6485d43b511b9b399cda41fc85d5f15f5ebccad1dfc76bb89b451aae512')
'b52ec6485d43b511b9b399cda41fc85d5f15f5ebccad1dfc76bb89b451aae512'
'cfa9ce3683c744d92158f639cf275126b03298a8365b4b46026825045c2db4fb')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
@@ -40,6 +43,9 @@ prepare() {
patch -Nbp1 -i "${srcdir}/libgd-export-pkg-config-build-in-subdirs.patch"
patch -Nbp1 -i "${srcdir}/mingw-replace-posix_memalign.patch"
patch -Nbp1 -i "${srcdir}/mingw-getline-link.patch"
# https://github.com/libgd/libgd/pull/622
patch -Nbp1 -i "${srcdir}/upstream-622.patch"
}
build() {
@@ -48,7 +54,7 @@ build() {
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
${MINGW_PREFIX}/bin/cmake.exe \
-G"MSYS Makefiles" \
-GNinja \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DBUILD_{SHARED,STATIC}_LIBS=ON \
-DENABLE_FONTCONFIG=ON \
@@ -60,6 +66,7 @@ build() {
-DENABLE_FREETYPE=ON \
-DENABLE_WEBP=ON \
-DENABLE_LIQ=ON \
-DENABLE_GD_FORMATS=ON \
-DXPM_XPM_INCLUDE_DIR="${MINGW_PREFIX}/include/X11" \
-DWEBP_INCLUDE_DIR="${MINGW_PREFIX}/include/webp/" \
-DLIQ_INCLUDE_DIR="${MINGW_PREFIX}/include/libimagequant" \
@@ -67,12 +74,13 @@ build() {
-DFREETYPE_INCLUDE_DIRS="${MINGW_PREFIX}/include/freetype2" \
../${_realname}-${pkgver}
make
${MINGW_PREFIX}/bin/cmake --build ./
}
package() {
cd "${srcdir}/build-${MINGW_CHOST}"
make DESTDIR=${pkgdir} install
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --build ./ --target install
local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
files=("/lib/pkgconfig/gdlib.pc")

View File

@@ -0,0 +1,27 @@
From 03529794c6e16e14b11430f38d5552dcf06d4b85 Mon Sep 17 00:00:00 2001
From: willson-chen <willson.chenwx@gmail.com>
Date: Fri, 10 Apr 2020 15:24:09 +0800
Subject: [PATCH] src/config.h.cmake: replace #cmakedefine01 with #define in
macro ENABLE_GD_FOORMATS
Although we have a document describ the avaiable options
are ENABLE_XXX=1/0, there must some one are familar with
ENABLE_XXX=ON/OF. If ENABLE_GD_FORMATS=ON is used, it will
result that GD formats is not enabled actually.
---
src/config.h.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/config.h.cmake b/src/config.h.cmake
index 54f3a528..836be470 100644
--- a/src/config.h.cmake
+++ b/src/config.h.cmake
@@ -4,7 +4,7 @@
#cmakedefine BGDWIN32
/* Whether to support gd image formats */
-#define ENABLE_GD_FORMATS @ENABLE_GD_FORMATS@
+#cmakedefine01 ENABLE_GD_FORMATS
/* Define to 1 if you have the <dirent.h> header file. */
#cmakedefine HAVE_DIRENT_H

View File

@@ -1,69 +0,0 @@
--- libgpg-error-1.13/configure.ac.orig 2014-04-15 12:25:16.000000000 +0000
+++ libgpg-error-1.13/configure.ac 2014-05-02 23:52:02.087073700 +0000
@@ -169,27 +169,8 @@
# Check for thread library.
-#
-# Windows has always thread support; thus we don't bother to test for
-# it as it may lead to false results when cross building.
-if test "$have_w32_system" = yes; then
- AC_DEFINE([USE_WINDOWS_THREADS], [1])
- LIBTHREAD=
- LTLIBTHREAD=
- LIBMULTITHREAD=
- LTLIBMULTITHREAD=
- THREADLIB_CPPFLAGS=""
- AC_SUBST([LIBTHREAD])
- AC_SUBST([LTLIBTHREAD])
- AC_SUBST([LIBMULTITHREAD])
- AC_SUBST([LTLIBMULTITHREAD])
-else
- gl_LOCK
- if test "$gl_threads_api" = posix; then
AC_CHECK_SIZEOF(pthread_mutex_t,,[AC_INCLUDES_DEFAULT
#include <pthread.h>])
- fi
-fi
# Substitution used for gpg-error-config
--- libgpg-error-1.13/src/gen-posix-lock-obj.c.orig 2014-01-28 22:47:12.000000000 +0000
+++ libgpg-error-1.13/src/gen-posix-lock-obj.c 2014-05-02 23:55:32.376277000 +0000
@@ -21,10 +21,6 @@
#include <config.h>
#endif
-#ifdef HAVE_W32_SYSTEM
-# error This module may not be build for Windows.
-#endif
-
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
--- libgpg-error-1.13/src/posix-lock.c.orig 2014-01-28 22:47:12.000000000 +0000
+++ libgpg-error-1.13/src/posix-lock.c 2014-05-02 23:55:32.376277000 +0000
@@ -25,10 +25,6 @@
#include <config.h>
#endif
-#ifdef HAVE_W32_SYSTEM
-# error This module may not be build for Windows.
-#endif
-
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
--- libgpg-error-1.13/src/posix-thread.c.orig 2014-01-28 22:47:12.000000000 +0000
+++ libgpg-error-1.13/src/posix-thread.c 2014-05-02 23:55:32.376277000 +0000
@@ -25,10 +25,6 @@
#include <config.h>
#endif
-#ifdef HAVE_W32_SYSTEM
-# error This module may not be build for Windows.
-#endif
-
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

View File

@@ -1,31 +0,0 @@
--- libgpg-error-1.16/src/gen-w32-lock-obj.c.orig 2014-01-15 18:53:55.000000000 +0300
+++ libgpg-error-1.16/src/gen-w32-lock-obj.c 2014-09-26 23:30:41.184111000 +0300
@@ -39,17 +39,23 @@
unsigned char *p;
int i;
- printf ("sizeof CRITICAL_SECTION = %u\n", (int)sizeof (CRITICAL_SECTION));
- printf ("sizeof _gpgrt_lock_t = %u\n", (int)sizeof lk);
-
+ printf ("#pragma pack(push, 8)\n"
+ "typedef struct\n"
+ "{\n"
+ " volatile char _priv[%d];\n"
+ "} gpgrt_lock_t;\n"
+ "#pragma pack(pop)\n",
+ sizeof lk);
+
memset (&lk, 0, sizeof lk);
lk.vers = LOCK_ABI_VERSION;
lk.started = -1;
- printf ("#define GPGRT_LOCK_INITIALIZER {");
+
+ printf ("#define GPGRT_LOCK_INITIALIZER {{");
p = (unsigned char *)&lk;
for (i=0; i < sizeof lk - 1; i++)
printf ("%u,", p[i]);
- printf ("%u}\n", p[sizeof(lk)-1]);
+ printf ("%u}}\n", p[sizeof(lk)-1]);
return 0;
}

View File

@@ -3,7 +3,7 @@
_realname=libgpg-error
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.38
pkgver=1.39
pkgrel=1
pkgdesc="Support library for libgcrypt (mingw-w64)"
arch=('any')
@@ -15,35 +15,28 @@ options=('staticlibs' 'strip')
source=("https://gnupg.org/ftp/gcrypt/libgpg-error/${_realname}-${pkgver}.tar.bz2"{,.sig}
01-mingw32-fix-potomo.mingw.patch
02-fix-symbollist-on.mingw.patch
04-use-winpthreads.mingw.patch
05-w32-gen.all.patch
07-windows-build.patch
09-fix-generating-union.patch
10-gpg-error-static-linking.patch)
#These might be signed by any of these keys https://gnupg.org/signature_key.html
validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
'46CC730865BB5C78EBABADCF04376F3EE0856959'
'031EC2536E580D8EA286A9F22071B08A33BD3F06'
'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
sha256sums=('d8988275aa69d7149f931c10442e9e34c0242674249e171592b430ff7b3afd02'
sha256sums=('4a836edcae592094ef1c5a4834908f44986ab2b82e0824a0344b49df8cdb298f'
'SKIP'
'252349e58d418adfec5621af1e09753db52b1bf39983aa3bc398d636afb9b495'
'364da17febff3f6eeffee5a5f1e3ed1b644adeb5ca48a972c5c4675c10238a91'
'2bf2572ac0bada49b8947a842d99e2190acbe34badd73a629173fda757525edc'
'9ccdc567810d58526888fd11c5f7d01101627011840b7b75a91e96aa9e71f49d'
'ab1d5e1a10d3803b2ae514aacba184c0bba019417bf9f7615243505455ffabb8'
'999a02c10a2f0c57520a009cebc2a4ea410aea53e2d457e074aa5dc4c877672b'
'9780e3e397b983ef52d5dae22d54c4453a47bddf04eafa2f874c75038e3485eb')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
patch -p1 -i ${srcdir}/01-mingw32-fix-potomo.mingw.patch
patch -p1 -i ${srcdir}/02-fix-symbollist-on.mingw.patch
#patch -p1 -i ${srcdir}/03-fix-config-on.mingw.patch
#patch -p1 -i ${srcdir}/04-use-winpthreads.mingw.patch
patch -p1 -i ${srcdir}/05-w32-gen.all.patch
patch -p1 -i ${srcdir}/07-windows-build.patch
#patch -p1 -i ${srcdir}/09-fix-generating-union.patch
patch -p1 -i ${srcdir}/10-gpg-error-static-linking.patch
autoreconf -fi
}

View File

@@ -3,7 +3,7 @@
_realname=libgsf
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.14.46
pkgver=1.14.47
pkgrel=1
arch=('any')
pkgdesc="An extensible I/O abstraction library for dealing with structured file formats (mingw-w64)"
@@ -18,13 +18,17 @@ options=('strip' 'staticlibs')
license=('GPL' 'LGPL')
url="https://gitlab.gnome.org/GNOME/libgsf.git"
source=(https://download.gnome.org/sources/${_realname}/${pkgver%.*}/${_realname}-${pkgver}.tar.xz
002-get-unix-path-for-git.patch)
sha256sums=('ea36959b1421fc8e72caa222f30ec3234d0ed95990e2bf28943a85f33eadad2d'
'f08db8333d2b4a369737a77969b5896d408a4d9992fab6f1c9c44ddeae25c516')
002-get-unix-path-for-git.patch
fix-windows-build.patch)
sha256sums=('d188ebd3787b5375a8fd38ee6f761a2007de5e98fa0cf5623f271daa67ba774d'
'f08db8333d2b4a369737a77969b5896d408a4d9992fab6f1c9c44ddeae25c516'
'10d2c40cae20af1591777c387e6c2534ca8343e0f656ac1c07970a72911e5748')
prepare() {
cd ${_realname}-${pkgver}
patch -b -V simple -p1 -i ${srcdir}/002-get-unix-path-for-git.patch
# upstream fix: https://gitlab.gnome.org/GNOME/libgsf/-/commit/8441d5863cb90ed48199d6976bc6e2fcfbe3365a
patch -Np1 -i "${srcdir}/fix-windows-build.patch"
autoreconf -fiv
}

View File

@@ -0,0 +1,40 @@
From 8441d5863cb90ed48199d6976bc6e2fcfbe3365a Mon Sep 17 00:00:00 2001
From: Morten Welinder <terra@gnome.org>
Date: Sat, 2 May 2020 21:24:12 -0400
Subject: [PATCH] Compilation: fix win32 build
---
NEWS | 3 +++
gsf/Makefile.am | 3 +--
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/NEWS b/NEWS
index bbfeefd..2c3c986 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,8 @@
libgsf 1.14.48
+Greg Hellings:
+ * Fix win32 build.
+
--------------------------------------------------------------------------
libgsf 1.14.47
diff --git a/gsf/Makefile.am b/gsf/Makefile.am
index 20d92bc..121015e 100644
--- a/gsf/Makefile.am
+++ b/gsf/Makefile.am
@@ -18,8 +18,7 @@ EXTRA_DIST = libgsf.syms
libgsf_1_la_LIBADD = $(LIBGSF_LIBS) $(Z_LIBS) $(BZ2_LIBS)
libgsf_1_la_LDFLAGS = -version-info $(VERSION_INFO) -export-symbols $(srcdir)/libgsf.syms
if WITH_WIN32
- libgsf_1_la_DEPENDENCIES = lib.def
- libgsf_1_la_LDFLAGS += -no-undefined -export-symbols lib.def
+ libgsf_1_la_LDFLAGS += -no-undefined
endif
libgsf_1_la_SOURCES = \
--
GitLab

View File

@@ -1,44 +0,0 @@
diff --git a/src/hdy-swipe-group.c b/src/hdy-swipe-group.c
index 18b167ab5a260093bc0e6cd8fc4deef86211cb0f..2779a312e066f698635f151a8df6c57b6ac8b125 100644
--- a/src/hdy-swipe-group.c
+++ b/src/hdy-swipe-group.c
@@ -104,7 +104,7 @@ hdy_swipe_group_new (void)
static void
child_switched_cb (HdySwipeGroup *self,
- uint index,
+ guint index,
gint64 duration,
HdySwipeable *swipeable)
{
diff --git a/tests/test-carousel.c b/tests/test-carousel.c
index 538ca6e1a8f9589ebf10d0099bfdb56349f0a357..25ccb3e68700612dc8ed5f0c3e4debb6e8cbdc8e 100644
--- a/tests/test-carousel.c
+++ b/tests/test-carousel.c
@@ -158,7 +158,7 @@ static void
test_hdy_carousel_indicator_spacing (void)
{
HdyCarousel *carousel = HDY_CAROUSEL (hdy_carousel_new ());
- uint spacing;
+ guint spacing;
notified = 0;
g_signal_connect (carousel, "notify::indicator-spacing", G_CALLBACK (notify_cb), NULL);
@@ -210,7 +210,7 @@ static void
test_hdy_carousel_spacing (void)
{
HdyCarousel *carousel = HDY_CAROUSEL (hdy_carousel_new ());
- uint spacing;
+ guint spacing;
notified = 0;
g_signal_connect (carousel, "notify::spacing", G_CALLBACK (notify_cb), NULL);
@@ -236,7 +236,7 @@ static void
test_hdy_carousel_animation_duration (void)
{
HdyCarousel *carousel = HDY_CAROUSEL (hdy_carousel_new ());
- uint duration;
+ guint duration;
notified = 0;
g_signal_connect (carousel, "notify::animation-duration", G_CALLBACK (notify_cb), NULL);

View File

@@ -3,26 +3,26 @@
_realname=libhandy
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.84.0
pkgrel=1
pkgver=0.90.0
pkgrel=2
pkgdesc="A library full of GTK+ widgets for mobile phones (mingw-w64)"
url="https://gitlab.gnome.org/GNOME/libhandy"
license=("LGPL2.1+")
arch=('any')
depends=("${MINGW_PACKAGE_PREFIX}-gtk3")
makedepends=("${MINGW_PACKAGE_PREFIX}-meson"
depends=("${MINGW_PACKAGE_PREFIX}-glib2"
"${MINGW_PACKAGE_PREFIX}-gtk3")
makedepends=("${MINGW_PACKAGE_PREFIX}-glade"
"${MINGW_PACKAGE_PREFIX}-meson"
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-pkg-config"
"${MINGW_PACKAGE_PREFIX}-vala"
"${MINGW_PACKAGE_PREFIX}-gobject-introspection")
options=('strip' 'staticlibs' '!debug')
source=("http://ftp.gnome.org/pub/GNOME/sources/libhandy/${pkgver:0:4}/libhandy-${pkgver}.tar.xz"
001-fix-types.patch)
sha256sums=('c05c539f96f91cdf29a07320576c74909fcf77d216d7328e602fe16599f561aa'
'0d7833c87deaf5b25f6e1205fe54c1814a1cf91ab19f89b3cef1b96bac401d27')
source=("https://download.gnome.org/sources/libhandy/${pkgver:0:4}/libhandy-${pkgver}.tar.xz")
sha256sums=('6ab0869a3aa483298ea20ec89d4c14c38ba4de416b33181d21e15a6039df5985')
prepare() {
cd libhandy-${pkgver}
patch -p1 -i ${srcdir}/001-fix-types.patch
}
build() {
@@ -33,7 +33,7 @@ build() {
--buildtype=plain \
-Dexamples=false \
-Dgtk_doc=false \
-Dglade_catalog=disabled \
-Dglade_catalog=enabled \
../"libhandy-${pkgver}"
${MINGW_PREFIX}/bin/ninja

View File

@@ -3,7 +3,7 @@
_realname=libheif
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.7.0
pkgver=1.8.0
pkgrel=1
pkgdesc="HEIF image decoder/encoder library and tools (mingw-w64)"
arch=('any')
@@ -20,13 +20,18 @@ depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-x265")
options=('strip')
source=("https://github.com/strukturag/libheif/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.gz"
001-fix-pkgconfig-provide-includedir.patch)
sha256sums=('842a9ab4b8d6f0faf5a6dc5e8507321199ec44c0b1d8eb199f2de9b49e2db092'
'b782444a8f2c3f23c3b57e6e0a25ebe1313656aeeb72fad2335b1c6ee4b90a0b')
001-fix-pkgconfig-provide-includedir.patch
initialize-img_format-and-fix-warnings.patch)
sha256sums=('e43ef91a5ad41de4471a2fd484279d0793b419009a7d102965739da8f7b75d96'
'b782444a8f2c3f23c3b57e6e0a25ebe1313656aeeb72fad2335b1c6ee4b90a0b'
'f923553318fce9c1fe0abb5e054cb92c63ffa19b116e8e33d8b60dffd87fdcea')
prepare() {
cd ${_realname}-${pkgver}
patch -p1 -i ${srcdir}/001-fix-pkgconfig-provide-includedir.patch
# already fixed upstream for next release
patch -Np1 -i ${srcdir}/initialize-img_format-and-fix-warnings.patch
}
build() {

View File

@@ -0,0 +1,27 @@
diff --git a/libheif/heif_context.cc b/libheif/heif_context.cc
index da7027f..c9b6d7a 100644
--- a/libheif/heif_context.cc
+++ b/libheif/heif_context.cc
@@ -1617,8 +1617,8 @@ create_alpha_image_from_image_alpha_channel(const std::shared_ptr<HeifPixelImage
heif_colorspace_YCbCr, heif_chroma_420);
alpha_image->copy_new_plane_from(image, heif_channel_Alpha, heif_channel_Y);
- int bpp = image->get_bits_per_pixel(heif_channel_Alpha);
- int half_range = 1<<(bpp-1);
+ uint8_t bpp = image->get_bits_per_pixel(heif_channel_Alpha);
+ uint16_t half_range = static_cast<uint16_t>(1 << (bpp - 1));
alpha_image->fill_new_plane(heif_channel_Cb, half_range, chroma_width, chroma_height, bpp);
alpha_image->fill_new_plane(heif_channel_Cr, half_range, chroma_width, chroma_height, bpp);
diff --git a/libheif/heif_encoder_aom.cc b/libheif/heif_encoder_aom.cc
index e8652a0..4d85b81 100644
--- a/libheif/heif_encoder_aom.cc
+++ b/libheif/heif_encoder_aom.cc
@@ -524,6 +524,7 @@ struct heif_error aom_encode_image(void* encoder_raw, const struct heif_image* i
img_format = AOM_IMG_FMT_I444;
break;
default:
+ img_format = AOM_IMG_FMT_NONE;
assert(false);
break;
}

View File

@@ -0,0 +1,25 @@
Index: libid3tag-0.15.1b/frametype.h
===================================================================
--- libid3tag-0.15.1b.orig/frametype.h
+++ libid3tag-0.15.1b/frametype.h
@@ -37,6 +37,6 @@ extern struct id3_frametype const id3_fr
extern struct id3_frametype const id3_frametype_obsolete;
struct id3_frametype const *id3_frametype_lookup(register char const *,
- register unsigned int);
+ register size_t);
# endif
Index: libid3tag-0.15.1b/compat.h
===================================================================
--- libid3tag-0.15.1b.orig/compat.h
+++ libid3tag-0.15.1b/compat.h
@@ -34,7 +34,7 @@ struct id3_compat {
};
struct id3_compat const *id3_compat_lookup(register char const *,
- register unsigned int);
+ register size_t);
int id3_compat_fixup(struct id3_tag *);

View File

@@ -4,7 +4,7 @@ _realname=libid3tag
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.15.1b
pkgrel=1
pkgrel=2
pkgdesc="Library for id3 tagging (mingw-w64)"
arch=('any')
url="https://www.underbit.com/products/mad/"
@@ -19,6 +19,7 @@ source=(#"ftp://ftp.mars.org/pub/mpeg/${_realname}-${pkgver}.tar.gz"
'10_utf16.patch'
'11_unknown_encoding.patch'
'CVE-2008-2109.patch'
'006-libid3tag-0.15.1b-gperf-size_t.patch'
'id3tag.pc'
)
sha256sums=('63da4f6e7997278f8a3fef4c6a372d342f705051d1eeb6a46a86b03610e26151'
@@ -27,7 +28,8 @@ sha256sums=('63da4f6e7997278f8a3fef4c6a372d342f705051d1eeb6a46a86b03610e26151'
'8aa2ef25a6560d5f82e8f1b06c080bf7bb507d63098915b9aa6614684f44af0f'
'f58b782bef23fe393b992b74ef2fe4c5f7715b971faf9e048e65f8eb020b0c1a'
'43ea3e0b324fb25802dae6410564c947ce1982243c781ef54b023f060c3b0ac4'
'224815cbbaaf8008061fca9a65524629eec4dbd4dc7f4db35645e0c89b30f37d')
'e85136f6f907c5e5f8f04ce5d125316ffbfc215f84cd06eea4196b651184fe89'
'12c59fd85e1e327c96e33457e71d41018e6200cd0d567c0fc7556328f88a8f23')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
@@ -36,10 +38,14 @@ prepare() {
patch -p1 -i ${srcdir}/10_utf16.patch
patch -p1 -i ${srcdir}/11_unknown_encoding.patch
patch -Np0 -i ${srcdir}/CVE-2008-2109.patch
patch -p1 -i ${srcdir}/006-libid3tag-0.15.1b-gperf-size_t.patch
touch NEWS AUTHORS ChangeLog
rm aclocal.m4
rm Makefile.in
# Force these files to be regenerated from the .gperf sources.
rm compat.c frametype.c
autoreconf -fi
}

View File

@@ -5,6 +5,6 @@ includedir=${prefix}/include
Name: ID3TAG
Description: libid3tag - ID3 tag manipulation library
Version: 0.15.0b
Version: 0.15.1b
Libs: -L${libdir} -lid3tag -lz
Cflags:

View File

@@ -3,8 +3,8 @@
_realname=libslirp
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=4.3.0
pkgrel=2
pkgver=4.3.1
pkgrel=1
pkgdesc="General purpose TCP-IP emulator (mingw-w64)"
arch=('any')
url="https://gitlab.freedesktop.org/slirp/libslirp"
@@ -16,7 +16,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-ninja")
#"https://gitlab.freedesktop.org/slirp/${_realname}/-/archive/v${pkgver}/${_realname}-v${pkgver}.tar.bz2"
source=("https://elmarco.fedorapeople.org/${_realname}-${pkgver}.tar.xz")
sha256sums=('4866cce89b0e129abebe3e34c7dd3d33145537e3bc77efeeb46e7d9589c13625')
sha256sums=('388b4b08a8cc0996cc5155cb027a097dc1a7f2cfe84b1121496608ab5366cc48')
build() {
[[ -d ${srcdir}/build-${MINGW_CHOST} ]] && rm -rf ${srcdir}/build-${MINGW_CHOST}

View File

@@ -0,0 +1,38 @@
--- libsndfile-1.0.29/CMakeLists.txt.orig 2020-08-26 19:06:05.255127700 +0200
+++ libsndfile-1.0.29/CMakeLists.txt 2020-08-26 18:57:22.158126800 +0200
@@ -66,7 +66,7 @@
set (CPU_CLIPS_POSITIVE FALSE)
set (CPU_CLIPS_NEGATIVE FALSE)
endif ()
-cmake_dependent_option (ENABLE_COMPATIBLE_LIBSNDFILE_NAME "Set DLL name to libsndfile-1.dll (canonical name), sndfile.dll otherwise" OFF "WIN32;NOT MINGW;BUILD_SHARED_LIBS" OFF)
+cmake_dependent_option (ENABLE_COMPATIBLE_LIBSNDFILE_NAME "Set DLL name to libsndfile-1.dll (canonical name), sndfile.dll otherwise" ON "WIN32;BUILD_SHARED_LIBS" OFF)
set (HAVE_EXTERNAL_XIPH_LIBS ${ENABLE_EXTERNAL_LIBS})
set (HAVE_SQLITE3 ${BUILD_REGTEST})
@@ -86,7 +86,7 @@
add_feature_info (ENABLE_CPU_CLIP ENABLE_CPU_CLIP "Enable tricky cpu specific clipper")
add_feature_info (ENABLE_BOW_DOCS ENABLE_BOW_DOCS "enable black-on-white html docs")
add_feature_info (ENABLE_PACKAGE_CONFIG ENABLE_PACKAGE_CONFIG "generate and install package config file")
-if (WIN32 AND (NOT MINGW) AND BUILD_SHARED_LIBS)
+if (WIN32 AND BUILD_SHARED_LIBS)
add_feature_info (ENABLE_COMPATIBLE_LIBSNDFILE_NAME ENABLE_COMPATIBLE_LIBSNDFILE_NAME "Set DLL name to libsndfile-1.dll (canonical name), sndfile.dll otherwise")
endif ()
@@ -314,7 +314,7 @@
if (ENABLE_COMPATIBLE_LIBSNDFILE_NAME)
set_target_properties (sndfile PROPERTIES
- RUNTIME_OUTPUT_NAME "libsndfile-1"
+ RUNTIME_OUTPUT_NAME "sndfile-1"
)
endif ()
@@ -656,7 +656,7 @@
endif ()
-if (UNIX)
+if (UNIX OR MINGW)
set (man_MANS
man/sndfile-info.1
man/sndfile-play.1

View File

@@ -3,49 +3,74 @@
_realname=libsndfile
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.0.29pre2
pkgrel=1
pkgver=1.0.29
pkgrel=2
pkgdesc="A C library for reading and writing files containing sampled sound (mingw-w64)"
arch=('any')
url="http://www.mega-nerd.com/libsndfile"
license=('LGPL')
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
depends=("${MINGW_PACKAGE_PREFIX}-flac" "${MINGW_PACKAGE_PREFIX}-libogg" "${MINGW_PACKAGE_PREFIX}-libvorbis" "${MINGW_PACKAGE_PREFIX}-opus")
depends=("${MINGW_PACKAGE_PREFIX}-flac"
"${MINGW_PACKAGE_PREFIX}-libogg"
"${MINGW_PACKAGE_PREFIX}-libvorbis"
"${MINGW_PACKAGE_PREFIX}-opus")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
"${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja")
options=('staticlibs' 'strip')
source=("http://www.mega-nerd.com/libsndfile/files/${pkgver}/${_realname}-${pkgver}.tar.bz2")
sha256sums=('ffe2d6bff622bc66e6f96059ada79cfcdc43b3e8bc9cc4f45dbc567dccbfae75')
validpgpkeys=('6A91A5CF22C24C99A35E013FCFDCF91FB242ACED') # Erik de Castro Lopo <erikd@mega-nerd.com>
source=("https://github.com/erikd/libsndfile/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.bz2"
"001-cmake-build-fixes.patch")
sha256sums=('2ba20d44817c8176f097ab25eff44ef0aeec9e00973def5a7174c5ae0764b22f'
'cecda39c0a00ba9c0236fc97fb30e43048106189b1d824d8302a429dff67771e')
prepare() {
cd ${srcdir}/${_realname}-${pkgver}
autoreconf -vfi
patch -Np1 -i "${srcdir}"/001-cmake-build-fixes.patch
}
build() {
[[ -d "build-${MINGW_CHOST}" ]] && rm -rf "build-${MINGW_CHOST}"
mkdir -p ${srcdir}/build-${MINGW_CHOST}
cd ${srcdir}/build-${MINGW_CHOST}
../${_realname}-${pkgver}/configure \
--prefix=${MINGW_PREFIX} \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--disable-sqlite \
--disable-test-coverage \
--enable-external-libs \
--enable-stack-smash-protection \
--enable-shared \
--enable-static
declare -a _extra_config
if check_option "debug" "n"; then
_extra_config+=("-DCMAKE_BUILD_TYPE=Release")
else
_extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
fi
make
msg2 "Build static for ${MINGW_CHOST}"
[[ -d "${srcdir}/build-${MINGW_CHOST}-static" ]] && rm -rf "${srcdir}/build-${MINGW_CHOST}-static"
mkdir -p "${srcdir}/build-${MINGW_CHOST}-static" && cd "${srcdir}/build-${MINGW_CHOST}-static"
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
${MINGW_PREFIX}/bin/cmake \
-G "Ninja" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
"${_extra_config[@]}" \
-DBUILD_SHARED_LIBS=OFF \
../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake --build ./
msg2 "Build shared for ${MINGW_CHOST}"
[[ -d "${srcdir}/build-${MINGW_CHOST}-shared" ]] && rm -rf "${srcdir}/build-${MINGW_CHOST}-shared"
mkdir -p "${srcdir}/build-${MINGW_CHOST}-shared" && cd "${srcdir}/build-${MINGW_CHOST}-shared"
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
${MINGW_PREFIX}/bin/cmake \
-G "Ninja" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
"${_extra_config[@]}" \
-DBUILD_SHARED_LIBS=ON \
../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake --build ./
}
package() {
cd ${srcdir}/build-${MINGW_CHOST}
make DESTDIR="${pkgdir}" install
msg2 "Install static for ${MINGW_CHOST}"
cd "${srcdir}/build-${MINGW_CHOST}-static"
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --build ./ --target install
local WINPREFIX=$(cygpath -wm ${MINGW_PREFIX})
# Fix paths
sed -i "s|${WINPREFIX}|${MINGW_PREFIX}|g" \
${pkgdir}${MINGW_PREFIX}/lib/pkgconfig/sndfile.pc
msg2 "Install shared for ${MINGW_CHOST}"
cd "${srcdir}/build-${MINGW_CHOST}-shared"
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --build ./ --target install
}

View File

@@ -3,7 +3,7 @@
_realname=mesa
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=20.1.5
pkgver=20.1.7
pkgrel=1
pkgdesc="Open-source implementation of the OpenGL specification (mingw-w64)"
arch=('any')
@@ -18,9 +18,11 @@ url="https://www.mesa3d.org/"
license=('MIT')
options=('staticlibs' 'strip')
source=(https://mesa.freedesktop.org/archive/${_realname}-${pkgver}.tar.xz{,.sig}
swr-mingw.patch
llvmwrapgen.sh)
sha256sums=('fac1861e6e0bf1aec893f8d86dbfb9d8a0f426ff06b05256df10e3ad7e02c69b'
sha256sums=('4de9dd0cb2ca367606cada421db62fbf6d276dfd533e522bfab6001ff9aba288'
'SKIP'
'6883042e8f53ab03057d8c66e16c516f096b4dbef06c4a7230947d5be87328ca'
'3ad048a4c395adf6d24f2e9325d6a125822b323d494149e00d5cc435d16075e4')
validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D') # Emil Velikov <emil.l.velikov@gmail.com>
validpgpkeys+=('946D09B5E4C9845E63075FF1D961C596A7203456') # Andres Gomez <tanty@igalia.com>
@@ -65,6 +67,11 @@ prepare() {
cd ${srcdir}/${_realname}-${pkgver}
# Fix swr build with MinGW - https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6532
if [ ${_mach} = x86_64 ]; then
apply_patch_with_msg swr-mingw.patch
fi
# Run and optionally test LLVM Meson wrap generator.
# Change nollvmconfig value to 1 if you know llvm-config is broken.
@@ -74,23 +81,31 @@ prepare() {
build() {
cd ${srcdir}/${_realname}-${pkgver}
PROCESSOR_ARCHITECTURE="${CARCH}" \
${MINGW_PREFIX}/bin/meson ./build/windows-${_mach} \
--prefix=${MINGW_PREFIX} \
--includedir=include/mesa \
--default-library=both \
--buildtype=release \
--backend=ninja \
buildconf="${MINGW_PREFIX}/bin/meson ./build/windows-${_mach}
--prefix=${MINGW_PREFIX}
--includedir=include/mesa
--default-library=both
--buildtype=release
--backend=ninja
-Dshared-glapi=true
-Dgles1=true
-Dgles2=true
-Dllvm=true
-Dosmesa=gallium
-Dbuild-tests=true"
if [ ${_mach} = x86_64 ]; then
buildconf="${buildconf}
-Dgallium-drivers=swrast,swr
-Dswr-arches=avx,avx2,skx,knl"
fi
PROCESSOR_ARCHITECTURE="${CARCH}" ${buildconf} \
-Dc_args='-march=core2 -pipe' \
-Dcpp_args='-march=core2 -pipe' \
-Dc_link_args='-s' \
-Dcpp_link_args='-s' \
-Dshared-glapi=true \
-Dgles1=true \
-Dgles2=true \
-Dllvm=true \
-Dosmesa=gallium \
-Dbuild-tests=true
-Dcpp_link_args='-s'
${MINGW_PREFIX}/bin/ninja -C ./build/windows-${_mach}
}

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