Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
P
Platform-independent core collection
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
18
Issues
18
List
Board
Labels
Milestones
Merge Requests
5
Merge Requests
5
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Platform-independent core collection
Commits
e0048dd6
Commit
e0048dd6
authored
Oct 22, 2019
by
Federico Vaga
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[dist] create RPMS for drivers
Signed-off-by:
Federico Vaga
<
federico.vaga@cern.ch
>
parent
6b75286f
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
134 additions
and
0 deletions
+134
-0
.gitlab-ci.yml
.gitlab-ci.yml
+22
-0
Makefile
distribution/Makefile
+66
-0
general-cores.spec
distribution/general-cores.spec
+46
-0
No files found.
.gitlab-ci.yml
View file @
e0048dd6
...
...
@@ -30,3 +30,25 @@ build:
-
yum install -y kernel-devel git
-
export LINUX=/usr/src/kernels/*/
-
make -C software
build_srpm
:
stage
:
srpm
script
:
-
yum-builddep -y ${DIST_PATH}/*.spec
-
export LINUX=/usr/src/kernels/*/
-
make -C distribution srpm
artifacts
:
paths
:
-
distribution/build/SRPMS/${CI_PROJECT_NAME}*src.rpm
expire_in
:
1 day
.koji_deps_template
:
&koji_deps
before_script
:
-
yum install -y koji krb5-workstation rpm-build
-
echo ${OHWR_PASSWORD} | kinit ${OHWR_USER}
kscratch
:
<<
:
*koji_deps
stage
:
kscratch
script
:
-
koji --config=.koji build --wait --scratch ${KOJI_TARGET} distribution/build/SRPMS/${CI_PROJECT_NAME}*src.rpm
distribution/Makefile
0 → 100644
View file @
e0048dd6
# SPDX-License-Identifier: CC0-1.0
#
# SPDX-FileCopyrightText: 2019 CERN
# Project
TOP_DIR
?=
$(
shell
pwd
)
/../
GCORES
?=
$(TOP_DIR)
include
$(GCORES)/common.mk
# Local
NAME
:=
general-cores
DIR_NAME
:=
$(NAME)
-
$(VERSION)
BUILD
?=
$
(
abspath build
)
SOURCES
?=
$
(
abspath sources
)
RPM_SPEC
:=
$(
shell
mktemp
/tmp/
$(DIR_NAME)
-XXXXXX
.spec
)
# Tools
GIT
?=
git
# Targets
sources-tar
:
@
mkdir
-p
$(SOURCES)
cd
$(GCORES)
&&
$(GIT)
archive
--format
=
tar
\
--prefix
=
$(DIR_NAME)
/
\
-o
$(SOURCES)
/
$(DIR_NAME)
.tar
\
HEAD:software
@
tar
-rf
$(SOURCES)
/
$(DIR_NAME)
.tar
\
--transform
"s,^,"
$(DIR_NAME)
"/,"
\
$(GCORES)
/LICENSES
$(GCORES)
/common.mk
$(GCORES)
/CHANGELOG.rst
sources-tar-gz
:
sources-tar
@
gzip
$(SOURCES)
/
$(DIR_NAME)
.tar
sources
:
sources-tar-gz
@
tar
-C
$(SOURCES)
-xf
$(SOURCES)
/
$(DIR_NAME)
.tar.gz
$(DIR_NAME)
/CHANGELOG.rst
@
mv
$(SOURCES)
/
$(DIR_NAME)
/CHANGELOG.rst
$(SOURCES)
/CHANGELOG
@
rmdir
$(SOURCES)
/
$(DIR_NAME)
srpm-changelog
:
sources
$
(
eval
$@
_pattern :
=
^
\[
([
0-9]+
\.
[
0-9]+
\.
[
0-9]+
)
\]\s
-
\s
([
0-9]
{
4
}
-[0-9]
{
2
}
-[0-9]
{
2
})
$
)
$
(
eval
$@
_replace :
=
echo
-e
"
\n
"
\\
*
`
date
--date
=
"
\2
"
"+%a %b %d %Y"
`
"
\1
"
)
@
sed
-r
-i
-e
"/^[.]{2}/d"
-e
"/^
\s
{2}.*
$$
/d"
$(SOURCES)
/CHANGELOG
@
sed
-r
-i
-e
"/Change Log/d"
-e
"/^(=|-|
\s
)*
$$
/d"
$(SOURCES)
/CHANGELOG
@
sed
-r
-i
-e
's,$($@_pattern),$($@_replace),e'
$(SOURCES)
/CHANGELOG
rpm-spec
:
general-cores.spec
# The fmc.spec file is good when we can define variables. With tools like
# koji it is not possible, so we need to create a .spec file without using
# package-specific variables.
@cp
$<
$(RPM_SPEC)
@sed
-i
-e
"s/%{?_build_version}/$(VERSION)/"
$(RPM_SPEC)
srpm
:
sources rpm-spec srpm-changelog
@
mkdir
-p
$(BUILD)
@
rpmbuild
-bs
--define
"_topdir
$(BUILD)
"
\
--define
'_sourcedir
$(SOURCES)
'
\
--define
"_build_version
$(VERSION)
"
\
$(RPM_SPEC)
ifeq
($(KEEP_TEMP),
n)
@rm
-f
$(RPM_SPEC)
endif
clean
:
@
rm
-rf
$(BUILD)
$(SOURCES)
*
.tar.gz
$(RPM_SPEC)
.PHONY
:
sources-tar sources-tar-gz sources srpm-changelog rpm-spec srpm-changelog srpm
distribution/general-cores.spec
0 → 100644
View file @
e0048dd6
# SPDX-License-Identifier: GPL-3.0-or-later
#
# SPDX-FileCopyrightText: 2019 CERN
%define project_name general-cores
Summary: General Cores Drivers
Name: dkms-%{project_name}
Version: %{?_build_version}
License: GPL-2.0
Release: 1%{?dist}
URL: https://www.ohwr.org/projects/general-cores/
BuildRequires: make, gcc, git
Requires: dkms
Source0: %{project_name}-%{version}.tar.gz
Source1: CHANGELOG
%description
This package installs all general-cores drivers
%prep
%autosetup -n %{project_name}-%{version}
%build
%install
make TOP_DIR=`pwd` PREFIX=%{buildroot}/ RPMBUILD="1" dkms_install
%post
dkms add -m %{project_name}-vic -v %{version} --rpm_safe_upgrade
dkms build -m %{project_name}-vic -v %{version} --rpm_safe_upgrade
dkms install -m %{project_name}-vic -v %{version} --rpm_safe_upgrade
%preun
dkms remove -m %{project_name}-vic -v %{version} --rpm_safe_upgrade --all ||:
%files
%license LICENSES/CC0-1.0.txt
%license LICENSES/GPL-2.0-or-later.txt
/usr/src/%{project_name}-%{version}/*
%changelog
%include %{SOURCE1}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment