From 8e510cddd4f5c50c19fcd126fcc136662a05bacc Mon Sep 17 00:00:00 2001 From: Suchang Woo Date: Wed, 4 Mar 2015 17:31:49 +0900 Subject: [PATCH] Get version info from .spec file Signed-off-by: Suchang Woo Change-Id: I828a8ddcbd1c1846098229caf9951892c62398ff --- CMakeLists.txt | 11 +++++++++-- packaging/bundle.spec | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bbab736..42cb008 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,13 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(bundle C) -set (VERSION "0.1.31") + +IF("${VERSION}" STREQUAL "") + MESSAGE(FATAL_ERROR "VERSION is not defined") +ENDIF() +STRING(REGEX MATCH "^[0-9]+" VERSION_MAJOR ${VERSION}) +IF("${VERSION_MAJOR}" STREQUAL "") + MESSAGE(FATAL_ERROR "can't get VERSION_MAJOR") +ENDIF() ### Required packages INCLUDE(FindPkgConfig) @@ -21,7 +28,7 @@ add_library(bundle SHARED src/keyval.c src/keyval_array.c ) -set_target_properties(bundle PROPERTIES SOVERSION "0") +set_target_properties(bundle PROPERTIES SOVERSION ${VERSION_MAJOR}) set_target_properties(bundle PROPERTIES VERSION "${VERSION}") message(STATUS "Version from debian/changelog: ${VERSION}, Major version: ${VERSION_MAJOR}") target_link_libraries(bundle ${pkgs_LDFLAGS}) diff --git a/packaging/bundle.spec b/packaging/bundle.spec index a4c8270..a2a8431 100644 --- a/packaging/bundle.spec +++ b/packaging/bundle.spec @@ -27,7 +27,7 @@ Simple string key-val dictionary ADT (devel) cp %{SOURCE1001} . %build -%cmake . +%cmake -DVERSION=%{version} . %__make %{?_smp_mflags} %install -- 2.7.4