Annotation of embedaddon/expat/CMakeLists.txt, revision 1.1
1.1 ! misho 1: # This file is copyrighted under the BSD-license for buildsystem files of KDE
! 2: # copyright 2010, Patrick Spendrin <ps_ml@gmx.de>
! 3:
! 4: project(expat)
! 5:
! 6: cmake_minimum_required(VERSION 2.6)
! 7: set(PACKAGE_BUGREPORT "expat-bugs@libexpat.org")
! 8: set(PACKAGE_NAME "expat")
! 9: set(PACKAGE_VERSION "2.1.0")
! 10: set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
! 11: set(PACKAGE_TARNAME "${PACKAGE_NAME}")
! 12:
! 13: option(BUILD_tools "build the xmlwf tool for expat library" ON)
! 14: option(BUILD_examples "build the examples for expat library" ON)
! 15: option(BUILD_tests "build the tests for expat library" ON)
! 16: option(BUILD_shared "build a shared expat library" ON)
! 17:
! 18: # configuration options
! 19: set(XML_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point")
! 20: option(XML_DTD "Define to make parameter entity parsing functionality available" ON)
! 21: option(XML_NS "Define to make XML Namespaces functionality available" ON)
! 22:
! 23: if(XML_DTD)
! 24: set(XML_DTD 1)
! 25: else(XML_DTD)
! 26: set(XML_DTD 0)
! 27: endif(XML_DTD)
! 28: if(XML_NS)
! 29: set(XML_NS 1)
! 30: else(XML_NS)
! 31: set(XML_NS 0)
! 32: endif(XML_NS)
! 33:
! 34: if(BUILD_tests)
! 35: enable_testing()
! 36: endif(BUILD_tests)
! 37:
! 38: include(ConfigureChecks.cmake)
! 39:
! 40: include_directories(${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/lib)
! 41: if(MSVC)
! 42: add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996)
! 43: endif(MSVC)
! 44:
! 45: set(expat_SRCS
! 46: lib/xmlparse.c
! 47: lib/xmlrole.c
! 48: lib/xmltok.c
! 49: lib/xmltok_impl.c
! 50: lib/xmltok_ns.c
! 51: )
! 52:
! 53: if(WIN32 AND BUILD_shared)
! 54: set(expat_SRCS ${expat_SRCS} lib/libexpat.def)
! 55: endif(WIN32 AND BUILD_shared)
! 56:
! 57: if(BUILD_shared)
! 58: set(_SHARED SHARED)
! 59: else(BUILD_shared)
! 60: set(_SHARED STATIC)
! 61: endif(BUILD_shared)
! 62:
! 63: add_library(expat ${_SHARED} ${expat_SRCS})
! 64:
! 65: install(TARGETS expat RUNTIME DESTINATION bin
! 66: LIBRARY DESTINATION lib
! 67: ARCHIVE DESTINATION lib)
! 68:
! 69: set(prefix ${CMAKE_INSTALL_PREFIX})
! 70: set(exec_prefix "\${prefix}/bin")
! 71: set(libdir "\${prefix}/lib")
! 72: set(includedir "\${prefix}/include")
! 73: configure_file(expat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/expat.pc)
! 74:
! 75: install(FILES lib/expat.h lib/expat_external.h DESTINATION include)
! 76: install(FILES ${CMAKE_CURRENT_BINARY_DIR}/expat.pc DESTINATION lib/pkgconfig)
! 77:
! 78:
! 79:
! 80: if(BUILD_tools AND NOT WINCE)
! 81: set(xmlwf_SRCS
! 82: xmlwf/xmlwf.c
! 83: xmlwf/xmlfile.c
! 84: xmlwf/codepage.c
! 85: xmlwf/readfilemap.c
! 86: )
! 87:
! 88: add_executable(xmlwf ${xmlwf_SRCS})
! 89: target_link_libraries(xmlwf expat)
! 90: install(TARGETS xmlwf DESTINATION bin)
! 91: install(FILES doc/xmlwf.1 DESTINATION share/man/man1)
! 92: endif(BUILD_tools AND NOT WINCE)
! 93:
! 94: if(BUILD_examples)
! 95: add_executable(elements examples/elements.c)
! 96: target_link_libraries(elements expat)
! 97:
! 98: add_executable(outline examples/outline.c)
! 99: target_link_libraries(outline expat)
! 100: endif(BUILD_examples)
! 101:
! 102: if(BUILD_tests)
! 103: ## these are unittests that can be run on any platform
! 104: add_executable(runtests tests/runtests.c tests/chardata.c tests/minicheck.c)
! 105: target_link_libraries(runtests expat)
! 106: add_test(runtests runtests)
! 107:
! 108: add_executable(runtestspp tests/runtestspp.cpp tests/chardata.c tests/minicheck.c)
! 109: target_link_libraries(runtestspp expat)
! 110: add_test(runtestspp runtestspp)
! 111: endif(BUILD_tests)
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>