[Cmake-commits] [cmake-commits] king committed CMakeLists.txt NONE 1.1 bar.c NONE 1.1 foo.c NONE 1.1

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Oct 21 13:01:19 EDT 2009


Update of /cvsroot/CMake/CMake/Tests/Architecture
In directory public:/mounts/ram/cvs-serv2492/Tests/Architecture

Added Files:
	CMakeLists.txt bar.c foo.c 
Log Message:
Test OSX_ARCHITECTURES target property

We test the property with a project that fails to link due to an
architecture mismatch between an executable and a static library.

See issue #8725.


--- NEW FILE: CMakeLists.txt ---
cmake_minimum_required(VERSION 2.8)
project(Architecture C)

add_library(foo foo.c)
if(CMAKE_OSX_ARCHITECTURES)
  get_property(archs TARGET foo PROPERTY OSX_ARCHITECTURES)
  if(NOT "${CMAKE_OSX_ARCHITECTURES}" STREQUAL "${archs}")
    message(FATAL_ERROR
      "OSX_ARCHITECTURES property not initialized by CMAKE_OSX_ARCHITECTURES.\n"
      "Expected [${CMAKE_OSX_ARCHITECTURES}], got [${archs}]."
      )
  endif()
endif()
set_property(TARGET foo PROPERTY OSX_ARCHITECTURES i386)
set_property(TARGET foo PROPERTY OSX_ARCHITECTURES_DEBUG ppc)

add_executable(bar bar.c)
target_link_libraries(bar foo)
set_property(TARGET bar PROPERTY OUTPUT_NAME Architecture)
set_property(TARGET bar PROPERTY OSX_ARCHITECTURES ppc)
set_property(TARGET bar PROPERTY OSX_ARCHITECTURES_DEBUG i386)

--- NEW FILE: foo.c ---
int foo(void) { return 0; }

--- NEW FILE: bar.c ---
extern int foo(void);
int main() { return foo(); }



More information about the Cmake-commits mailing list