summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--cmake/common.cmake3
-rw-r--r--rpm/rpm-config.spec.in19
3 files changed, 17 insertions, 6 deletions
diff --git a/.gitignore b/.gitignore
index 50cac59..3b2133d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@ Makefile
*.so
nbproject
.vscode
+*.tar.gz
diff --git a/cmake/common.cmake b/cmake/common.cmake
index b29a83f..f3d6d48 100644
--- a/cmake/common.cmake
+++ b/cmake/common.cmake
@@ -228,7 +228,8 @@ macro(rpm_package_build)
add_custom_command(OUTPUT ${PROJECT_NAME}.spec
DEPENDS ${PROJECT_TARGETS}
- COMMAND rpmbuild -ba ${PROJECT_PKG_BUILD_DIR}/${PROJECT_NAME}.spec
+ COMMAND git --git-dir=${CMAKE_CURRENT_SOURCE_DIR}/.git archive --format=tar.gz --prefix=${PROJECT_NAME}-${PROJECT_VERSION}/ HEAD -o ${PROJECT_PKG_BUILD_DIR}/${PROJECT_NAME}_${PROJECT_VERSION}.orig.tar.gz
+ COMMAND rpmbuild --define=\"%_sourcedir ${PROJECT_PKG_BUILD_DIR}\" -ba ${PROJECT_PKG_BUILD_DIR}/${PROJECT_NAME}.spec
)
add_custom_target(rpm DEPENDS ${PROJECT_NAME}.spec)
diff --git a/rpm/rpm-config.spec.in b/rpm/rpm-config.spec.in
index 66346fb..31a2a0a 100644
--- a/rpm/rpm-config.spec.in
+++ b/rpm/rpm-config.spec.in
@@ -23,21 +23,30 @@ Release: 1
License: @PROJECT_LICENCE@
Summary: @PROJECT_DESCRIPTION@
Url: @PROJECT_URL@
+Source0: %{name}_%{version}.orig.tar.gz
-Provides: @PROJECT_NAME@
Prefix: /opt/@PROJECT_NAME@
-BuildRequires: pkg-config @RPM_PKG_DEPS@
+BuildRequires: cmake
+BuildRequires: gcc gcc-c++
+BuildRequires: @RPM_PKG_DEPS@
-BuildRoot:@CMAKE_CURRENT_BINARY_DIR@
+BuildRoot:%{_tmppath}/%{name}-%{version}-build
%description
@PROJECT_DESCRIPTION@
%prep
+%setup -q
%build
-(mkdir -p build; cd build; cmake ..; make)
+%cmake -DBINDINGS_INSTALL_PREFIX:PATH=%{_libdir}
+%__make %{?_smp_mflags}
%install
-(cd build; make populate DESTDIR=%{buildroot})
+[ -d build ] && cd build
+%make_install
+%files
+%defattr(-,root,root)
+%dir %{_prefix}/*
+%{_prefix}/*/*