Commit 0e6c2aae authored by Federico Vaga's avatar Federico Vaga

dist: add target to generate RPM for tools

Signed-off-by: Federico Vaga's avatarFederico Vaga <federico.vaga@cern.ch>
parent d8be9807
TOP_DIR ?= ..
TRTL ?= $(TOP_DIR)
TRTL_SW := $(TRTL)/software
DRIVER_NAME := mockturtle
VERSION := $(shell git describe --abbrev=0)
DIR_NAME := $(DRIVER_NAME)-$(VERSION)
KEEP_TEMP ?= n
BUILD ?= $(abspath build)
BUILD_DKMS := $(BUILD)/dkms
BUILD_TOOLS := $(BUILD)/tools
BUILD_DKMSSOURCE := $(BUILD_DKMS)/source
BUILD_DKMSTREE := $(BUILD_DKMS)/tree
......@@ -14,14 +17,23 @@ SRC += $(TOP_DIR)/Makefile
DKMS_OPT := --dkmstree $(BUILD_DKMSTREE) -m $(DRIVER_NAME)/$(VERSION)
all: kernel
all: kernel tools
kernel: dkms-tar dkms-rpm
tools: tools-rpm
clean:
@rm -rf $(BUILD)
wbgen2-headers:
$(MAKE) -C ../software/include/hw/
dkms-tree:
build-dir:
@mkdir -p $(BUILD)
dkms-tree: build-dir
@mkdir -p $(BUILD_DKMSSOURCE)
@mkdir -p $(BUILD_DKMSTREE)
......@@ -50,7 +62,18 @@ dkms-tar: dkms-add
dkms-rpm: dkms-add
@dkms mkrpm $(DKMS_OPT) --source-only
clean:
@rm -rf $(BUILD)
# Build Binary RPM package for tools
tools-dir: build-dir
@mkdir -p $(BUILD_TOOLS)/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
tools-spec: mockturtle-tools.spec tools-dir
@cp $< $(BUILD_TOOLS)/SPECS
tools-tar: tools-spec
spectool -g -C $(BUILD_TOOLS)/SOURCES --define "gittag $(VERSION)" $(BUILD_TOOLS)/SPECS/mockturtle-tools.spec
tools-rpm: tools-tar
rpmbuild -vv --define "%_topdir $(BUILD_TOOLS)" --define "arch $(shell uname -p)" --define "gittag $(VERSION)" -ba $(BUILD_TOOLS)/SPECS/mockturtle-tools.spec
.PHONY: dkmstree dkms-add kernel-dkms-tar
.PHONY: dkmstree dkms-add kernel-dkms-tar tools-dir tools-spec tools-tar tools-rpm
%{?!gittag: %{error: You did not specify a version}}
%{?!arch: %{error: You did not specify an architecture}}
%global project_name mock-turtle
Summary: Tools for %{project_name}
Name: mockturtle-tools
Version: %{gittag}
License: GPL-3.0-or-later
Release: 1%{?dist}
Group: Applications/System
URL: https://ohwr.org/project/%{name}
BuildArch: %{arch}
Requires: mockturtle-driver
Source0: https://ohwr.org/project/%{project_name}/-/archive/%{gittag}/%{project_name}-%{gittag}.tar.bz2
%description
This package contains a set of tools useful to manage a Mock Turtle
instance
%prep
%autosetup -n %{project_name}-%{gittag}
%build
make -C software/include/hw
make -C software/lib EXTRACFLAGS="$RPM_OPT_FLAGS"
make -C software/tools EXTRACFLAGS="$RPM_OPT_FLAGS"
%install
make -C software/tools DESTDIR=%{buildroot}/usr/ install
%files
%license LICENSES/GPL-3.0-or-later.txt
%{_bindir}/lsmockturtle
%{_bindir}/mockturtle-buffer
%{_bindir}/mockturtle-count
%{_bindir}/mockturtle-cpu-restart
%{_bindir}/mockturtle-gdbserver
%{_bindir}/mockturtle-loader
%{_bindir}/mockturtle-messages
%{_bindir}/mockturtle-ping
%{_bindir}/mockturtle-smem
%{_bindir}/mockturtle-variable
%changelog
# Nothing for the time being
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment