CMake/MinGW32 toolchain file

Adam Goode adam at spicenitz.org
Thu Jun 4 15:32:20 UTC 2009


On 06/03/2009 01:49 PM, Richard W.M. Jones wrote:
> Adam, would you like to post a suggested patch to the
> mingw32-filesystem package?  Easier to have something concrete to
> discuss.
> 
> Rich.
> 


I have not tested it yet, but something like this:



Index: Toolchain-mingw32.cmake
===================================================================
RCS file: Toolchain-mingw32.cmake
diff -N Toolchain-mingw32.cmake
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ Toolchain-mingw32.cmake	4 Jun 2009 15:30:55 -0000
@@ -0,0 +1,14 @@
+SET(CMAKE_SYSTEM_NAME Windows)
+
+# specify the cross compiler
+SET(CMAKE_C_COMPILER /usr/bin/i686-pc-mingw32-gcc)
+SET(CMAKE_CXX_COMPILER /usr/bin/i686-pc-mingw32-g++)
+
+# where is the target environment
+SET(CMAKE_FIND_ROOT_PATH /usr/i686-pc-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
+SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
+SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
Index: macros.mingw32
===================================================================
RCS file: /cvs/pkgs/rpms/mingw32-filesystem/devel/macros.mingw32,v
retrieving revision 1.3
diff -u -3 -p -r1.3 macros.mingw32
--- macros.mingw32	27 Mar 2009 09:20:25 -0000	1.3
+++ macros.mingw32	4 Jun 2009 15:30:55 -0000
@@ -136,6 +136,20 @@
 	infodir=%{?buildroot:%{buildroot}}%{_mingw32_infodir} \\\
   install
 
+%_mingw32_cmake %{_mingw32_env} ; \
+  %__cmake \\\
+        -DCMAKE_VERBOSE_MAKEFILE=ON \\\
+        -DCMAKE_INSTALL_PREFIX:PATH=%{_mingw32_prefix} \\\
+        -DCMAKE_INSTALL_LIBDIR:PATH=%{_mingw32_libdir} \\\
+        -DINCLUDE_INSTALL_DIR:PATH=%{_mingw32_includedir} \\\
+        -DLIB_INSTALL_DIR:PATH=%{_mingw32_libdir} \\\
+        -DSYSCONF_INSTALL_DIR:PATH=%{_mingw32_sysconfdir} \\\
+        -DSHARE_INSTALL_PREFIX:PATH=%{_mingw32_datadir} \\\
+        %{?_cmake_skip_rpath} \\\
+        -DBUILD_SHARED_LIBS:BOOL=ON \\\
+        -DCMAKE_TOOLCHAIN_FILE=/usr/share/mingw32/Toolchain-mingw32.cmake
+
+
 %_mingw32_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 \
 Win32 (32 bit Windows).
Index: mingw32-filesystem.spec
===================================================================
RCS file: /cvs/pkgs/rpms/mingw32-filesystem/devel/mingw32-filesystem.spec,v
retrieving revision 1.22
diff -u -3 -p -r1.22 mingw32-filesystem.spec
--- mingw32-filesystem.spec	21 Apr 2009 22:25:56 -0000	1.22
+++ mingw32-filesystem.spec	4 Jun 2009 15:30:55 -0000
@@ -19,6 +19,7 @@ Source4:        mingw32-find-requires.sh
 Source5:        mingw32-find-provides.sh
 Source6:        mingw32-scripts.sh
 Source7:        mingw32-rpmlint.config
+Source8:        Toolchain-mingw32.cmake
 
 Requires:       setup
 Requires:       rpm
@@ -137,6 +138,9 @@ mkdir -p $RPM_BUILD_ROOT/usr/lib/rpm
 install -m 0755 mingw32-find-requires.sh $RPM_BUILD_ROOT/usr/lib/rpm
 install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT/usr/lib/rpm
 
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/mingw32
+install -m 644 %{SOURCE7} $RPM_BUILD_ROOT%{_datadir}/mingw32
+
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -154,6 +158,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_bindir}/mingw32-pkg-config
 %{_libexecdir}/mingw32-scripts
 %{_prefix}/i686-pc-mingw32/
+%{_datadir}/mingw32
 /usr/lib/rpm/mingw32-*

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
Url : http://lists.fedoraproject.org/pipermail/mingw/attachments/20090604/427ad214/attachment.bin 


More information about the mingw mailing list