mingw-filesystem/macros.mingw
Erik van Pienbroek 0c1e1f998c Added support for both win32 and win64 targets
- Fixed rpmlint issues
- Fixed permissions of the scripts (775 -> 755)
- Fixed description of the various subpackages
- Make the various macros compliant with the new packaging guidelines:
  https://fedorahosted.org/fpc/ticket/71
- Suppress arch-independent-package-contains-binary-or-object rpmlint
  errors for static libraries
- Improved the mingw_configure, mingw_make, mingw_make_install,
  mingw_cmake and mingw_cmake_kde4 RPM macros so packagers don't need
  to use quotes anymore when using arguments. Thanks to Kalev Lember
  for the initial proof of concept
- Dropped the -mms-bitfields argument from the default CFLAGS as
  it is enabled by default as of gcc 4.7
- Replaced the CMake defines QT_HEADERS_DIR and QT_LIBRARY_DIR
  with QT_BINARY_DIR which is a more proper method to make CMake
  aware of the location of Qt. Thx to Dominik Schmidt for the hint
- Make sure CMake can detect the qmake-qt4 binary in /usr/$target/bin
- Make sure CMake can also detect the (native) Qt tools
  qdbuscpp2xml and qdbusxml2cpp
- Added new RPM macros mingw_cmake_kde4, mingw32_cmake_kde4 and
  mingw64_cmake_kde4
- Added three new environment variables which can be set to
  influence the behaviour of the cmake macros:
  MINGW_CMAKE_ARGS, MINGW32_CMAKE_ARGS and MINGW64_CMAKE_ARGS
- Dropped the mingw32-qmake-qt4 and mingw64-qmake-qt4 wrapper scripts
  as they're now provided by the mingw{32,64}-qt-qmake packages
- Added a new RPM macro: %%{?mingw_package_header}
  Packagers can use this macro instead of the original boilerplate
  code which is needed for all mingw packages
- Made argument passing using the backwards compatibility macro
  %%{_mingw32_cmake} work
- Fixed an issue in the mingw_cmake macro where it could point to
  a non-existant CMakeLists.txt file
- Fixed a bug in the find-requires script which causes all packages to
  depend
  on both the mingw32 and the mingw64 toolchains
- Split out the RPM macros which require both the
  mingw{32,64}-filesystem
  packages in a new file and put it in the mingw-filesystem-base package
- Generate seperate debuginfo packages for mingw32 and mingw64
- Set the minimum version of R: mingw{32,64}-filesystem to 70
- Use the correct FSF-address in some scripts
- Thanks to all the contributors: Erik van Pienbroek, Kalev Lember,
  Levente
  Farkas, Marc-Andre Lureau.
2012-02-27 17:33:08 +02:00

96 lines
4.0 KiB
Plaintext

# RPM macros for the Fedora MinGW Cross Compiler collection
%mingw_build_targets mingw32 mingw64
%mingw_strip mingw-strip
%mingw_objdump mingw-objdump
%mingw_objcopy mingw-objcopy
%mingw_findprovides %{_rpmconfigdir}/mingw-find-provides.sh %{mingw_build_targets}
%mingw_findrequires %{_rpmconfigdir}/mingw-find-requires.sh %{mingw_build_targets}
%mingw_finddebuginfo %{_rpmconfigdir}/mingw-find-debuginfo.sh
%mingw_find_lang %{_rpmconfigdir}/mingw-find-lang.sh %{buildroot}
%mingw_debug_install_post %{mingw_finddebuginfo} %{_builddir}/%{?buildsubdir} %{mingw_build_targets}
%mingw_debug_package \
%{?mingw_build_win32: %{?mingw32_debug_package}} \
%{?mingw_build_win64: %{?mingw64_debug_package}} \
%{nil}
%mingw_package_header \
%global __strip %{mingw_strip} \
%global __objdump %{mingw_objdump} \
%global __debug_install_post %%{mingw_debug_install_post} \
%{nil}
%mingw_configure \
run_mingw_configure() \
{ \
%{?mingw_build_win32: \
mkdir build_win32$MINGW_BUILDDIR_SUFFIX \
pushd build_win32$MINGW_BUILDDIR_SUFFIX \
%{?mingw32_configure} $@ \
popd } \
%{?mingw_build_win64: \
mkdir build_win64$MINGW_BUILDDIR_SUFFIX \
pushd build_win64$MINGW_BUILDDIR_SUFFIX \
%{?mingw64_configure} $@ \
popd } \
} \
run_mingw_configure
%mingw_make \
run_mingw_make() \
{ \
%{?mingw_build_win32: \
make -C build_win32$MINGW_BUILDDIR_SUFFIX $@} \
%{?mingw_build_win64: \
make -C build_win64$MINGW_BUILDDIR_SUFFIX $@} \
} \
run_mingw_make
%mingw_make_install \
run_mingw_make_install() \
{ \
%{?mingw_build_win32: \
make -C build_win32$MINGW_BUILDDIR_SUFFIX install $@} \
%{?mingw_build_win64: \
make -C build_win64$MINGW_BUILDDIR_SUFFIX install $@} \
} \
run_mingw_make_install
%mingw_cmake \
run_mingw_cmake() \
{ \
%{?mingw_build_win32: \
mkdir build_win32$suffix \
pushd build_win32$suffix \
%{?mingw32_cmake $@} \
popd } \
%{?mingw_build_win64: \
mkdir build_win64$suffix \
pushd build_win64$suffix \
%{?mingw64_cmake $@} \
popd } \
} \
run_mingw_cmake
%mingw_cmake_kde4 \
run_mingw_cmake_kde4() \
{ \
%{?mingw_build_win32: \
mkdir build_win32$suffix \
pushd build_win32$suffix \
%{?mingw32_cmake_kde4 $@} \
popd } \
%{?mingw_build_win64: \
mkdir build_win64$suffix \
pushd build_win64$suffix \
%{?mingw64_cmake_kde4 $@} \
popd } \
} \
run_mingw_cmake_kde4