summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore9
-rw-r--r--Makefile4
-rw-r--r--sexp-files-by-license.txt39
-rw-r--r--sexp.spec118
4 files changed, 170 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..01f0400
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,9 @@
+clog
+package-*.xml
+*.tgz
+*.tar.bz2
+*.tar.gz
+*.tar.xz
+*.tar.xz.asc
+*.src.rpm
+*/*rpm
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..91b0fd5
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,4 @@
+SRCDIR := $(shell pwd)
+NAME := $(shell basename $(SRCDIR))
+include ../../common/Makefile
+
diff --git a/sexp-files-by-license.txt b/sexp-files-by-license.txt
new file mode 100644
index 0000000..7b13202
--- /dev/null
+++ b/sexp-files-by-license.txt
@@ -0,0 +1,39 @@
+
+BSD 2-Clause License
+------------
+CMakeLists.txt
+codecov.yml
+default.nix
+cmake/sexp-samples-folder.h.in
+cmake/version.cmake
+src/ext-key-format.cpp
+src/sexp-char-defs.cpp
+src/sexp-error.cpp
+src/sexp-input.cpp
+src/sexp-main.cpp
+src/sexp-object.cpp
+src/sexp-output.cpp
+src/sexp-simple-string.cpp
+.github/workflows/build-and-test-deb.yml
+.github/workflows/build-and-test-msys.yml
+.github/workflows/build-and-test-rh.yml
+.github/workflows/build-and-test.yml
+.github/workflows/coverage.yml
+.github/workflows/coverity.yml
+.github/workflows/nix.yml
+include/sexp/ext-key-format.h
+include/sexp/sexp-error.h
+include/sexp/sexp.h
+tests/include/sexp-tests.h
+tests/scripts/tests.sh
+tests/src/baseline-tests.cpp
+tests/src/compare-files.cpp
+tests/src/exception-tests.cpp
+tests/src/g10-compat-tests.cpp
+tests/src/g23-compat-tests.cpp
+tests/src/g23-exception-tests.cpp
+tests/src/primitives-tests.cpp
+
+MIT License
+------------
+LICENSE.md
diff --git a/sexp.spec b/sexp.spec
new file mode 100644
index 0000000..7ef0590
--- /dev/null
+++ b/sexp.spec
@@ -0,0 +1,118 @@
+# remirepo/fedora spec file for sexp
+#
+# Copyright (c) 2023 Remi Collet
+# License: CC-BY-SA-4.0
+# http://creativecommons.org/licenses/by-sa/4.0/
+#
+# Please, preserve the changelog entries
+#
+
+%bcond_without tests
+%bcond_with licensecheck
+
+%global libname libsexp
+%global soname 0
+
+Name: sexp
+Summary: S-expressions parser and generator tools
+Version: 0.8.4
+Release: 1%{?dist}
+# See exp-files-by-license.txt and upstream LICENSE* files
+# see https://github.com/rnpgp/sexp/issues/33
+License: MIT and BSD-2-Clause
+
+URL: https://github.com/rnpgp/%{name}
+Source0: %{url}/archive/refs/tags/v%{version}.tar.gz
+# Use --with licensecheck to generate
+Source3: %{name}-files-by-license.txt
+
+BuildRequires: cmake >= 3.14
+BuildRequires: gcc
+BuildRequires: gcc-c++
+%if 0%{?rhel} == 8
+BuildRequires: gtest-devel
+%else
+BuildRequires: cmake(GTest)
+%endif
+%if %{with licensecheck}
+BuildRequires: licensecheck
+%endif
+
+Requires: %{libname}%{?_isa} = %{version}-%{release}
+
+
+%description
+S-expressions parser and generator tools.
+
+
+%package -n %{libname}
+Summary: S-expressions parser and generator library
+
+%description -n %{libname}
+%{libname} is a C++ library for working with S-expressions.
+
+This implementation is derived from the reference SEXP C library developed by
+Professors Ronald Rivest and Butler Lampson of MIT LCS (now CSAIL).
+
+
+
+%package -n %{libname}-devel
+Summary: Header files and development libraries for %{libname}
+Requires: %{libname}%{?_isa} = %{version}-%{release}
+
+%description -n %{libname}-devel
+This package contains the header files and development libraries
+for %{libname}.
+
+
+%prep
+%setup -q
+
+%if %{with licensecheck}
+LST=$(mktemp)
+
+licensecheck -r . | sed -e 's:^./::' >$LST
+grep -v UNKNOWN $LST | sed -e 's/.*: //' | sort -u | while read lic
+do
+ echo -e "\n$lic\n------------"
+ grep ": $lic\$" $LST | sed -e "s/: $lic//"
+done | tee %{SOURCE3}
+rm $LST
+%endif
+
+
+%build
+%cmake . \
+ -DDOWNLOAD_GTEST:BOOL=OFF
+
+%cmake_build
+
+
+%install
+%cmake_install
+
+
+%if %{with tests}
+%check
+%ctest
+%endif
+
+
+%files
+%{_bindir}/%{name}
+
+%files -n %{libname}
+%license LICENSE*
+# see https://github.com/rnpgp/sexp/issues/32
+%{_libdir}/%{libname}.a
+
+%files -n %{libname}-devel
+%{_includedir}/%{name}
+%{_libdir}/pkgconfig/%{name}.pc
+
+
+%changelog
+* Thu May 4 2023 Remi Collet <remi@remirepo.net> - 0.8.4-1
+- initial package
+- open https://github.com/rnpgp/sexp/issues/32 build as shared
+- open https://github.com/rnpgp/sexp/issues/33 clarify license