Compare commits
40 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
66831ea950 | ||
|
|
fdcc6fd9c6 | ||
|
|
220a8dc22f | ||
|
|
04c3b51657 | ||
|
|
a19c9b95f6 | ||
|
|
bc82ce5793 |
||
|
|
0481f87ac1 | ||
|
|
9f0c2b852a | ||
|
|
4776ff0023 | ||
|
|
b27ab1cc12 | ||
|
|
e61f901d11 | ||
|
|
c5baad7c9b | ||
|
|
2453ef048d | ||
|
|
df0ee64736 | ||
|
|
88d6e607ff | ||
|
|
1bf07da010 | ||
|
|
8f58baf75c | ||
|
|
b8c708695e | ||
|
|
a34e458d5e | ||
|
|
d897e0bb98 | ||
|
|
feac8b0097 | ||
|
|
846156c1bd | ||
|
|
404594a9fc | ||
|
|
de21385695 | ||
|
|
2bf8319605 | ||
|
|
28d3d2b73d | ||
|
|
82f4189ad6 | ||
|
|
1688ef84e1 | ||
|
|
6dffdd3418 | ||
|
|
508578c74b | ||
|
|
7be5939330 | ||
|
|
574812854b | ||
|
|
9f6edc6a7a | ||
|
|
39edc444a3 | ||
|
|
6e51f453f3 | ||
|
|
38c14c17cd | ||
|
|
a723557d96 | ||
|
|
b9ffd1b6a5 | ||
|
|
a4f0ba0de5 | ||
|
|
ac9fcd8ab6 |
23 changed files with 633 additions and 1758 deletions
16
README.md
Normal file
16
README.md
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
Building the MinGW environment
|
||||
==============================
|
||||
|
||||
Build order:
|
||||
|
||||
- mingw-filesystem
|
||||
- mingw-binutils
|
||||
- mingw-headers (bundle_dummy_pthread_headers=1)
|
||||
- mingw-w64-tools
|
||||
- mingw-gcc (bootstrap=1)
|
||||
- mingw-crt (bootstrap=1)
|
||||
- mingw-crt (bootstrap=0)
|
||||
- mingw-winpthreads
|
||||
- mingw-headers (bundle_dummy_pthread_headers=0)
|
||||
- mingw-gcc (bootstrap=0)
|
||||
- mingw-gdb
|
||||
104
macros.mingw
104
macros.mingw
|
|
@ -1,8 +1,9 @@
|
|||
# RPM macros for the Fedora MinGW Cross Compiler collection
|
||||
|
||||
%mingw_build_targets mingw32 mingw64
|
||||
%mingw_build_targets mingw32 mingw64 ucrt64
|
||||
%mingw_build_win32 1
|
||||
%mingw_build_win64 1
|
||||
%mingw_build_ucrt64 0
|
||||
|
||||
%mingw_strip mingw-strip
|
||||
%mingw_objdump mingw-objdump
|
||||
|
|
@ -16,12 +17,16 @@
|
|||
%mingw_debug_install_post %{mingw_finddebuginfo} %{_builddir}/%{?buildsubdir} %{mingw_build_targets}
|
||||
|
||||
%mingw_debug_package \
|
||||
%global __debug_package 1 \
|
||||
%if 0%{?mingw_build_win32} == 1 \
|
||||
%{?mingw32_debug_package} \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_win64} == 1 \
|
||||
%{?mingw64_debug_package} \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
%{?ucrt64_debug_package} \
|
||||
%endif \
|
||||
%{nil}
|
||||
|
||||
%mingw_package_header \
|
||||
|
|
@ -48,6 +53,12 @@ pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
|||
%{?mingw64_configure} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
mkdir -p build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?ucrt64_configure} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_configure
|
||||
|
||||
|
|
@ -55,11 +66,17 @@ run_mingw_configure
|
|||
run_mingw_make() \
|
||||
{ \
|
||||
%if 0%{?mingw_build_win32} == 1 \
|
||||
%{mingw32_env} \
|
||||
%{__make} -C build_win32$MINGW_BUILDDIR_SUFFIX "$@" $MINGW32_MAKE_ARGS \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_win64} == 1 \
|
||||
%{mingw64_env} \
|
||||
%{__make} -C build_win64$MINGW_BUILDDIR_SUFFIX "$@" $MINGW64_MAKE_ARGS \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
%{ucrt64_env} \
|
||||
%{__make} -C build_ucrt64$MINGW_BUILDDIR_SUFFIX "$@" $UCRT64_MAKE_ARGS \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_make
|
||||
|
||||
|
|
@ -78,44 +95,15 @@ pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
|||
%{?mingw64_cmake "$@"} \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
mkdir -p build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?ucrt64_cmake "$@"} \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_cmake
|
||||
|
||||
%mingw_cmake_kde4 \
|
||||
run_mingw_cmake_kde4() \
|
||||
{ \
|
||||
%if 0%{?mingw_build_win32} == 1 \
|
||||
mkdir -p build_win32$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_win32$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?mingw32_cmake_kde4 "$@"} \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_win64} == 1 \
|
||||
mkdir -p build_win64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?mingw64_cmake_kde4 "$@"} \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_cmake_kde4
|
||||
|
||||
%mingw_qmake_qt4 \
|
||||
run_mingw_qmake_qt4() \
|
||||
{ \
|
||||
%if 0%{?mingw_build_win32} == 1 \
|
||||
mkdir -p build_win32$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_win32$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?mingw32_qmake_qt4} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_win64} == 1 \
|
||||
mkdir -p build_win64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?mingw64_qmake_qt4} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_qmake_qt4
|
||||
|
||||
%mingw_qmake_qt5 \
|
||||
run_mingw_qmake_qt5() \
|
||||
|
|
@ -132,9 +120,41 @@ pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
|||
%{?mingw64_qmake_qt5} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
mkdir -p build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?ucrt64_qmake_qt5} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_qmake_qt5
|
||||
|
||||
|
||||
%mingw_qmake_qt6 \
|
||||
run_mingw_qmake_qt6() \
|
||||
{ \
|
||||
%if 0%{?mingw_build_win32} == 1 \
|
||||
mkdir -p build_win32$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_win32$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?mingw32_qmake_qt6} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_win64} == 1 \
|
||||
mkdir -p build_win64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?mingw64_qmake_qt6} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
mkdir -p build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?ucrt64_qmake_qt6} "$@" \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_qmake_qt6
|
||||
|
||||
|
||||
%mingw_meson \
|
||||
run_mingw_meson() \
|
||||
{ \
|
||||
|
|
@ -150,6 +170,12 @@ pushd build_win64$MINGW_BUILDDIR_SUFFIX \
|
|||
%{?mingw64_meson "$@"} \
|
||||
popd \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
mkdir -p build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
pushd build_ucrt64$MINGW_BUILDDIR_SUFFIX \
|
||||
%{?ucrt64_meson "$@"} \
|
||||
popd \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_meson
|
||||
|
||||
|
|
@ -162,6 +188,9 @@ ninja -C build_win32$MINGW_BUILDDIR_SUFFIX "$@" $MINGW32_NINJA_ARGS \
|
|||
%if 0%{?mingw_build_win64} == 1 \
|
||||
ninja -C build_win64$MINGW_BUILDDIR_SUFFIX "$@" $MINGW64_NINJA_ARGS \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
ninja -C build_ucrt64$MINGW_BUILDDIR_SUFFIX "$@" $UCRT64_NINJA_ARGS \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_ninja
|
||||
|
||||
|
|
@ -174,6 +203,9 @@ DESTDIR=%{buildroot} ninja -C build_win32$MINGW_BUILDDIR_SUFFIX install \
|
|||
%if 0%{?mingw_build_win64} == 1 \
|
||||
DESTDIR=%{buildroot} ninja -C build_win64$MINGW_BUILDDIR_SUFFIX install \
|
||||
%endif \
|
||||
%if 0%{?mingw_build_ucrt64} == 1 \
|
||||
DESTDIR=%{buildroot} ninja -C build_ucrt64$MINGW_BUILDDIR_SUFFIX install \
|
||||
%endif \
|
||||
} \
|
||||
run_mingw_ninja_install
|
||||
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
%mingw32_cppflags %{nil}
|
||||
%mingw32_fflags -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4
|
||||
%mingw32_ldflags -fstack-protector -lssp
|
||||
%mingw32_rustflags -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cforce-frame-pointers=yes --cap-lints=warn
|
||||
|
||||
%mingw32_cc %{mingw32_target}-gcc
|
||||
%mingw32_cxx %{mingw32_target}-g++
|
||||
|
|
@ -50,7 +51,7 @@
|
|||
%mingw32_windmc %{mingw32_target}-windmc
|
||||
%mingw32_windres %{mingw32_target}-windres
|
||||
|
||||
%mingw32_env unset $(/usr/bin/env | egrep '^(\w+)=(.*)$' | egrep -vw 'PWD|USER|LANG' | /usr/bin/cut -d= -f1); \
|
||||
%mingw32_env unset $(/usr/bin/env | grep -E '^(\w+)=(.*)$' | grep -Evw 'PWD|USER|LANG' | /usr/bin/cut -d= -f1); \
|
||||
if test -z "$PATH_ORIG" ; then \
|
||||
PATH_ORIG="$PATH"; export PATH_ORIG; \
|
||||
fi; \
|
||||
|
|
@ -77,6 +78,7 @@
|
|||
FFLAGS="${MINGW32_FFLAGS-%mingw32_fflags}"; export FFLAGS; \
|
||||
FCFLAGS="${MINGW32_FCFLAGS-%mingw32_fflags}"; export FCFLAGS; \
|
||||
LDFLAGS="${MINGW32_LDFLAGS:-%mingw32_ldflags}"; export LDFLAGS; \
|
||||
RUSTFLAGS="${MINGW32_RUSTFLAGS:-%mingw32_rustflags}"; export RUSTFLAGS; \
|
||||
for i in `ls %{mingw32_bindir}/*|grep -- "-config\$"` ; do \
|
||||
x=`basename $i|tr "a-z+-." "A-ZX_"`; \
|
||||
declare -x $x="$i" ; export $x; \
|
||||
|
|
@ -138,7 +140,6 @@
|
|||
-DSYSCONF_INSTALL_DIR:PATH=%{mingw32_sysconfdir} \\\
|
||||
-DSHARE_INSTALL_PREFIX:PATH=%{mingw32_datadir} \\\
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=%{mingw32_prefix} \\\
|
||||
-DCMAKE_INSTALL_LIBDIR:PATH=%{mingw32_libdir} \\\
|
||||
${MINGW_CMAKE_ARGS} \\\
|
||||
${MINGW32_CMAKE_ARGS} \\\
|
||||
"$@" $__mingw32_topdir
|
||||
|
|
@ -147,13 +148,10 @@
|
|||
MINGW32_CMAKE_ARGS="-DINCLUDE_INSTALL_DIR:PATH=%{mingw32_includedir} ${MINGW32_CMAKE_ARGS}" \
|
||||
%mingw32_cmake_generic
|
||||
|
||||
%mingw32_cmake_kde4 \
|
||||
MINGW32_CMAKE_ARGS="-DINCLUDE_INSTALL_DIR:PATH=%{mingw32_includedir}/kde4 ${MINGW32_CMAKE_ARGS}" \
|
||||
%mingw32_cmake_generic
|
||||
|
||||
%mingw32_qmake_qt4 /usr/bin/mingw32-qmake-qt4
|
||||
%mingw32_qmake_qt5 /usr/bin/mingw32-qmake-qt5
|
||||
|
||||
%mingw32_qmake_qt6 /usr/bin/%{mingw32_target}-qmake-qt6
|
||||
|
||||
%mingw32_meson %{mingw32_env} ; \
|
||||
unset CC CFLAGS CPPFLAGS CXX CXXFLAGS LD LDFLAGS; \\\
|
||||
CFLAGS="${MINGW32_CFLAGS-%mingw32_cflags}"; export CFLAGS; \\\
|
||||
|
|
@ -164,7 +162,7 @@
|
|||
if test -f meson.build; then __mingw32_topdir=.; \\\
|
||||
elif test -f ../meson.build; then __mingw32_topdir=..; \\\
|
||||
else __mingw32_topdir=""; fi; \\\
|
||||
%__meson \\\
|
||||
%__meson setup \\\
|
||||
--cross-file /usr/share/mingw/toolchain-mingw32.meson \\\
|
||||
--default-library shared \\\
|
||||
--prefix %{mingw32_prefix} \\\
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
%mingw64_cppflags %{nil}
|
||||
%mingw64_fflags -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4
|
||||
%mingw64_ldflags -fstack-protector -lssp
|
||||
%mingw64_rustflags -Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cforce-frame-pointers=yes --cap-lints=warn
|
||||
|
||||
%mingw64_cc %{mingw64_target}-gcc
|
||||
%mingw64_cxx %{mingw64_target}-g++
|
||||
|
|
@ -50,7 +51,7 @@
|
|||
%mingw64_windmc %{mingw64_target}-windmc
|
||||
%mingw64_windres %{mingw64_target}-windres
|
||||
|
||||
%mingw64_env unset $(/usr/bin/env | egrep '^(\w+)=(.*)$' | egrep -vw 'PWD|USER|LANG' | /usr/bin/cut -d= -f1); \
|
||||
%mingw64_env unset $(/usr/bin/env | grep -E '^(\w+)=(.*)$' | grep -Evw 'PWD|USER|LANG' | /usr/bin/cut -d= -f1); \
|
||||
if test -z "$PATH_ORIG" ; then \
|
||||
PATH_ORIG="$PATH"; export PATH_ORIG; \
|
||||
fi; \
|
||||
|
|
@ -77,6 +78,7 @@
|
|||
FFLAGS="${MINGW64_FFLAGS-%mingw64_fflags}"; export FFLAGS; \
|
||||
FCFLAGS="${MINGW64_FCFLAGS-%mingw64_fflags}"; export FCFLAGS; \
|
||||
LDFLAGS="${MINGW64_LDFLAGS:-%mingw64_ldflags}"; export LDFLAGS; \
|
||||
RUSTFLAGS="${MINGW64_RUSTFLAGS:-%mingw64_rustflags}"; export RUSTFLAGS; \
|
||||
for i in `ls %{mingw64_bindir}/*|grep -- "-config\$"` ; do \
|
||||
x=`basename $i|tr "a-z+-." "A-ZX_"`; \
|
||||
declare -x $x="$i" ; export $x; \
|
||||
|
|
@ -138,7 +140,6 @@
|
|||
-DSYSCONF_INSTALL_DIR:PATH=%{mingw64_sysconfdir} \\\
|
||||
-DSHARE_INSTALL_PREFIX:PATH=%{mingw64_datadir} \\\
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=%{mingw64_prefix} \\\
|
||||
-DCMAKE_INSTALL_LIBDIR:PATH=%{mingw64_libdir} \\\
|
||||
${MINGW_CMAKE_ARGS} \\\
|
||||
${MINGW64_CMAKE_ARGS} \\\
|
||||
"$@" $__mingw64_topdir
|
||||
|
|
@ -147,13 +148,10 @@
|
|||
MINGW64_CMAKE_ARGS="-DINCLUDE_INSTALL_DIR:PATH=%{mingw64_includedir} ${MINGW64_CMAKE_ARGS}" \
|
||||
%mingw64_cmake_generic
|
||||
|
||||
%mingw64_cmake_kde4 \
|
||||
MINGW64_CMAKE_ARGS="-DINCLUDE_INSTALL_DIR:PATH=%{mingw64_includedir}/kde4 ${MINGW64_CMAKE_ARGS}" \
|
||||
%mingw64_cmake_generic
|
||||
|
||||
%mingw64_qmake_qt4 /usr/bin/mingw64-qmake-qt4
|
||||
%mingw64_qmake_qt5 /usr/bin/mingw64-qmake-qt5
|
||||
|
||||
%mingw64_qmake_qt6 /usr/bin/%{mingw64_target}-qmake-qt6
|
||||
|
||||
%mingw64_meson %{mingw64_env} ; \
|
||||
unset CC CFLAGS CPPFLAGS CXX CXXFLAGS LD LDFLAGS; \\\
|
||||
CFLAGS="${MINGW64_CFLAGS-%mingw64_cflags}"; export CFLAGS; \\\
|
||||
|
|
@ -164,7 +162,7 @@
|
|||
if test -f meson.build; then __mingw64_topdir=.; \\\
|
||||
elif test -f ../meson.build; then __mingw64_topdir=..; \\\
|
||||
else __mingw64_topdir=""; fi; \\\
|
||||
%__meson \\\
|
||||
%__meson setup \\\
|
||||
--cross-file /usr/share/mingw/toolchain-mingw64.meson \\\
|
||||
--default-library shared \\\
|
||||
--prefix %{mingw64_prefix} \\\
|
||||
|
|
|
|||
195
macros.ucrt64
Normal file
195
macros.ucrt64
Normal file
|
|
@ -0,0 +1,195 @@
|
|||
# RPM macros for Fedora MinGW UCRT64.
|
||||
|
||||
%ucrt64_pkg_name %(echo %{name} | sed 's/^mingw-/ucrt64-/')
|
||||
%ucrt64_target x86_64-w64-mingw32ucrt
|
||||
|
||||
# Paths.
|
||||
%ucrt64_sysroot %{_prefix}/%{ucrt64_target}/sys-root
|
||||
%ucrt64_prefix %{ucrt64_sysroot}/mingw
|
||||
%ucrt64_exec_prefix %{ucrt64_prefix}
|
||||
%ucrt64_bindir %{ucrt64_exec_prefix}/bin
|
||||
%ucrt64_sbindir %{ucrt64_exec_prefix}/sbin
|
||||
%ucrt64_libexecdir %{ucrt64_exec_prefix}/libexec
|
||||
%ucrt64_libdir %{ucrt64_exec_prefix}/lib
|
||||
%ucrt64_datadir %{ucrt64_prefix}/share
|
||||
%ucrt64_docdir %{ucrt64_prefix}/share/doc
|
||||
%ucrt64_infodir %{ucrt64_prefix}/share/info
|
||||
%ucrt64_mandir %{ucrt64_prefix}/share/man
|
||||
%ucrt64_sysconfdir %{ucrt64_prefix}/etc
|
||||
%ucrt64_sharedstatedir %{ucrt64_prefix}/com
|
||||
%ucrt64_localstatedir %{ucrt64_prefix}/var
|
||||
%ucrt64_includedir %{ucrt64_prefix}/include
|
||||
|
||||
# Build macros.
|
||||
%ucrt64_host %{ucrt64_target}
|
||||
|
||||
%ucrt64_cflags %{ucrt64_cppflags} -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4
|
||||
%ucrt64_cppflags %{nil}
|
||||
%ucrt64_ldflags -fstack-protector -lssp
|
||||
|
||||
%ucrt64_cc %{ucrt64_target}-gcc
|
||||
%ucrt64_cxx %{ucrt64_target}-g++
|
||||
%ucrt64_cpp %{ucrt64_target}-gcc -E
|
||||
%ucrt64_addr2line %{ucrt64_target}-addr2line
|
||||
%ucrt64_ar %{ucrt64_target}-ar
|
||||
%ucrt64_as %{ucrt64_target}-as
|
||||
%ucrt64_dlltool %{ucrt64_target}-dlltool
|
||||
%ucrt64_dllwrap %{ucrt64_target}-dllwrap
|
||||
%ucrt64_gcov %{ucrt64_target}-gcov
|
||||
%ucrt64_gprof %{ucrt64_target}-gprof
|
||||
%ucrt64_ld %{ucrt64_target}-ld
|
||||
%ucrt64_nm %{ucrt64_target}-nm
|
||||
%ucrt64_objcopy %{ucrt64_target}-objcopy
|
||||
%ucrt64_objdump %{ucrt64_target}-objdump
|
||||
%ucrt64_ranlib %{ucrt64_target}-ranlib
|
||||
%ucrt64_readelf %{ucrt64_target}-readelf
|
||||
%ucrt64_size %{ucrt64_target}-size
|
||||
%ucrt64_strings %{ucrt64_target}-strings
|
||||
%ucrt64_strip %{ucrt64_target}-strip
|
||||
%ucrt64_windmc %{ucrt64_target}-windmc
|
||||
%ucrt64_windres %{ucrt64_target}-windres
|
||||
|
||||
%ucrt64_env unset $(/usr/bin/env | grep -E '^(\w+)=(.*)$' | grep -Evw 'PWD|USER|LANG' | /usr/bin/cut -d= -f1); \
|
||||
if test -z "$PATH_ORIG" ; then \
|
||||
PATH_ORIG="$PATH"; export PATH_ORIG; \
|
||||
fi; \
|
||||
PATH="%{ucrt64_bindir}:$PATH_ORIG"; export PATH; \
|
||||
HOST_CC=gcc; export HOST_CC; \
|
||||
unset PKG_CONFIG_PATH; \
|
||||
_PREFIX="%{_bindir}/%{ucrt64_target}-"; \
|
||||
for i in `ls -1 ${_PREFIX}* | grep -v 'gcc-'`; do \
|
||||
x=`echo $i|sed "s,${_PREFIX},,"|tr "a-z+-." "A-ZX__"`; \
|
||||
declare -x $x="$i" ; export $x; \
|
||||
done; \
|
||||
unset _PREFIX; \
|
||||
CC="${UCRT64_CC:-%ucrt64_cc}"; export CC; \
|
||||
CFLAGS="${UCRT64_CFLAGS-%ucrt64_cflags}"; export CFLAGS; \
|
||||
CPPFLAGS="${UCRT64_CPPFLAGS-%ucrt64_cppflags}"; export CPPFLAGS; \
|
||||
if [ -x "%{_bindir}/%{ucrt64_cxx}" ]; then \
|
||||
CXX="${UCRT64_CXX:-%ucrt64_cxx}"; export CXX; \
|
||||
CXXFLAGS="${UCRT64_CXXFLAGS-%ucrt64_cflags}"; export CXXFLAGS; \
|
||||
else \
|
||||
CXX=; export CXX; \
|
||||
ac_cv_prog_CXX=no; export ac_cv_prog_CXX; \
|
||||
CXXFLAGS=; export CXXFLAGS; \
|
||||
fi; \
|
||||
LDFLAGS="${UCRT64_LDFLAGS:-%ucrt64_ldflags}"; export LDFLAGS; \
|
||||
for i in `ls %{ucrt64_bindir}/*|grep -- "-config\$"` ; do \
|
||||
x=`basename $i|tr "a-z+-." "A-ZX_"`; \
|
||||
declare -x $x="$i" ; export $x; \
|
||||
done; \
|
||||
unset x i
|
||||
|
||||
%ucrt64_pkg_config %{ucrt64_target}-pkg-config "$@"
|
||||
%ucrt64_pkgconfig_personalitydir %{mingw32_datadir}/pkgconfig/personality.d
|
||||
|
||||
%ucrt64_configure %{ucrt64_env} ; \
|
||||
__ucrt64_topdir=.; if ! test -x configure; then __ucrt64_topdir=..; fi; \\\
|
||||
$__ucrt64_topdir/configure \\\
|
||||
--host=%{ucrt64_host} \\\
|
||||
--build=%_build \\\
|
||||
--target=%{ucrt64_target} \\\
|
||||
--prefix=%{ucrt64_prefix} \\\
|
||||
--exec-prefix=%{ucrt64_exec_prefix} \\\
|
||||
--bindir=%{ucrt64_bindir} \\\
|
||||
--sbindir=%{ucrt64_sbindir} \\\
|
||||
--sysconfdir=%{ucrt64_sysconfdir} \\\
|
||||
--datadir=%{ucrt64_datadir} \\\
|
||||
--includedir=%{ucrt64_includedir} \\\
|
||||
--libdir=%{ucrt64_libdir} \\\
|
||||
--libexecdir=%{ucrt64_libexecdir} \\\
|
||||
--localstatedir=%{ucrt64_localstatedir} \\\
|
||||
--sharedstatedir=%{ucrt64_sharedstatedir} \\\
|
||||
--mandir=%{ucrt64_mandir} \\\
|
||||
--infodir=%{ucrt64_infodir} \\\
|
||||
${MINGW_CONFIGURE_ARGS} \\\
|
||||
${UCRT64_CONFIGURE_ARGS} "$@"
|
||||
|
||||
%ucrt64_make %{ucrt64_env} ; \
|
||||
make \\\
|
||||
prefix=%{ucrt64_prefix} \\\
|
||||
exec_prefix=%{ucrt64_exec_prefix} \\\
|
||||
bindir=%{ucrt64_bindir} \\\
|
||||
sbindir=%{ucrt64_sbindir} \\\
|
||||
sysconfdir=%{ucrt64_sysconfdir} \\\
|
||||
datadir=%{ucrt64_datadir} \\\
|
||||
includedir=%{ucrt64_includedir} \\\
|
||||
libdir=%{ucrt64_libdir} \\\
|
||||
libexecdir=%{ucrt64_libexecdir} \\\
|
||||
localstatedir=%{ucrt64_localstatedir} \\\
|
||||
sharedstatedir=%{ucrt64_sharedstatedir} \\\
|
||||
mandir=%{ucrt64_mandir} \\\
|
||||
infodir=%{ucrt64_infodir} "$@"
|
||||
|
||||
%ucrt64_cmake_generic %{ucrt64_env} ; \
|
||||
PKG_CONFIG_LIBDIR="%{ucrt64_libdir}/pkgconfig:%{ucrt64_datadir}/pkgconfig"; export PKG_CONFIG_LIBDIR; \
|
||||
if test -f CMakeLists.txt; then __ucrt64_topdir=.; \\\
|
||||
elif test -f ../CMakeLists.txt; then __ucrt64_topdir=..; \\\
|
||||
else __ucrt64_topdir=""; fi; \\\
|
||||
if test "${MINGW_CMAKE_NO_VERBOSE}" == "" ; then \
|
||||
UCRT64_CMAKE_ARGS="${UCRT64_CMAKE_ARGS} -DCMAKE_VERBOSE_MAKEFILE=ON" \
|
||||
fi \
|
||||
PATH=%{_prefix}/%{ucrt64_target}/bin:$PATH %__cmake \\\
|
||||
-DCMAKE_TOOLCHAIN_FILE=/usr/share/mingw/toolchain-ucrt64.cmake \\\
|
||||
-DBUILD_SHARED_LIBS:BOOL=ON \\\
|
||||
-DSYSCONF_INSTALL_DIR:PATH=%{ucrt64_sysconfdir} \\\
|
||||
-DSHARE_INSTALL_PREFIX:PATH=%{ucrt64_datadir} \\\
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=%{ucrt64_prefix} \\\
|
||||
-DCMAKE_INSTALL_LIBDIR:PATH=%{ucrt64_libdir} \\\
|
||||
${MINGW_CMAKE_ARGS} \\\
|
||||
${UCRT64_CMAKE_ARGS} \\\
|
||||
"$@" $__ucrt64_topdir
|
||||
|
||||
%ucrt64_cmake \
|
||||
UCRT64_CMAKE_ARGS="-DINCLUDE_INSTALL_DIR:PATH=%{ucrt64_includedir} ${UCRT64_CMAKE_ARGS}" \
|
||||
%ucrt64_cmake_generic
|
||||
|
||||
%ucrt64_cmake_kde4 \
|
||||
UCRT64_CMAKE_ARGS="-DINCLUDE_INSTALL_DIR:PATH=%{ucrt64_includedir}/kde4 ${UCRT64_CMAKE_ARGS}" \
|
||||
%ucrt64_cmake_generic
|
||||
|
||||
%ucrt64_qmake_qt5 /usr/bin/ucrt64-qmake-qt5
|
||||
|
||||
%ucrt64_meson %{ucrt64_env} ; \
|
||||
unset CC CFLAGS CPPFLAGS CXX CXXFLAGS LD LDFLAGS; \\\
|
||||
CFLAGS="${UCRT64_CFLAGS-%ucrt64_cflags}"; export CFLAGS; \\\
|
||||
CPPFLAGS="${UCRT64_CPPFLAGS-%ucrt64_cppflags}"; export CPPFLAGS; \\\
|
||||
LDFLAGS="${UCRT64_LDFLAGS:-%ucrt64_ldflags}"; export LDFLAGS; \\\
|
||||
if test -f meson.build; then __ucrt64_topdir=.; \\\
|
||||
elif test -f ../meson.build; then __ucrt64_topdir=..; \\\
|
||||
else __ucrt64_topdir=""; fi; \\\
|
||||
%__meson setup \\\
|
||||
--cross-file /usr/share/mingw/toolchain-ucrt64.meson \\\
|
||||
--default-library shared \\\
|
||||
--prefix %{ucrt64_prefix} \\\
|
||||
--bindir %{ucrt64_bindir} \\\
|
||||
--sbindir %{ucrt64_sbindir} \\\
|
||||
--sysconfdir %{ucrt64_sysconfdir} \\\
|
||||
--datadir %{ucrt64_datadir} \\\
|
||||
--includedir %{ucrt64_includedir} \\\
|
||||
--libdir %{ucrt64_libdir} \\\
|
||||
--libexecdir %{ucrt64_libexecdir} \\\
|
||||
--localstatedir %{ucrt64_localstatedir} \\\
|
||||
--sharedstatedir %{ucrt64_sharedstatedir} \\\
|
||||
--mandir %{ucrt64_mandir} \\\
|
||||
--infodir %{ucrt64_infodir} \\\
|
||||
${MINGW_MESON_ARGS} \\\
|
||||
${UCRT64_MESON_ARGS} \\\
|
||||
"$@" $__ucrt64_topdir
|
||||
|
||||
%ucrt64_description This is the cross-compiled version of this library / tool.\
|
||||
You should only install this package if you want to cross-compile programs for \
|
||||
Win64 (64 bit Windows).
|
||||
|
||||
%ucrt64_debug_package \
|
||||
%package -n %{ucrt64_pkg_name}-debuginfo \
|
||||
Summary: Debug information for package %{ucrt64_pkg_name} \
|
||||
Group: Development/Debug \
|
||||
BuildArch: noarch \
|
||||
%description -n %{ucrt64_pkg_name}-debuginfo \
|
||||
This package provides debug information for package %{ucrt64_pkg_name}. \
|
||||
Debug information is useful when developing applications that use this \
|
||||
package or when debugging this package. \
|
||||
%files -n %{ucrt64_pkg_name}-debuginfo -f ucrt64-debugfiles.list \
|
||||
%defattr(-,root,root,-) \
|
||||
%{nil}
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
# Define before mingw-binutils is build
|
||||
%bcond_with bootstrap
|
||||
|
||||
%global debug_package %{nil}
|
||||
|
||||
# Place RPM macros in %%{_rpmconfigdir}/macros.d if it exists (RPM 4.11+)
|
||||
|
|
@ -6,11 +9,11 @@
|
|||
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
|
||||
|
||||
Name: mingw-filesystem
|
||||
Version: 133
|
||||
Release: 4%{?dist}
|
||||
Version: 150
|
||||
Release: 3%{?dist}
|
||||
Summary: MinGW cross compiler base filesystem and environment
|
||||
|
||||
License: GPLv2+
|
||||
License: GPL-2.0-or-later
|
||||
URL: http://fedoraproject.org/wiki/MinGW
|
||||
BuildArch: noarch
|
||||
|
||||
|
|
@ -18,27 +21,30 @@ Source0: COPYING
|
|||
Source1: macros.mingw
|
||||
Source2: macros.mingw32
|
||||
Source3: macros.mingw64
|
||||
Source4: mingw32.sh
|
||||
Source5: mingw64.sh
|
||||
Source6: mingw-find-debuginfo.sh
|
||||
Source7: mingw.req
|
||||
Source8: mingw.prov
|
||||
Source9: mingw-scripts.sh
|
||||
Source10: mingw-rpmlint.config
|
||||
Source11: toolchain-mingw32.cmake
|
||||
Source12: toolchain-mingw64.cmake
|
||||
Source13: mingw-find-lang.sh
|
||||
Source14: mingw32.attr
|
||||
Source15: mingw64.attr
|
||||
# generated with:
|
||||
# (rpm -ql mingw32-crt | grep '\.a$' | while read f ; do i686-w64-mingw32-dlltool -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-mingw32
|
||||
Source16: standard-dlls-mingw32
|
||||
# (rpm -ql mingw64-crt | grep '\.a$' | while read f ; do x86_64-w64-mingw32-dlltool -I $f 2>/dev/null ; done) | sort | uniq | tr A-Z a-z > standard-dlls-mingw64
|
||||
Source17: standard-dlls-mingw64
|
||||
Source18: toolchain-mingw32.meson
|
||||
Source19: toolchain-mingw64.meson
|
||||
Source20: pkgconf-personality-mingw32
|
||||
Source21: pkgconf-personality-mingw64
|
||||
Source4: macros.ucrt64
|
||||
Source5: mingw32.sh
|
||||
Source6: mingw64.sh
|
||||
Source7: ucrt64.sh
|
||||
Source8: mingw-find-debuginfo.sh
|
||||
Source9: mingw.req
|
||||
Source10: mingw.prov
|
||||
Source11: mingw-scripts.sh
|
||||
Source12: mingw-rpmlint.config
|
||||
Source13: toolchain-mingw32.cmake
|
||||
Source14: toolchain-mingw64.cmake
|
||||
Source15: toolchain-ucrt64.cmake
|
||||
Source16: mingw-find-lang.sh
|
||||
Source17: mingw32.attr
|
||||
Source18: mingw64.attr
|
||||
Source19: ucrt64.attr
|
||||
Source20: toolchain-mingw32.meson
|
||||
Source21: toolchain-mingw64.meson
|
||||
Source22: toolchain-ucrt64.meson
|
||||
Source23: pkgconf-personality-mingw32
|
||||
Source24: pkgconf-personality-mingw64
|
||||
Source25: pkgconf-personality-ucrt64
|
||||
Source26: mingw32-hostlib.conf
|
||||
Source27: mingw64-hostlib.conf
|
||||
|
||||
# Taken from the Fedora filesystem package
|
||||
Source101: https://fedorahosted.org/filesystem/browser/lang-exceptions
|
||||
|
|
@ -60,8 +66,10 @@ This environment is maintained by the Fedora MinGW SIG at:
|
|||
|
||||
|
||||
%package base
|
||||
Summary: Generic files which are needed for both mingw32-filesystem and mingw64-filesystem
|
||||
Summary: Generic files which are needed for {mingw32,mingw64,ucrt64}-filesystem
|
||||
|
||||
# We need this for cmake macros
|
||||
Requires: cmake-rpm-macros
|
||||
Requires: redhat-rpm-config
|
||||
# Obsolete the packages from the test repo
|
||||
Obsoletes: cross-filesystem < 67-2
|
||||
|
|
@ -87,23 +95,9 @@ Requires: %{name}-base = %{version}-%{release}
|
|||
Conflicts: mingw32-pkg-config < 0.28-17
|
||||
Obsoletes: mingw32-pkg-config < 0.28-17
|
||||
Provides: mingw32-pkg-config = 0.28-17
|
||||
|
||||
# Note about 'Provides: mingw32(foo.dll)'
|
||||
# ------------------------------------------------------------
|
||||
#
|
||||
# We want to be able to build & install mingw32 libraries without
|
||||
# necessarily needing to install wine. (And certainly not needing to
|
||||
# install Windows!) There is no requirement to have wine installed in
|
||||
# order to use the mingw toolchain to develop software (ie. to
|
||||
# compile more stuff on top of it), so why require that?
|
||||
#
|
||||
# So for expediency, this base package provides the "missing" DLLs
|
||||
# from Windows. Another way to do it would be to exclude these
|
||||
# proprietary DLLs in our find-requires checking script - essentially
|
||||
# it comes out the same either way.
|
||||
#
|
||||
Provides: %(sed "s/\(.*\)/mingw32(\1) /g" %{SOURCE16} | tr "\n" " ")
|
||||
Provides: mingw32(mscoree.dll)
|
||||
%if %{without bootstrap}
|
||||
Requires: mingw-binutils-generic
|
||||
%endif
|
||||
|
||||
%description -n mingw32-filesystem
|
||||
This package contains the base filesystem layout, RPM macros and
|
||||
|
|
@ -121,9 +115,9 @@ Requires: %{name}-base = %{version}-%{release}
|
|||
Conflicts: mingw64-pkg-config < 0.28-17
|
||||
Obsoletes: mingw64-pkg-config < 0.28-17
|
||||
Provides: mingw64-pkg-config = 0.28-17
|
||||
|
||||
Provides: %(sed "s/\(.*\)/mingw64(\1) /g" %{SOURCE17} | tr "\n" " ")
|
||||
Provides: mingw64(mscoree.dll)
|
||||
%if %{without bootstrap}
|
||||
Requires: mingw-binutils-generic
|
||||
%endif
|
||||
|
||||
%description -n mingw64-filesystem
|
||||
This package contains the base filesystem layout, RPM macros and
|
||||
|
|
@ -134,6 +128,26 @@ This environment is maintained by the Fedora MinGW SIG at:
|
|||
http://fedoraproject.org/wiki/SIGs/MinGW
|
||||
|
||||
|
||||
%package -n ucrt64-filesystem
|
||||
Summary: MinGW cross compiler base filesystem and environment for the win64 UCRT target
|
||||
Requires: %{name}-base = %{version}-%{release}
|
||||
# Replace ucrt64-pkg-config
|
||||
Conflicts: ucrt64-pkg-config < 0.28-17
|
||||
Obsoletes: ucrt64-pkg-config < 0.28-17
|
||||
Provides: ucrt64-pkg-config = 0.28-17
|
||||
%if %{without bootstrap}
|
||||
Requires: mingw-binutils-generic
|
||||
%endif
|
||||
|
||||
%description -n ucrt64-filesystem
|
||||
This package contains the base filesystem layout, RPM macros and
|
||||
environment for all Fedora MinGW packages.
|
||||
|
||||
This environment is maintained by the Fedora MinGW SIG at:
|
||||
|
||||
http://fedoraproject.org/wiki/SIGs/MinGW
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -c -T
|
||||
cp %{SOURCE0} COPYING
|
||||
|
|
@ -144,99 +158,77 @@ cp %{SOURCE0} COPYING
|
|||
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}
|
||||
|
||||
mkdir -p %{buildroot}%{_libexecdir}
|
||||
install -m 755 %{SOURCE9} %{buildroot}%{_libexecdir}/mingw-scripts
|
||||
install -m 755 %{SOURCE11} %{buildroot}%{_libexecdir}/mingw-scripts
|
||||
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
pushd %{buildroot}%{_bindir}
|
||||
for i in mingw32-configure mingw32-cmake mingw32-make mingw32-meson mingw32-pkg-config \
|
||||
mingw64-configure mingw64-cmake mingw64-make mingw64-meson mingw64-pkg-config ; do
|
||||
mingw64-configure mingw64-cmake mingw64-make mingw64-meson mingw64-pkg-config \
|
||||
ucrt64-configure ucrt64-cmake ucrt64-make ucrt64-meson ucrt64-pkg-config ; do
|
||||
ln -s %{_libexecdir}/mingw-scripts $i
|
||||
done
|
||||
for i in i686-w64-mingw32-pkg-config \
|
||||
x86_64-w64-mingw32-pkg-config ; do
|
||||
x86_64-w64-mingw32-pkg-config \
|
||||
x86_64-w64-mingw32ucrt-pkg-config ; do
|
||||
ln -s %{_bindir}/pkgconf $i
|
||||
done
|
||||
popd
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/profile.d
|
||||
install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/profile.d/
|
||||
install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/profile.d/
|
||||
install -m 644 %{SOURCE6} %{buildroot}%{_sysconfdir}/profile.d/
|
||||
install -m 644 %{SOURCE7} %{buildroot}%{_sysconfdir}/profile.d/
|
||||
|
||||
mkdir -p %{buildroot}%{macrosdir}
|
||||
install -m 644 %{SOURCE1} %{buildroot}%{macrosdir}/macros.mingw
|
||||
install -m 644 %{SOURCE2} %{buildroot}%{macrosdir}/macros.mingw32
|
||||
install -m 644 %{SOURCE3} %{buildroot}%{macrosdir}/macros.mingw64
|
||||
install -m 644 %{SOURCE4} %{buildroot}%{macrosdir}/macros.ucrt64
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/rpmlint
|
||||
install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/rpmlint/
|
||||
install -m 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/rpmlint/
|
||||
|
||||
# Create the folders required for gcc and binutils
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/bin
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/lib
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/bin
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/lib
|
||||
for target in i686-w64-mingw32 x86_64-w64-mingw32 x86_64-w64-mingw32ucrt; do
|
||||
# Create the folders required for gcc and binutils
|
||||
mkdir -p %{buildroot}%{_prefix}/$target
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/bin
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/lib
|
||||
|
||||
# The MinGW system root which will contain Windows native binaries
|
||||
# and Windows-specific header files, pkgconfig, etc.
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/bin
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/etc
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/include
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/include/sys
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/lib
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/lib/pkgconfig
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/lib/cmake
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/sbin
|
||||
# The MinGW system root which will contain Windows native binaries
|
||||
# and Windows-specific header files, pkgconfig, etc.
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/bin
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/etc
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/include
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/include/sys
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/lib
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/lib/pkgconfig
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/lib/cmake
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/libexec
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/libexec/installed-tests
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/sbin
|
||||
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/bin
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/etc
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/include
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/include
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/lib
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/lib/pkgconfig
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/lib/cmake
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/sbin
|
||||
# We don't normally package manual pages and info files, except
|
||||
# where those are not supplied by a Fedora native package. So we
|
||||
# need to create the directories.
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/doc
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/info
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/man
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/man/man{1,2,3,4,5,6,7,8,l,n}
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/aclocal
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/themes
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/cmake
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/locale
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/pkgconfig
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/xml
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/icons
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/metainfo
|
||||
mkdir -p %{buildroot}%{_prefix}/$target/sys-root/mingw/share/installed-tests
|
||||
|
||||
# We don't normally package manual pages and info files, except
|
||||
# where those are not supplied by a Fedora native package. So we
|
||||
# need to create the directories.
|
||||
#
|
||||
# Note that some packages try to install stuff in
|
||||
# /usr/x86_64-pc-mingw32/sys-root/man and
|
||||
# /usr/x86_64-pc-mingw32/sys-root/doc
|
||||
# but those are both packaging bugs.
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/doc
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/info
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/man
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/man/man{1,2,3,4,5,6,7,8,l,n}
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/aclocal
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/themes
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/cmake
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/locale
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/pkgconfig
|
||||
mkdir -p %{buildroot}%{_prefix}/i686-w64-mingw32/sys-root/mingw/share/xml
|
||||
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/doc
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/info
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/man
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/man/man{1,2,3,4,5,6,7,8,l,n}
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/aclocal
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/themes
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/cmake
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/locale
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/pkgconfig
|
||||
mkdir -p %{buildroot}%{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/xml
|
||||
|
||||
mkdir -p %{buildroot}%{_prefix}/lib/debug/%{_prefix}/i686-w64-mingw32
|
||||
mkdir -p %{buildroot}%{_prefix}/lib/debug/%{_prefix}/x86_64-w64-mingw32
|
||||
mkdir -p %{buildroot}%{_prefix}/lib/debug/%{_prefix}/$target
|
||||
done
|
||||
|
||||
# Own folders for all locales
|
||||
# Snippet taken from the Fedora filesystem package
|
||||
|
|
@ -253,6 +245,7 @@ grep -v "^$" %{buildroot}/iso_639.tab | grep -v "^#" | while read a b c d ; do
|
|||
fi
|
||||
echo "%lang(${locale}) %{_prefix}/i686-w64-mingw32/sys-root/mingw/share/locale/${locale}" >> filelist_mingw32
|
||||
echo "%lang(${locale}) %{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/locale/${locale}" >> filelist_mingw64
|
||||
echo "%lang(${locale}) %{_prefix}/x86_64-w64-mingw32ucrt/sys-root/mingw/share/locale/${locale}" >> filelist_ucrt
|
||||
done
|
||||
|
||||
cat %{SOURCE101} | grep -v "^#" | grep -v "^$" | while read loc ; do
|
||||
|
|
@ -270,44 +263,54 @@ cat %{SOURCE101} | grep -v "^#" | grep -v "^$" | while read loc ; do
|
|||
fi
|
||||
# If the locale is not official and not special, skip it
|
||||
if [ -z "$special" ]; then
|
||||
egrep -q "[[:space:]]${locale%%_*}[[:space:]]" %{buildroot}/iso_639.tab || continue
|
||||
grep -Eq "[[:space:]]${locale%%_*}[[:space:]]" %{buildroot}/iso_639.tab || continue
|
||||
fi
|
||||
echo "%lang(${locale}) %{_prefix}/i686-w64-mingw32/sys-root/mingw/share/locale/${loc}" >> filelist_mingw32
|
||||
echo "%lang(${locale}) %{_prefix}/x86_64-w64-mingw32/sys-root/mingw/share/locale/${loc}" >> filelist_mingw64
|
||||
echo "%lang(${locale}) %{_prefix}/x86_64-w64-mingw32ucrt/sys-root/mingw/share/locale/${loc}" >> filelist_ucrt
|
||||
done
|
||||
|
||||
rm -f %{buildroot}/iso_639.tab
|
||||
rm -f %{buildroot}/iso_3166.tab
|
||||
|
||||
cat filelist_mingw32 filelist_mingw64 | grep "locale" | while read a b ; do
|
||||
cat filelist_mingw32 filelist_mingw64 filelist_ucrt | grep "locale" | while read a b ; do
|
||||
mkdir -p -m 755 %{buildroot}/$b/LC_MESSAGES
|
||||
done
|
||||
|
||||
# NB. NOT _libdir
|
||||
mkdir -p %{buildroot}/usr/lib/rpm
|
||||
install -m 0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}
|
||||
install -m 0755 %{SOURCE7} %{buildroot}%{_rpmconfigdir}
|
||||
install -m 0755 %{SOURCE8} %{buildroot}%{_rpmconfigdir}
|
||||
install -m 0755 %{SOURCE13} %{buildroot}%{_rpmconfigdir}
|
||||
install -m 0755 %{SOURCE9} %{buildroot}%{_rpmconfigdir}
|
||||
install -m 0755 %{SOURCE10} %{buildroot}%{_rpmconfigdir}
|
||||
install -m 0755 %{SOURCE16} %{buildroot}%{_rpmconfigdir}
|
||||
|
||||
mkdir -p %{buildroot}/usr/lib/rpm/fileattrs
|
||||
install -m 0644 %{SOURCE14} %{buildroot}%{_rpmconfigdir}/fileattrs/
|
||||
install -m 0644 %{SOURCE15} %{buildroot}%{_rpmconfigdir}/fileattrs/
|
||||
install -m 0644 %{SOURCE17} %{buildroot}%{_rpmconfigdir}/fileattrs/
|
||||
install -m 0644 %{SOURCE18} %{buildroot}%{_rpmconfigdir}/fileattrs/
|
||||
install -m 0644 %{SOURCE19} %{buildroot}%{_rpmconfigdir}/fileattrs/
|
||||
|
||||
mkdir -p %{buildroot}%{_datadir}/mingw
|
||||
install -m 0644 %{SOURCE11} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE12} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE18} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE19} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE13} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE14} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE15} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE20} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE21} %{buildroot}%{_datadir}/mingw/
|
||||
install -m 0644 %{SOURCE22} %{buildroot}%{_datadir}/mingw/
|
||||
|
||||
mkdir -p %{buildroot}%{pkgconfig_personalitydir}
|
||||
install -m 0644 %{SOURCE20} %{buildroot}%{pkgconfig_personalitydir}/i686-w64-mingw32.personality
|
||||
install -m 0644 %{SOURCE21} %{buildroot}%{pkgconfig_personalitydir}/x86_64-w64-mingw32.personality
|
||||
install -m 0644 %{SOURCE23} %{buildroot}%{pkgconfig_personalitydir}/i686-w64-mingw32.personality
|
||||
install -m 0644 %{SOURCE24} %{buildroot}%{pkgconfig_personalitydir}/x86_64-w64-mingw32.personality
|
||||
install -m 0644 %{SOURCE25} %{buildroot}%{pkgconfig_personalitydir}/x86_64-w64-mingw32ucrt.personality
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d
|
||||
install -m 0644 %{SOURCE26} %{buildroot}%{_sysconfdir}/ld.so.conf.d/mingw32-hostlib.conf
|
||||
install -m 0644 %{SOURCE27} %{buildroot}%{_sysconfdir}/ld.so.conf.d/mingw64-hostlib.conf
|
||||
|
||||
# Link mingw-pkg-config man pages to pkgconf(1)
|
||||
mkdir -p %{buildroot}%{_mandir}/man1/
|
||||
echo ".so man1/pkgconf.1" > %{buildroot}%{_mandir}/man1/i686-w64-mingw32-pkg-config.1
|
||||
echo ".so man1/pkgconf.1" > %{buildroot}%{_mandir}/man1/x86_64-w64-mingw32-pkg-config.1
|
||||
echo ".so man1/pkgconf.1" > %{buildroot}%{_mandir}/man1/x86_64-w64-mingw32ucrt-pkg-config.1
|
||||
|
||||
|
||||
%files base
|
||||
|
|
@ -334,6 +337,7 @@ echo ".so man1/pkgconf.1" > %{buildroot}%{_mandir}/man1/x86_64-w64-mingw32-pkg-c
|
|||
%{_datadir}/mingw/toolchain-mingw32.meson
|
||||
%{pkgconfig_personalitydir}/i686-w64-mingw32.personality
|
||||
%{_mandir}/man1/i686-w64-mingw32-pkg-config.1*
|
||||
%{_sysconfdir}/ld.so.conf.d/mingw32-hostlib.conf
|
||||
%dir %{_prefix}/lib/debug/%{_prefix}
|
||||
%dir %{_prefix}/lib/debug/%{_prefix}/i686-w64-mingw32
|
||||
|
||||
|
|
@ -353,25 +357,129 @@ echo ".so man1/pkgconf.1" > %{buildroot}%{_mandir}/man1/x86_64-w64-mingw32-pkg-c
|
|||
%{_datadir}/mingw/toolchain-mingw64.meson
|
||||
%{pkgconfig_personalitydir}/x86_64-w64-mingw32.personality
|
||||
%{_mandir}/man1/x86_64-w64-mingw32-pkg-config.1*
|
||||
%{_sysconfdir}/ld.so.conf.d/mingw64-hostlib.conf
|
||||
%dir %{_prefix}/lib/debug/%{_prefix}
|
||||
%dir %{_prefix}/lib/debug/%{_prefix}/x86_64-w64-mingw32
|
||||
|
||||
|
||||
%files -n ucrt64-filesystem
|
||||
%{macrosdir}/macros.ucrt64
|
||||
%config(noreplace) %{_sysconfdir}/profile.d/ucrt64.sh
|
||||
%{_bindir}/ucrt64-configure
|
||||
%{_bindir}/ucrt64-cmake
|
||||
%{_bindir}/ucrt64-make
|
||||
%{_bindir}/ucrt64-meson
|
||||
%{_bindir}/ucrt64-pkg-config
|
||||
%{_bindir}/x86_64-w64-mingw32ucrt-pkg-config
|
||||
%{_prefix}/x86_64-w64-mingw32ucrt
|
||||
%{_rpmconfigdir}/fileattrs/ucrt64.attr
|
||||
%{_datadir}/mingw/toolchain-ucrt64.cmake
|
||||
%{_datadir}/mingw/toolchain-ucrt64.meson
|
||||
%{pkgconfig_personalitydir}/x86_64-w64-mingw32ucrt.personality
|
||||
%{_mandir}/man1/x86_64-w64-mingw32ucrt-pkg-config.1*
|
||||
%dir %{_prefix}/lib/debug/%{_prefix}
|
||||
%dir %{_prefix}/lib/debug/%{_prefix}/x86_64-w64-mingw32ucrt
|
||||
|
||||
%changelog
|
||||
* Wed Apr 05 2023 Sandro Mani <manisandro@gmail.com> - 133-4
|
||||
* Wed Aug 20 2025 Marc-André Lureau <marcandre.lureau@redhat.com> - 150-3
|
||||
- Own a few more directories.
|
||||
|
||||
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 150-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Thu May 29 2025 Sandro Mani <manisandro@gmail.com> - 150-1
|
||||
- Re-add target bin dir to PATH
|
||||
|
||||
* Sun Mar 23 2025 Sandro Mani <manisandro@gmail.com> - 149-1
|
||||
- Only add cross host tools bin dir to PATH
|
||||
|
||||
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 148-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Sat Sep 07 2024 Zephyr Lykos <fedora@mochaa.ws> - 148-7
|
||||
- Fix meson deprecation warnings
|
||||
|
||||
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 148-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Wed Jun 12 2024 Sandro Mani <manisandro@gmail.com> - 148-5
|
||||
- Rust fixes
|
||||
|
||||
* Thu Jun 06 2024 Sandro Mani <manisandro@gmail.com> - 148-4
|
||||
- Set __debug_package 1 in %mingw_debug_package (#2284193)
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 148-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 148-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Wed Sep 13 2023 Orion Poplawski <orion@nwra.com> - 148-1
|
||||
- Add pkgconfig provides
|
||||
|
||||
* Mon Sep 11 2023 Neal Gompa <ngompa@fedoraproject.org> - 147-3
|
||||
- Add dependency on cmake-rpm-macros
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 147-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Fri Apr 07 2023 Sandro Mani <manisandro@gmail.com> - 147-1
|
||||
- Set mingw_env before in run_mingw_make
|
||||
|
||||
* Wed Apr 05 2023 Sandro Mani <manisandro@gmail.com> - 146-1
|
||||
- Set RUSTFLAGS in mingw env
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 145-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Sat Dec 31 2022 Sandro Mani <manisandro@gmail.com> - 145-1
|
||||
- Fix mingw-find-lang.sh exit code
|
||||
|
||||
* Fri Dec 09 2022 Sandro Mani <manisandro@gmail.com> - 133-3
|
||||
* Fri Dec 23 2022 Sandro Mani <manisandro@gmail.com> - 144-1
|
||||
- Add mingw-qmake-qt6 macros, drop mingw-cmake-kde4 macros
|
||||
|
||||
* Fri Dec 09 2022 Sandro Mani <manisandro@gmail.com> - 143-1
|
||||
- Prevent mingw-find-lang.sh from clobbering previous find-lang results
|
||||
|
||||
* Sat Jun 04 2022 Sandro Mani <manisandro@gmail.com> - 133-2
|
||||
- Add shcore.dll to standard dlls
|
||||
* Tue Oct 18 2022 Sandro Mani <manisandro@gmail.com> - 142-1
|
||||
- Require mingw-binutils-generic
|
||||
|
||||
* Mon May 09 2022 Richard Hughes <richard@hughsie.com> - 133-1
|
||||
* Tue Sep 27 2022 Sandro Mani <manisandro@gmail.com> - 141-2
|
||||
- Replace egrep with grep -E
|
||||
|
||||
* Sat Jul 30 2022 Sandro Mani <manisandro@gmail.com> - 141-1
|
||||
- Revert unsetting _PREFIX
|
||||
|
||||
* Fri Jul 29 2022 Sandro Mani <manisandro@gmail.com> - 140-1
|
||||
- Don't unset _PREFIX in mingw-env macro, it leads to ${_PREFIX}
|
||||
being empty when evaluated the lines above
|
||||
|
||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 139-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Fri May 20 2022 Sandro Mani <manisandro@gmail.com> - 139-1
|
||||
- Set CMAKE_FIND_ROOT_PATH_MODE_PACKAGE in cmake toolchain files
|
||||
|
||||
* Wed May 11 2022 Sandro Mani <manisandro@gmail.com> - 138-1
|
||||
- Drop CMAKE_INSTALL_LIBDIR from mingw-cmake macros
|
||||
|
||||
* Mon May 09 2022 Richard Hughes <richard@hughsie.com> 137-1
|
||||
- Include glib-mkenums in the toolchain binaries to avoid installing host GLib for building.
|
||||
|
||||
* Thu Apr 21 2022 Sandro Mani <manisandro@gmail.com> - 132-2
|
||||
- Rebuild
|
||||
* Tue May 03 2022 Sandro Mani <manisandro@gmail.com> - 136-1
|
||||
- Drop standard DLL provides, moved to mingw-crt
|
||||
|
||||
* Tue May 03 2022 Sandro Mani <manisandro@gmail.com> - 135-1
|
||||
- Add host lib dirs to ld.so.conf
|
||||
|
||||
* Thu Apr 28 2022 Sandro Mani <manisandro@gmail.com> - 134-1
|
||||
- Regenerate standard-dlls
|
||||
|
||||
* Thu Feb 24 2022 Marc-André Lureau <marcandre.lureau@redhat.com> - 133-2
|
||||
- Fix ucrt64 toolchain filenames.
|
||||
|
||||
* Tue Feb 22 2022 Marc-André Lureau <marcandre.lureau@redhat.com> - 133-1
|
||||
- Add ucrt64 target. Related to rhbz#2055254.
|
||||
|
||||
* Mon Feb 21 2022 Sandro Mani <manisandro@gmail.com> - 132-1
|
||||
- Create build_winXX directories with mkdir -p
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ shift
|
|||
|
||||
for f in `find $RPM_BUILD_ROOT -type f -name "*.exe" -or -name "*.dll" -or -name "*.pyd"`
|
||||
do
|
||||
case $(mingw-objdump -h $f 2>/dev/null | egrep -o '(debug[\.a-z_]*|gnu.version)') in
|
||||
case $(mingw-objdump -h $f 2>/dev/null | grep -Eo '(debug[\.a-z_]*|gnu.version)') in
|
||||
*debuglink*) continue ;;
|
||||
*debug*) ;;
|
||||
*gnu.version*)
|
||||
|
|
|
|||
|
|
@ -26,6 +26,8 @@ if [ "`basename $0`" = "i686-w64-mingw32-pkg-config" ] ; then
|
|||
NAME="mingw32_pkg_config"
|
||||
elif [ "`basename $0`" = "x86_64-w64-mingw32-pkg-config" ] ; then
|
||||
NAME="mingw64_pkg_config"
|
||||
elif [ "`basename $0`" = "x86_64-w64-mingw32ucrt-pkg-config" ] ; then
|
||||
NAME="ucrt64_pkg_config"
|
||||
else
|
||||
NAME="`basename $0|tr -- - _`"
|
||||
fi
|
||||
|
|
@ -37,6 +39,8 @@ if [[ $NAME == *cmake* ]] ; then
|
|||
MINGW32_CXXFLAGS=${MINGW32_CXXFLAGS:-""}
|
||||
MINGW64_CFLAGS=${MINGW64_CFLAGS:-""}
|
||||
MINGW64_CXXFLAGS=${MINGW64_CXXFLAGS:-""}
|
||||
UCRT64_CFLAGS=${UCRT64_CFLAGS:-""}
|
||||
UCRT64_CXXFLAGS=${UCRT64_CXXFLAGS:-""}
|
||||
fi
|
||||
|
||||
# NOTE: The use of 'eval' in combination with '$@' in the evaluated rpm macro is
|
||||
|
|
|
|||
12
mingw.prov
12
mingw.prov
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
targets=$@
|
||||
if [ -z "$targets" ] ; then
|
||||
echo "Usage: $0 [ mingw32 ] [ mingw64 ]"
|
||||
echo "Usage: $0 [ mingw32 ] [ mingw64 ] [ ucrt64 ]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
@ -21,4 +21,14 @@ for f in $dlls; do
|
|||
done
|
||||
done
|
||||
|
||||
pcs=$(echo $filelist | tr '[:blank:]' '\n' | grep '\.pc$')
|
||||
|
||||
for f in $pcs; do
|
||||
basename=`basename $f .pc | tr '[:upper:]' '[:lower:]'`
|
||||
for target in $targets; do
|
||||
host_triplet=`rpm --eval "%{${target}_target}"`
|
||||
[[ $f =~ .*$host_triplet.* ]] && echo "${target}-pkgconfig($basename)"
|
||||
done
|
||||
done
|
||||
|
||||
exit 0
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
targets=$@
|
||||
if [ -z "$targets" ] ; then
|
||||
echo "Usage: $0 [ mingw32 ] [ mingw64 ]"
|
||||
echo "Usage: $0 [ mingw32 ] [ mingw64 ] [ ucrt64 ]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
@ -25,7 +25,7 @@ for target in $targets; do
|
|||
for f in $dlls; do
|
||||
if [[ $f =~ .*$host_triplet.* ]]; then
|
||||
$OBJDUMP -p $f | grep 'DLL Name' | grep -Eio '[-._\+[:alnum:]]+\.dll' |
|
||||
grep -v 'api-ms-win' | tr '[:upper:]' '[:lower:]' |
|
||||
tr '[:upper:]' '[:lower:]' |
|
||||
sed "s/\(.*\)/$target(\1)/"
|
||||
dll_found=true
|
||||
fi
|
||||
|
|
|
|||
1
mingw32-hostlib.conf
Normal file
1
mingw32-hostlib.conf
Normal file
|
|
@ -0,0 +1 @@
|
|||
/usr/i686-w64-mingw32/lib/
|
||||
1
mingw64-hostlib.conf
Normal file
1
mingw64-hostlib.conf
Normal file
|
|
@ -0,0 +1 @@
|
|||
/usr/x86_64-w64-mingw32/lib/
|
||||
6
pkgconf-personality-ucrt64
Normal file
6
pkgconf-personality-ucrt64
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# MinGW UCRT 64-bit x86 Windows target
|
||||
Triplet: x86_64-w64-mingw32ucrt
|
||||
SysrootDir: /usr/x86_64-w64-mingw32ucrt/sys-root/mingw
|
||||
DefaultSearchPaths: /usr/x86_64-w64-mingw32ucrt/sys-root/mingw/lib/pkgconfig:/usr/x86_64-w64-mingw32ucrt/sys-root/mingw/share/pkgconfig
|
||||
SystemIncludePaths: /usr/x86_64-w64-mingw32ucrt/sys-root/mingw/include
|
||||
SystemLibraryPaths: /usr/x86_64-w64-mingw32ucrt/sys-root/mingw/lib
|
||||
|
|
@ -1,330 +0,0 @@
|
|||
aclui.dll
|
||||
activeds.dll
|
||||
adsldpc.dll
|
||||
advapi32.dll
|
||||
apcups.dll
|
||||
authz.dll
|
||||
avicap32.dll
|
||||
avifil32.dll
|
||||
avrt.dll
|
||||
bcrypt.dll
|
||||
bootvid.dll
|
||||
browcli.dll
|
||||
bthprops.cpl
|
||||
cabinet.dll
|
||||
cap.dll
|
||||
cfgmgr32.dll
|
||||
classpnp.sys
|
||||
clfsw32.dll
|
||||
clusapi.dll
|
||||
cmutil.dll
|
||||
comctl32.dll
|
||||
comdlg32.dll
|
||||
connect.dll
|
||||
credui.dll
|
||||
crtdll.dll
|
||||
crypt32.dll
|
||||
cryptnet.dll
|
||||
cryptsp.dll
|
||||
cryptxml.dll
|
||||
cscapi.dll
|
||||
ctl3d32.dll
|
||||
d2d1.dll
|
||||
d3d11.dll
|
||||
d3d8.dll
|
||||
d3d9.dll
|
||||
d3dcompiler_37.dll
|
||||
d3dcompiler_38.dll
|
||||
d3dcompiler_39.dll
|
||||
d3dcompiler_40.dll
|
||||
d3dcompiler_41.dll
|
||||
d3dcompiler_42.dll
|
||||
d3dcompiler_43.dll
|
||||
d3dcompiler_46.dll
|
||||
d3dcompiler_47.dll
|
||||
d3dcompiler.dll
|
||||
d3dcsx_46.dll
|
||||
d3dcsxd_43.dll
|
||||
d3dim.dll
|
||||
d3drm.dll
|
||||
d3dx10_33.dll
|
||||
d3dx10_34.dll
|
||||
d3dx10_35.dll
|
||||
d3dx10_36.dll
|
||||
d3dx10_37.dll
|
||||
d3dx10_38.dll
|
||||
d3dx10_39.dll
|
||||
d3dx10_40.dll
|
||||
d3dx10_41.dll
|
||||
d3dx10_42.dll
|
||||
d3dx10_43.dll
|
||||
d3dx11_42.dll
|
||||
d3dx11_43.dll
|
||||
d3dx8d.dll
|
||||
d3dx9_24.dll
|
||||
d3dx9_25.dll
|
||||
d3dx9_26.dll
|
||||
d3dx9_27.dll
|
||||
d3dx9_28.dll
|
||||
d3dx9_29.dll
|
||||
d3dx9_30.dll
|
||||
d3dx9_31.dll
|
||||
d3dx9_32.dll
|
||||
d3dx9_33.dll
|
||||
d3dx9_34.dll
|
||||
d3dx9_35.dll
|
||||
d3dx9_36.dll
|
||||
d3dx9_37.dll
|
||||
d3dx9_38.dll
|
||||
d3dx9_39.dll
|
||||
d3dx9_40.dll
|
||||
d3dx9_41.dll
|
||||
d3dx9_42.dll
|
||||
d3dx9_43.dll
|
||||
d3dx9d.dll
|
||||
d3dxof.dll
|
||||
davclnt.dll
|
||||
davhlpr.dll
|
||||
dbgeng.dll
|
||||
dbghelp.dll
|
||||
ddraw.dll
|
||||
devmgr.dll
|
||||
devobj.dll
|
||||
devrtl.dll
|
||||
dfscli.dll
|
||||
dhcpcsvc6.dll
|
||||
dhcpcsvc.dll
|
||||
dhcpsapi.dll
|
||||
dinput8.dll
|
||||
dinput.dll
|
||||
dlcapi.dll
|
||||
dnsapi.dll
|
||||
dplayx.dll
|
||||
dpnaddr.dll
|
||||
dpnet.dll
|
||||
dpnlobby.def
|
||||
dpvoice.dll
|
||||
dsetup.dll
|
||||
dsound.dll
|
||||
dsrole.dll
|
||||
dssec.dll
|
||||
dwmapi.dll
|
||||
dwrite.dll
|
||||
dxapi.sys
|
||||
dxgi.dll
|
||||
dxva2.dll
|
||||
eappcfg.dll
|
||||
eapphost.dll
|
||||
eappprxy.dll
|
||||
elscore.dll
|
||||
esent.dll
|
||||
evr.dll
|
||||
faultrep.dll
|
||||
fwpuclnt.dll
|
||||
gdi32.dll
|
||||
gdiplus.dll
|
||||
genericui.dll
|
||||
glaux.dll
|
||||
glu32.dll
|
||||
glut32.dll
|
||||
glut.dll
|
||||
gpapi.dll
|
||||
gpedit.dll
|
||||
gpscript.dll
|
||||
gptext.dll
|
||||
hal.dll
|
||||
hidclass.sys
|
||||
hid.dll
|
||||
hidparse.sys
|
||||
httpapi.dll
|
||||
icmui.dll
|
||||
igmpagnt.dll
|
||||
imagehlp.dll
|
||||
imm32.dll
|
||||
iphlpapi.dll
|
||||
iscsidsc.dll
|
||||
kernel32.dll
|
||||
ksproxy.ax
|
||||
ks.sys
|
||||
ksuser.dll
|
||||
ktmw32.dll
|
||||
logoncli.dll
|
||||
lz32.dll
|
||||
mapi32.dll
|
||||
mcd.sys
|
||||
mfcuia32.dll
|
||||
mf.dll
|
||||
mfplat.dll
|
||||
mgmtapi.dll
|
||||
mprapi.dll
|
||||
mpr.dll
|
||||
mqrt.dll
|
||||
msacm32.dll
|
||||
mscms.dll
|
||||
msctf.dll
|
||||
msdmo.dll
|
||||
msdrm.dll
|
||||
mshtml.dll
|
||||
mshtmled.dll
|
||||
msi.dll
|
||||
msimg32.dll
|
||||
mstask.dll
|
||||
msvcp60.dll
|
||||
msvcr100.dll
|
||||
msvcr110.dll
|
||||
msvcr120d.dll
|
||||
msvcr120.dll
|
||||
msvcr80.dll
|
||||
msvcr90d.dll
|
||||
msvcr90.dll
|
||||
msvcrt.dll
|
||||
msvfw32.dll
|
||||
mswsock.dll
|
||||
ncrypt.dll
|
||||
nddeapi.dll
|
||||
ndfapi.dll
|
||||
ndis.sys
|
||||
netapi32.dll
|
||||
netjoin.dll
|
||||
netutils.dll
|
||||
newdev.dll
|
||||
normaliz.dll
|
||||
ntdll.dll
|
||||
ntdsapi.dll
|
||||
ntmsapi.dll
|
||||
ntoskrnl.exe
|
||||
odbc32.dll
|
||||
odbccp32.dll
|
||||
ole32.dll
|
||||
oleacc.dll
|
||||
oleaut32.dll
|
||||
olecli32.dll
|
||||
oledlg.dll
|
||||
olepro32.dll
|
||||
olesvr32.dll
|
||||
olethk32.dll
|
||||
opengl32.dll
|
||||
p2pcollab.dll
|
||||
p2p.dll
|
||||
p2pgraph.dll
|
||||
pcwum.dll
|
||||
pdh.dll
|
||||
pdhui.dll
|
||||
penwin32.dll
|
||||
pkpd32.dll
|
||||
polprocl.dll
|
||||
powrprof.dll
|
||||
psapi.dll
|
||||
quartz.dll
|
||||
qutil.dll
|
||||
qwave.dll
|
||||
rapi.dll
|
||||
rasapi32.dll
|
||||
rasdlg.dll
|
||||
resutils.dll
|
||||
rpcdce4.dll
|
||||
rpcdiag.dll
|
||||
rpchttp.dll
|
||||
rpcns4.dll
|
||||
rpcrt4.dll
|
||||
rstrtmgr.dll
|
||||
rtm.dll
|
||||
rtutils.dll
|
||||
samcli.dll
|
||||
schedcli.dll
|
||||
scsiport.sys
|
||||
secur32.dll
|
||||
setupapi.dll
|
||||
shcore.dll
|
||||
shell32.dll
|
||||
shfolder.dll
|
||||
shlwapi.dll
|
||||
slc.dll
|
||||
slcext.dll
|
||||
slwga.dll
|
||||
snmpapi.dll
|
||||
spoolss.dll
|
||||
srvcli.dll
|
||||
sspicli.dll
|
||||
svrapi.dll
|
||||
sxs.dll
|
||||
t2embed.dll
|
||||
tapi32.dll
|
||||
tbs.dll
|
||||
tdh.dll
|
||||
tdi.sys
|
||||
thirdpartyeapdispatcher.dll
|
||||
txfw32.dll
|
||||
url.dll
|
||||
urlmon.dll
|
||||
usbcamd2.sys
|
||||
usbcamd.sys
|
||||
usbd.sys
|
||||
usbport.sys
|
||||
user32.dll
|
||||
userenv.dll
|
||||
usp10.dll
|
||||
uxtheme.dll
|
||||
vdmdbg.dll
|
||||
version.dll
|
||||
videoprt.sys
|
||||
virtdisk.dll
|
||||
vssapi.dll
|
||||
vss_ps.dll
|
||||
vsstrace.dll
|
||||
wdsclientapi.dll
|
||||
wdsclient.dll
|
||||
wdscore.dll
|
||||
wdscsl.dll
|
||||
wdsimage.dll
|
||||
wdstptc.dll
|
||||
wdsupgcompl.dll
|
||||
wdsutil.dll
|
||||
wecapi.dll
|
||||
wer.dll
|
||||
wevtapi.dll
|
||||
wevtfwd.dll
|
||||
wiadss.dll
|
||||
win32k.sys
|
||||
win32spl.dll
|
||||
winhttp.dll
|
||||
wininet.dll
|
||||
winmm.dll
|
||||
winscard.dll
|
||||
winspool.drv
|
||||
winstrm.dll
|
||||
wintrust.dll
|
||||
winusb.dll
|
||||
wkscli.dll
|
||||
wlanapi.dll
|
||||
wlanui.dll
|
||||
wlanutil.dll
|
||||
wldap32.dll
|
||||
wmilib.sys
|
||||
wow32.dll
|
||||
ws2_32.dll
|
||||
wsdapi.dll
|
||||
wsnmp32.dll
|
||||
wsock32.dll
|
||||
wst.dll
|
||||
wtsapi32.dll
|
||||
x3daudio1_2.dll
|
||||
x3daudio1_3.dll
|
||||
x3daudio1_4.dll
|
||||
x3daudio1_5.dll
|
||||
x3daudio1_6.dll
|
||||
x3daudio1_7.dll
|
||||
x3daudiod1_7.dll
|
||||
xapofx1_0.dll
|
||||
xapofx1_1.dll
|
||||
xapofx1_2.dll
|
||||
xapofx1_3.dll
|
||||
xapofx1_4.dll
|
||||
xapofx1_5.dll
|
||||
xapofxd1_5.dll
|
||||
xaudio2_8.dll
|
||||
xinput1_1.dll
|
||||
xinput1_2.dll
|
||||
xinput1_3.dll
|
||||
xinput1_4.dll
|
||||
xinput9_1_0.dll
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -17,9 +17,10 @@ SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32/sys-root/mingw)
|
|||
|
||||
# search for programs in the build host directories
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
# for libraries and headers in the target directories
|
||||
# for libraries, headers and packages in the target directories
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
||||
|
||||
# Make sure Qt can be detected by CMake
|
||||
SET(QT_BINARY_DIR /usr/i686-w64-mingw32/bin /usr/bin)
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
c = 'i686-w64-mingw32-gcc'
|
||||
cpp = 'i686-w64-mingw32-g++'
|
||||
fortran = 'i686-w64-mingw32-gfortran'
|
||||
rust = ['rustc', '--target', 'i686-pc-windows-msvc', '-C', 'linker=/usr/bin/i686-w64-mingw32-gcc']
|
||||
rust = ['rustc', '--target', 'i686-pc-windows-gnu']
|
||||
ar = '/usr/bin/i686-w64-mingw32-ar'
|
||||
pkgconfig = '/usr/bin/i686-w64-mingw32-pkg-config'
|
||||
pkg-config = '/usr/bin/i686-w64-mingw32-pkg-config'
|
||||
ranlib = '/usr/bin/x86_64-w64-mingw32-ranlib'
|
||||
strip = '/usr/bin/i686-w64-mingw32-strip'
|
||||
windres = '/usr/bin/i686-w64-mingw32-windres'
|
||||
|
|
|
|||
|
|
@ -17,9 +17,10 @@ SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32/sys-root/mingw)
|
|||
|
||||
# search for programs in the build host directories
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
# for libraries and headers in the target directories
|
||||
# for libraries, headers and packages in the target directories
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
|
||||
|
||||
# Make sure Qt can be detected by CMake
|
||||
SET(QT_BINARY_DIR /usr/x86_64-w64-mingw32/bin /usr/bin)
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
c = 'x86_64-w64-mingw32-gcc'
|
||||
cpp = 'x86_64-w64-mingw32-g++'
|
||||
fortran = 'x86_64-w64-mingw32-gfortran'
|
||||
rust = ['rustc', '--target', 'x86_64-pc-windows-msvc', '-C', 'linker=/usr/bin/x86_64-w64-mingw32-gcc']
|
||||
rust = ['rustc', '--target', 'x86_64-pc-windows-gnu']
|
||||
ar = '/usr/bin/x86_64-w64-mingw32-ar'
|
||||
pkgconfig = '/usr/bin/x86_64-w64-mingw32-pkg-config'
|
||||
pkg-config = '/usr/bin/x86_64-w64-mingw32-pkg-config'
|
||||
ranlib = '/usr/bin/x86_64-w64-mingw32-ranlib'
|
||||
strip = '/usr/bin/x86_64-w64-mingw32-strip'
|
||||
windres = '/usr/bin/x86_64-w64-mingw32-windres'
|
||||
|
|
|
|||
37
toolchain-ucrt64.cmake
Normal file
37
toolchain-ucrt64.cmake
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
SET(CMAKE_SYSTEM_NAME Windows)
|
||||
SET(CMAKE_SYSTEM_PROCESSOR x86_64)
|
||||
|
||||
# specify the cross compiler
|
||||
IF(NOT DEFINED ENV{CC})
|
||||
SET(CMAKE_C_COMPILER /usr/bin/x86_64-w64-mingw32ucrt-gcc)
|
||||
ENDIF()
|
||||
IF(NOT DEFINED ENV{CXX})
|
||||
SET(CMAKE_CXX_COMPILER /usr/bin/x86_64-w64-mingw32ucrt-g++)
|
||||
ENDIF()
|
||||
IF(NOT DEFINED ENV{FC})
|
||||
SET(CMAKE_Fortran_COMPILER /usr/bin/x86_64-w64-mingw32ucrt-gfortran)
|
||||
ENDIF()
|
||||
|
||||
# where is the target environment
|
||||
SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32ucrt/sys-root/mingw)
|
||||
|
||||
# search for programs in the build host directories
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
# for libraries and headers in the target directories
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
|
||||
# Make sure Qt can be detected by CMake
|
||||
SET(QT_BINARY_DIR /usr/x86_64-w64-mingw32ucrt/bin /usr/bin)
|
||||
|
||||
# set the resource compiler (RHBZ #652435)
|
||||
IF(NOT $ENV{RC})
|
||||
SET(CMAKE_RC_COMPILER /usr/bin/x86_64-w64-mingw32ucrt-windres)
|
||||
ENDIF()
|
||||
|
||||
# These are needed for compiling lapack (RHBZ #753906)
|
||||
SET(CMAKE_AR:FILEPATH /usr/bin/x86_64-w64-mingw32ucrt-ar)
|
||||
SET(CMAKE_RANLIB:FILEPATH /usr/bin/x86_64-w64-mingw32ucrt-ranlib)
|
||||
|
||||
# Workaround failure to detect boost (see #2037724)
|
||||
SET(Boost_ARCHITECTURE "-x64")
|
||||
24
toolchain-ucrt64.meson
Normal file
24
toolchain-ucrt64.meson
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
[binaries]
|
||||
c = 'x86_64-w64-mingw32ucrt-gcc'
|
||||
cpp = 'x86_64-w64-mingw32ucrt-g++'
|
||||
fortran = 'x86_64-w64-mingw32ucrt-gfortran'
|
||||
rust = ['rustc', '--target', 'x86_64-pc-windows-gnu']
|
||||
# XXX: there is no mingw/rustc target for UCRT yet, but this should do
|
||||
rust_ld = 'x86_64-w64-mingw32ucrt-gcc'
|
||||
ar = '/usr/bin/x86_64-w64-mingw32ucrt-ar'
|
||||
pkg-config = '/usr/bin/x86_64-w64-mingw32ucrt-pkg-config'
|
||||
ranlib = '/usr/bin/x86_64-w64-mingw32ucrt-ranlib'
|
||||
strip = '/usr/bin/x86_64-w64-mingw32ucrt-strip'
|
||||
windres = '/usr/bin/x86_64-w64-mingw32ucrt-windres'
|
||||
dlltool = '/usr/bin/x86_64-w64-mingw32ucrt-dlltool'
|
||||
libgcrypt-config = '/usr/x86_64-w64-mingw32ucrt/sys-root/mingw/bin/libgcrypt-config'
|
||||
|
||||
[properties]
|
||||
root = '/usr/x86_64-w64-mingw32ucrt/sys-root/mingw'
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'windows'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
3
ucrt64.attr
Normal file
3
ucrt64.attr
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
%__ucrt64_provides %{_rpmconfigdir}/mingw.prov ucrt64
|
||||
%__ucrt64_requires %{_rpmconfigdir}/mingw.req ucrt64
|
||||
%__ucrt64_path ^%{ucrt64_prefix}/.*\.([Dd][Ll][Ll]|[Ee][Xx][Ee]|[Pp][Yy][Dd]?|[Pp][Cc])$
|
||||
3
ucrt64.sh
Normal file
3
ucrt64.sh
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# Environment variables for cross compilers.
|
||||
|
||||
alias ucrt64-env='eval `rpm --eval %{ucrt64_env}`'
|
||||
Loading…
Add table
Add a link
Reference in a new issue