CMakeLists.txt
author Myhailo Danylenko <isbear@ukrpost.net>
Sun, 22 Jul 2012 15:29:30 +0300
changeset 25 21680d75d561
parent 21 8b61328ab7c1
child 26 abd0e8810b78
permissions -rw-r--r--
Use build-time api version
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     1
## Copyright 2009 Myhailo Danylenko
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     2
# This file is part of mcabber module writing howto examples.
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     3
#
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     4
# Examples are free software: you can redistribute it and/or modify
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     5
# it under the terms of the GNU General Public License as published by
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     6
# the Free Software Foundation, either version 2 of the License, or
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     7
# (at your option) any later version.
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     8
#
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
     9
# This program is distributed in the hope that it will be useful,
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    12
# GNU General Public License for more details.
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    13
#
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    14
# You should have received a copy of the GNU General Public License
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    15
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    16
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    17
cmake_minimum_required(VERSION 2.6) 
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    18
project(env C) 
12
14cd74b518ea Use new module struct with apis
Myhailo Danylenko <isbear@ukrpost.net>
parents: 11
diff changeset
    19
set(PROJECT_VERSION "0.0.1")
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    20
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    21
## User settable options
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    22
 
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    23
## Check for build dependencies
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    24
find_package(PkgConfig REQUIRED) 
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    25
pkg_check_modules(GLIB REQUIRED glib-2.0) 
10
ee45895bc62a Use pkg-config to find mcabber headers
Myhailo Danylenko <isbear@ukrpost.net>
parents: 9
diff changeset
    26
pkg_check_modules(MCABBER REQUIRED mcabber)
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    27
link_directories(${GLIB_LIBRARY_DIRS}
10
ee45895bc62a Use pkg-config to find mcabber headers
Myhailo Danylenko <isbear@ukrpost.net>
parents: 9
diff changeset
    28
				 ${MCABBER_LIBRARY_DIRS})
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    29
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    30
## Target definitions
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    31
add_library(env MODULE env.c) 
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    32
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    33
## Compiler setup
12
14cd74b518ea Use new module struct with apis
Myhailo Danylenko <isbear@ukrpost.net>
parents: 11
diff changeset
    34
configure_file(config.h.in config.h)
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    35
include_directories(SYSTEM ${GLIB_INCLUDE_DIRS} 
10
ee45895bc62a Use pkg-config to find mcabber headers
Myhailo Danylenko <isbear@ukrpost.net>
parents: 9
diff changeset
    36
                    ${MCABBER_INCLUDE_DIRS})
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    37
target_link_libraries(env ${GLIB_LIBRARIES} 
10
ee45895bc62a Use pkg-config to find mcabber headers
Myhailo Danylenko <isbear@ukrpost.net>
parents: 9
diff changeset
    38
					  ${MCABBER_LIBRARIES})
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    39
include_directories(${env_SOURCE_DIR} 
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    40
                    ${env_BINARY_DIR})
14
61d94594e8fb Fix compilation warnings
Myhailo Danylenko <isbear@ukrpost.net>
parents: 12
diff changeset
    41
set_target_properties(env PROPERTIES COMPILE_FLAGS "-Wall")
7
6dc767773704 Fix linker library search path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 6
diff changeset
    42
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    43
## Packaging information
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    44
set(CPACK_PACKAGE_NAME libmcabber-env)
12
14cd74b518ea Use new module struct with apis
Myhailo Danylenko <isbear@ukrpost.net>
parents: 11
diff changeset
    45
set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    46
set(CPACK_PACKAGE_VENDOR "IsBear")
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    47
set(CPACK_PACKAGE_CONTACT "Myhailo Danylenko <isbear@ukrpost.net>")
5
da2fdd072650 Change mcabber headers naming scheme
Myhailo Danylenko <isbear@ukrpost.net>
parents: 2
diff changeset
    48
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Debug module to access mcabber environment")
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    49
set(CPACK_RESOURCE_FILE_LICENSE ${env_SOURCE_DIR}/COPYING)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    50
set(CPACK_SOURCE_GENERATOR TBZ2)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    51
set(CPACK_GENERATOR DEB CACHE TEXT "Binary package generator, eg DEB, RPM, TGZ, NSIS...")
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    52
set(CPACK_DEBIAN_PACKAGE_SECTION libs)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    53
find_program(DPKG_EXECUTABLE dpkg)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    54
if(DPKG_EXECUTABLE)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    55
	execute_process(COMMAND ${DPKG_EXECUTABLE} --print-architecture OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    56
else()
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    57
	set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE i386 CACHE TEXT "Architecture of package")
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    58
endif()
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    59
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    60
set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so")
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    61
include(CPack)
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    62
21
8b61328ab7c1 Update versions & add AVV description
Myhailo Danylenko <isbear@ukrpost.net>
parents: 14
diff changeset
    63
configure_file(env.avv.in env.avv)
8b61328ab7c1 Update versions & add AVV description
Myhailo Danylenko <isbear@ukrpost.net>
parents: 14
diff changeset
    64
9
14cb2e74d8ed Fix documentation installation path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 7
diff changeset
    65
## Installation
14cb2e74d8ed Fix documentation installation path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 7
diff changeset
    66
install(TARGETS env DESTINATION lib/mcabber) 
14cb2e74d8ed Fix documentation installation path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 7
diff changeset
    67
install(FILES env.rc COPYING README TODO DESTINATION share/doc/${CPACK_PACKAGE_NAME})
14cb2e74d8ed Fix documentation installation path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 7
diff changeset
    68
install(DIRECTORY help DESTINATION share/mcabber)
21
8b61328ab7c1 Update versions & add AVV description
Myhailo Danylenko <isbear@ukrpost.net>
parents: 14
diff changeset
    69
install(FILES ${PROJECT_BINARY_DIR}/env.avv DESTINATION share/mcabber/avv/modules RENAME env)
9
14cb2e74d8ed Fix documentation installation path
Myhailo Danylenko <isbear@ukrpost.net>
parents: 7
diff changeset
    70
0
53ef7728edcf Initial commit
Myhailo Danylenko <isbear@ukrpost.net>
parents:
diff changeset
    71
## The End ## vim: se ts=4: ##