Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 102 additions & 0 deletions .distro/airrac.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
Name: airrac
Version: 0.0.0
Release: %autorelease

Summary: C++ Simulated Revenue Accounting (RAC) System Library

License: LGPL-2.1-or-later
URL: https://github.com/airsim/%{name}
Source0: %{url}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz

BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: boost-devel
BuildRequires: soci-devel
BuildRequires: soci-mysql-devel
BuildRequires: soci-sqlite3-devel
BuildRequires: pkgconfig(readline)
BuildRequires: pkgconfig(stdair)

%description
%{name} is a C++ library of airline revenue accounting classes and
functions, mainly targeting simulation purposes.

%{name} makes an extensive use of existing open-source libraries for
increased functionality, speed and accuracy. In particular the
Boost (C++ Standard Extensions: https://www.boost.org) library is used.

Install the %{name} package if you need a library of basic C++ objects
for Airline Revenue Accounting, mainly for simulation purpose.

%package devel
Summary: Header files, libraries and development helper tools for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: pkgconfig

%description devel
This package contains the header files, shared libraries and
development helper tools for %{name}. If you would like to develop
programs using %{name}, you will need to install %{name}-devel.

%package doc
Summary: HTML documentation for the %{name} library
BuildArch: noarch
BuildRequires: tex(latex)
BuildRequires: texlive-epstopdf
BuildRequires: doxygen
BuildRequires: ghostscript

%description doc
This package contains HTML pages, as well as a PDF reference manual,
for %{name}. All that documentation is generated thanks to Doxygen
(https://doxygen.org). The content is the same as what can be browsed
online (https://%{name}.org).


%prep
%autosetup


%build
%cmake
%cmake_build

%install
%cmake_install

# Remove the Doxygen installer
rm -f %{buildroot}%{_docdir}/%{name}/html/installdox

# Remove additional documentation files (those files are already available
# in the project top directory)
rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}/{NEWS,README.md,AUTHORS}

%check
%ctest


%files
%doc AUTHORS ChangeLog NEWS README.md
%license COPYING
%{_bindir}/%{name}
%{_libdir}/lib%{name}.so.*
%{_mandir}/man1/%{name}.1.*

%files devel
%license COPYING
%{_includedir}/%{name}/
%{_bindir}/%{name}-config
%{_libdir}/lib%{name}.so
%{_libdir}/cmake/%{name}/
%{_libdir}/pkgconfig/%{name}.pc
%{_datadir}/aclocal/%{name}.m4
%{_mandir}/man1/%{name}-config.1.*
%{_mandir}/man3/%{name}-library.3.*

%files doc
%doc %{_docdir}/%{name}/
%license COPYING


%changelog
%autochangelog
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,7 @@ configure
airrac/config.h.in*
test/airrac/*_results.xml

# Packit setup
*.tar.gz
*.rpm
*.log
51 changes: 51 additions & 0 deletions .packit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
files_to_sync:
- src: .distro/
dest: ./
delete: true
filters:
- "protect .git*"
- "protect sources"
- "protect changelog"
- "protect gating.yaml"
# Temporary workaround until
# https://github.com/packit/packit/pull/2573
- "- airrac.spec"
- .packit.yaml

specfile_path: .distro/airrac.spec
upstream_package_name: airrac
downstream_package_name: airrac
upstream_tag_template: v{version}

targets:
- fedora-all-x86_64
- fedora-all-aarch64

_:
# Job templates
- &build-in-packit
job: copr_build
- &build-in-airsim
<<: *build-in-packit
owner: "@airsim"

jobs:
# Upstream jobs
- <<: *build-in-airsim
trigger: release
project: release
- <<: *build-in-airsim
trigger: commit
branch: main
project: nightly
- <<: *build-in-packit
trigger: pull_request
# Downstream jobs
- job: propose_downstream
trigger: release
dist_git_branches:
- fedora-rawhide
- job: koji_build
trigger: commit
dist_git_branches:
- fedora-rawhide