src/CMakeLists.txt
author Tero Marttila <terom@fixme.fi>
Sun, 08 Mar 2009 02:48:29 +0200
changeset 62 07c14d83c698
parent 61 9f7ecf7bf699
permissions -rw-r--r--
`make doc` support
62
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
     1
# dependancies
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
     2
find_package (LibEvent REQUIRED)
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
     3
find_package (LibPQ REQUIRED)
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
     4
57
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     5
# add our include path
61
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
     6
include_directories (${LibEvent_INCLUDE_DIRS})
57
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     7
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     8
# define our source code modules
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     9
set (LIB_SOURCES "lib/log.c")
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    10
set (EVPQ_SOURCES evpq.c)
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    11
set (EVSQL_SOURCES core.c util.c)
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    12
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    13
# XXX: silly cmake does silly things when you SET with only one arg
58
02e539965ef4 merge new-evsql into new structure
Tero Marttila <terom@fixme.fi>
parents: 57
diff changeset
    14
set (EVSQL_SOURCES lib/log.c evpq.c core.c query.c result.c util.c)
61
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    15
set (EVSQL_LIBRARIES ${LibEvent_LIBRARIES} ${LibPQ_LIBRARIES})
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    16
62
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
    17
# compiler flags
61
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    18
set (CFLAGS "-Wall -Wextra")
57
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    19
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    20
# add our library
60
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    21
add_library (evsql ${EVSQL_SOURCES})
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    22
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    23
# set target attributes
61
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    24
target_link_libraries (evsql ${EVSQL_LIBRARIES})
60
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    25
set_target_properties (evsql PROPERTIES
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    26
    FRAMEWORK       True
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    27
    PUBLIC_HEADER   include/evsql.h
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    28
)
57
527d23bf6441 move to CMake from old crufty Makefile
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    29
60
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    30
# setup install info
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    31
install (TARGETS evsql
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    32
    LIBRARY         DESTINATION lib
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    33
    ARCHIVE         DESTINATION lib/static
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    34
    PUBLIC_HEADER   DESTINATION include
b17d2cf35504 add library install target
Tero Marttila <terom@fixme.fi>
parents: 58
diff changeset
    35
)
61
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    36
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    37
# test stuff
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    38
add_executable (evsql_test EXCLUDE_FROM_ALL lib/log.c lib/signals.c evsql_test.c)
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    39
target_link_libraries (evsql_test evsql)
62
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
    40
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
    41
# global target properties
07c14d83c698 `make doc` support
Tero Marttila <terom@fixme.fi>
parents: 61
diff changeset
    42
set_target_properties (evsql evsql_test PROPERTIES
61
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    43
    COMPILE_FLAGS   ${CFLAGS}
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    44
)
9f7ecf7bf699 wrangle evsql_test to work
Tero Marttila <terom@fixme.fi>
parents: 60
diff changeset
    45