Correct a little mistake in COMPILE.txt and let the user choose the build flags for rtengine.
This commit is contained in:
@@ -2,6 +2,12 @@ cmake_minimum_required(VERSION 2.6)
|
||||
|
||||
set (CMAKE_BUILD_TYPE Debug CACHE STRING "One of: None Debug Release RelWithDebInfo MinSizeRel.")
|
||||
|
||||
# The following line set special compilation flags for RTEngine, and will be added to CMAKE_CXX_FLAGS
|
||||
# It were moved away from rtengine/CMakefiles.txt, because some users may want to remove -ffast_math :
|
||||
# this flag speeds up the floating-point operations, but with a little bite less precisions. This default value
|
||||
# gives the same result/behaviour as before.
|
||||
set (RTENGINE_CXX_FLAGS "-ffast-math -funroll-loops" CACHE STRING "Special compilation flags for RTEngine")
|
||||
|
||||
if (APPLE)
|
||||
# SET (CMAKE_OSX_ARCHITECTURES "i386;x86_64;" )
|
||||
# SET (CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "i386;x86_64;" )
|
||||
|
18
COMPILE.txt
18
COMPILE.txt
@@ -17,6 +17,9 @@ Windows
|
||||
|
||||
METHOD 1:
|
||||
- MinGW-TDM (http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/tdm-gcc-4.5.1.exe/download)
|
||||
OpenMP seems to be broken in TDM-GCC4.5.1, so when MinGW has been installed, download and install
|
||||
libgomp form tdm-gcc-4.5.0
|
||||
(http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%204.5%20series/Previous/4.5.0-tdm-1%20SJLJ/gcc-4.5.0-tdm-1-openmp.zip/download)
|
||||
- MSYS (http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe)
|
||||
If you have some trouble installing MSYS, see here : http://www.mingw.org/wiki/MSYS
|
||||
- CMake (http://www.cmake.org/cmake/resources/software.html)
|
||||
@@ -32,6 +35,8 @@ Windows
|
||||
- set the GTKMM_BASEPATH user or system environment variable to the installation directory of Gtkmm
|
||||
(the Gtkmm's installer can do it for you)
|
||||
- set the MINGW_BASEPATH user or system environment variable to the installation directory of MinGW32
|
||||
- set the PKG_CONFIG_PATH user or system environment variable to the location of the pkgconfig directories:
|
||||
c:\mingw\lib\pkgconfig;c:\gtkmm\lib\pkgconfig
|
||||
You have to restart the console to take this new variables into account
|
||||
- Copy the "Win32CMakeOptions-sample.txt" file located in the root directory of RT's source tree, to "cmo.txt" (e.g.)
|
||||
You can edit that copy to change the compilation flags to your needs, but the default values should be fine.
|
||||
@@ -45,7 +50,7 @@ Windows
|
||||
|
||||
For your convenience, those libraries has been precompiled and are downloadable at :
|
||||
|
||||
http://www.rawtherapee.com/releases_head/windows/dependancies/
|
||||
http://www.rawtherapee.com/releases_head/windows/dependencies_for_creating_builds/
|
||||
|
||||
If you don't find a suitable package for your toolchain, take the DIY way or ask a developer
|
||||
to build them for you.
|
||||
@@ -87,7 +92,7 @@ Windows
|
||||
1. gtkmm doesn't provide zlib so i've compiled it myself
|
||||
cmake -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/mingw -DCMAKE_BUILD_TYPE:STRING=Release
|
||||
2. gtkmm provide zlib and i want to reuse it (so we're assuming that you didn't compiled zlib like explained here above)
|
||||
cmake -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/mingw -DCMAKE_PREFIX_PATH:PATH=C:/gtkmm2.22 -DCMAKE_BUILD_TYPE:STRING=Release
|
||||
cmake -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/mingw -DCMAKE_PREFIX_PATH:PATH=C:/gtkmm -DCMAKE_BUILD_TYPE:STRING=Release
|
||||
|
||||
Then build and install:
|
||||
make
|
||||
@@ -132,10 +137,7 @@ Windows
|
||||
provided in RT's source tree (downloaded from http://www.rawzor.com/developers/)
|
||||
|
||||
IMPORTANT:
|
||||
1. When all the compilations are done (or even before), don't forget to set the PKG_CONFIG_PATH
|
||||
user or system environment variable to the location of the pkgconfig dir, usually c:\mingw\lib\pkgconfig
|
||||
You have to restart the console to take this new variable into account
|
||||
2. Make sure that the *.pc files of the dependancies, located in the pkgconfig dir, has the first
|
||||
Make sure that the lcms.pc and libiptcdata.pc files located in the pkgconfig dir has the first
|
||||
line like this : prefix=/mingw
|
||||
|
||||
If everything is well installed, you should see the following lines when running the cmake command (see "Building RT" below) :
|
||||
@@ -144,8 +146,8 @@ Windows
|
||||
-- checking for module 'lcms<=1.99'
|
||||
-- found lcms, version 1.19
|
||||
-- Found JPEG: C:/mingw/lib/libjpeg.dll.a
|
||||
-- Found ZLIB: C:/gtkmm2.22/lib/libz.dll.a
|
||||
-- Found PNG: C:/gtkmm2.22/lib/libpng.lib
|
||||
-- Found ZLIB: C:/gtkmm/lib/libz.dll.a
|
||||
-- Found PNG: C:/gtkmm/lib/libpng.lib
|
||||
-- Found TIFF: C:/mingw/lib/libtiff.dll.a
|
||||
|
||||
Building RT:
|
||||
|
@@ -9,7 +9,7 @@ set(DATADIR . CACHE PATH "Datas installation path")
|
||||
set(BINDIR . CACHE PATH "Binaries installation path")
|
||||
set(LIBDIR . CACHE PATH "Libraries installation path")
|
||||
|
||||
set(CMAKE_PREFIX_PATH $ENV{GTKMM_BASEPATH} $ENV{MINGW_BASEPATH} CACHE STRING "Additional search paths")
|
||||
set(CMAKE_PREFIX_PATH $ENV{MINGW_BASEPATH} $ENV{GTKMM_BASEPATH} CACHE STRING "Additional search paths")
|
||||
|
||||
set(BUILD_SHARED OFF CACHE BOOL "Should RT generate shared libraries")
|
||||
set(WITH_RAWZOR ON CACHE BOOL "With Rawzor")
|
||||
@@ -24,6 +24,9 @@ set(CMAKE_CXX_FLAGS_RELEASE "-mwindows -DNDEBUG -O2" CACHE STRING "Compiler opti
|
||||
set(CMAKE_CXX_FLAGS_MINSIZEREL "-mwindows -DNDEBUG -Os" CACHE STRING "Compiler options for C++ source files and MinSizeRel target")
|
||||
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" CACHE STRING "Compiler options for C++ source files and RelWithDebInfo target")
|
||||
|
||||
# Uncomment the next line and set the right value to override the default value
|
||||
#set(RTENGINE_CXX_FLAGS "-funroll-loops" CACHE STRING "Special compilation flags for RTEngine")
|
||||
|
||||
set(CMAKE_C_FLAGS "-mwin32 -mthreads -march=native" CACHE STRING "Compiler options for C source files")
|
||||
set(CMAKE_C_FLAGS_DEBUG "-O0 -g2" CACHE STRING "Compiler options for C source files and Debug target")
|
||||
set(CMAKE_C_FLAGS_RELEASE "-mwindows -DNDEBUG -O2" CACHE STRING "Compiler options for C source files and Release target")
|
||||
|
@@ -23,7 +23,7 @@ IF (BUILD_SHARED_LIBS)
|
||||
install (TARGETS rtengine DESTINATION ${LIBDIR})
|
||||
ENDIF (BUILD_SHARED_LIBS)
|
||||
|
||||
set_target_properties (rtengine PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} -ffast-math -funroll-loops")
|
||||
set_target_properties (rtengine PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} ${RTENGINE_CXX_FLAGS}")
|
||||
|
||||
target_link_libraries (rtengine rtexif ${EXTRA_LIB} ${GOBJECT_LIBRARIES} ${GTHREAD_LIBRARIES}
|
||||
${GLIB2_LIBRARIES} ${GLIBMM_LIBRARIES} ${LCMS_LIBRARIES} ${IPTCDATA_LIBRARIES}
|
||||
|
Reference in New Issue
Block a user