From fd3a9effc076a2420e9b6be392e908857cdce74b Mon Sep 17 00:00:00 2001 From: roho Date: Tue, 24 Apr 2012 16:56:28 -0300 Subject: [PATCH] library build usign cmake --- librarybuilding/cmake/CMakeLists.txt | 5 +++++ librarybuilding/cmake/demo/CMakeLists.txt | 9 +++++++++ librarybuilding/cmake/demo/demo_libabc.c | 7 +++++++ librarybuilding/cmake/include/libabc.h | 3 +++ librarybuilding/cmake/src/CMakeLists.txt | 11 +++++++++++ librarybuilding/cmake/src/a.c | 4 ++++ librarybuilding/cmake/src/b.c | 4 ++++ librarybuilding/cmake/src/c.c | 4 ++++ 8 files changed, 47 insertions(+) create mode 100644 librarybuilding/cmake/CMakeLists.txt create mode 100644 librarybuilding/cmake/demo/CMakeLists.txt create mode 100644 librarybuilding/cmake/demo/demo_libabc.c create mode 100644 librarybuilding/cmake/include/libabc.h create mode 100644 librarybuilding/cmake/src/CMakeLists.txt create mode 100644 librarybuilding/cmake/src/a.c create mode 100644 librarybuilding/cmake/src/b.c create mode 100644 librarybuilding/cmake/src/c.c diff --git a/librarybuilding/cmake/CMakeLists.txt b/librarybuilding/cmake/CMakeLists.txt new file mode 100644 index 0000000..c07b7a8 --- /dev/null +++ b/librarybuilding/cmake/CMakeLists.txt @@ -0,0 +1,5 @@ +project(demo_abc) +cmake_minimum_required(VERSION 2.6) + +add_subdirectory(src) +add_subdirectory(demo) diff --git a/librarybuilding/cmake/demo/CMakeLists.txt b/librarybuilding/cmake/demo/CMakeLists.txt new file mode 100644 index 0000000..bac8469 --- /dev/null +++ b/librarybuilding/cmake/demo/CMakeLists.txt @@ -0,0 +1,9 @@ +project(demo_abc) +cmake_minimum_required(VERSION 2.6) + +include_directories(../include) +#link_directories(../lib) +link_directories(../src) + +add_executable(demo_libabc demo_libabc.c) +target_link_libraries(demo_libabc abc) diff --git a/librarybuilding/cmake/demo/demo_libabc.c b/librarybuilding/cmake/demo/demo_libabc.c new file mode 100644 index 0000000..5603d54 --- /dev/null +++ b/librarybuilding/cmake/demo/demo_libabc.c @@ -0,0 +1,7 @@ +#include "libabc.h" + +int main(){ + a_fun(); + b_fun(); + c_fun(); +} diff --git a/librarybuilding/cmake/include/libabc.h b/librarybuilding/cmake/include/libabc.h new file mode 100644 index 0000000..a130cad --- /dev/null +++ b/librarybuilding/cmake/include/libabc.h @@ -0,0 +1,3 @@ +void a_fun(); +void b_fun(); +void c_fun(); diff --git a/librarybuilding/cmake/src/CMakeLists.txt b/librarybuilding/cmake/src/CMakeLists.txt new file mode 100644 index 0000000..1890f7d --- /dev/null +++ b/librarybuilding/cmake/src/CMakeLists.txt @@ -0,0 +1,11 @@ +project(demo_abc) +cmake_minimum_required(VERSION 2.6) + + +#this part of the project generates the library +add_library(abc a b c) + +# DOES NOT WORK DONT KNOW WHY +#set(LIB_DIR ../lib/) +#set_target_properties(abc PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${LIB_DIR}") + diff --git a/librarybuilding/cmake/src/a.c b/librarybuilding/cmake/src/a.c new file mode 100644 index 0000000..480c34d --- /dev/null +++ b/librarybuilding/cmake/src/a.c @@ -0,0 +1,4 @@ +#include +void a_fun(){ + printf("inside a_fun()\n"); +} diff --git a/librarybuilding/cmake/src/b.c b/librarybuilding/cmake/src/b.c new file mode 100644 index 0000000..910bdf5 --- /dev/null +++ b/librarybuilding/cmake/src/b.c @@ -0,0 +1,4 @@ +#include +void b_fun(){ + printf("inside b_fun()\n"); +} diff --git a/librarybuilding/cmake/src/c.c b/librarybuilding/cmake/src/c.c new file mode 100644 index 0000000..efde073 --- /dev/null +++ b/librarybuilding/cmake/src/c.c @@ -0,0 +1,4 @@ +#include +void c_fun(){ + printf("inside c_fun()\n"); +}