Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Apr 28, 2011, 7:15:14 AM (13 years ago)
Author:
rgrieder
Message:

Merged kicklib2 branch back to trunk (includes former branches ois_update, mac_osx and kicklib).

Notes for updating

Linux:
You don't need an extra package for CEGUILua and Tolua, it's already shipped with CEGUI.
However you do need to make sure that the OgreRenderer is installed too with CEGUI 0.7 (may be a separate package).
Also, Orxonox now recognises if you install the CgProgramManager (a separate package available on newer Ubuntu on Debian systems).

Windows:
Download the new dependency packages versioned 6.0 and use these. If you have problems with that or if you don't like the in game console problem mentioned below, you can download the new 4.3 version of the packages (only available for Visual Studio 2005/2008).

Key new features:

  • *Support for Mac OS X*
  • Visual Studio 2010 support
  • Bullet library update to 2.77
  • OIS library update to 1.3
  • Support for CEGUI 0.7 —> Support for Arch Linux and even SuSE
  • Improved install target
  • Compiles now with GCC 4.6
  • Ogre Cg Shader plugin activated for Linux if available
  • And of course lots of bug fixes

There are also some regressions:

  • No support for CEGUI 0.5, Ogre 1.4 and boost 1.35 - 1.39 any more
  • In game console is not working in main menu for CEGUI 0.7
  • Tolua (just the C lib, not the application) and CEGUILua libraries are no longer in our repository. —> You will need to get these as well when compiling Orxonox
  • And of course lots of new bugs we don't yet know about
File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/trunk/cmake/CompilerConfigGCC.cmake

    r7458 r8351  
    2626INCLUDE(FlagUtilities)
    2727INCLUDE(CompareVersionStrings)
     28INCLUDE(CheckCXXCompilerFlag)
    2829
    2930# Shortcut for CMAKE_COMPILER_IS_GNUCXX and ..._GNUC
     
    3637  OUTPUT_VARIABLE GCC_VERSION
    3738)
    38 
    39 # Complain about incompatibilities
    40 COMPARE_VERSION_STRINGS("${GCC_VERSION}" "4.4.0" _compare_result)
    41 IF(NOT _compare_result LESS 0)
    42   IF(${Boost_VERSION} LESS 103700)
    43     MESSAGE(STATUS "Warning: Boost versions earlier than 1.37 may not compile with GCC 4.4 or later!")
    44   ENDIF()
    45 ENDIF()
    46 
    47 # GCC may not support #pragma GCC system_header correctly when using
    48 # templates. According to Bugzilla, it was fixed March 07 but tests
    49 # have confirmed that GCC 4.0.0 does not pose a problem for our cases.
    50 COMPARE_VERSION_STRINGS("${GCC_VERSION}" "4.0.0" _compare_result)
    51 IF(_compare_result LESS 0)
    52   SET(GCC_NO_SYSTEM_HEADER_SUPPORT TRUE)
    53 ENDIF()
    5439
    5540# GCC only supports PCH in versions 3.4 and above
     
    7257
    7358# CMake doesn't seem to set the PIC flags right on certain 64 bit systems
    74 IF(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86_64")
     59IF(NOT MINGW AND ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86_64")
    7560  ADD_COMPILER_FLAGS("-fPIC" CACHE)
     61ENDIF()
     62
     63# Enable non standard floating point optimisations
     64ADD_COMPILER_FLAGS("-ffast-math" CACHE)
     65
     66# Use SSE if possible
     67# Commented because this might not work for cross compiling
     68#CHECK_CXX_COMPILER_FLAG(-msse _gcc_have_sse)
     69#IF(_gcc_have_sse)
     70#  ADD_COMPILER_FLAGS("-msse" CACHE)
     71#ENDIF()
     72
     73IF(NOT MINGW)
     74  # Have GCC visibility?
     75  CHECK_CXX_COMPILER_FLAG("-fvisibility=hidden" _gcc_have_visibility)
     76  IF(_gcc_have_visibility)
     77    # Note: There is a possible bug with the flag in gcc < 4.2 and Debug versions
     78    COMPARE_VERSION_STRINGS("${GCC_VERSION}" "4.2.0" _compare_result)
     79    IF(NOT CMAKE_BUILD_TYPE STREQUAL "Debug" OR _compare_result GREATER -1)
     80      ADD_COMPILER_FLAGS("-DORXONOX_GCC_VISIBILITY -fvisibility=default -fvisibility-inlines-hidden" CACHE)
     81    ENDIF()
     82  ENDIF(_gcc_have_visibility)
    7683ENDIF()
    7784
    7885# We have some unconformant code, disable an optimisation feature
    7986ADD_COMPILER_FLAGS("-fno-strict-aliasing" CACHE)
    80 
    81 # For GCC older than version 4, do not display sign compare warnings
    82 # because of boost::filesystem (which creates about a hundred per include)
    83 ADD_COMPILER_FLAGS("-Wno-sign-compare" GCC_NO_SYSTEM_HEADER_SUPPORT CACHE)
    8487
    8588# For newer GCC (4.3 and above), don't display hundreds of annoying deprecated
     
    98101ENDIF()
    99102
    100 # General linker flags
    101 SET_LINKER_FLAGS("--no-undefined" CACHE)
     103# Linker flags
     104IF(LINUX)
     105  # Don't allow undefined symbols in a shared library
     106  SET_LINKER_FLAGS("-Wl,--no-undefined" CACHE)
     107ENDIF()
    102108
    103109# Add compiler and linker flags for MinGW
Note: See TracChangeset for help on using the changeset viewer.