Name: clasp Version: 2.7.0 Release: 1%{?dist} Summary: Clasp is a new Common Lisp implementation that seamlessly interoperates with C++ libraries and programs using LLVM for compilation to native code. License: GPL, MPS URL: https://github.com/clasp-developers/%{name} # git clone https://github.com/clasp-developers/clasp.git # mv clasp clasp-2.7.0 # tar -cv clasp-2.7.0 | xz -9 > clasp-2.7.0-git_cloned.tar.xz Source0: %{name}-%{version}-git_cloned.tar.xz Patch0: %{name}-%{version}-ctags.patch BuildRequires: boost-devel BuildRequires: clang BuildRequires: clang-devel BuildRequires: elfutils-libelf-devel BuildRequires: fmt-devel BuildRequires: git BuildRequires: gmp-devel BuildRequires: libunwind-devel BuildRequires: llvm-devel BuildRequires: ninja-build BuildRequires: sbcl BuildRequires: llvm-devel >= 15, llvm-devel < 20 Requires: llvm >= 15, llvm-devel < 20 %description Clasp is a new Common Lisp implementation that seamlessly interoperates with C++ libraries and programs using LLVM for compilation to native code. This allows Clasp to take advantage of a vast array of preexisting libraries and programs, such as out of the scientific computing ecosystem. Embedding them in a Common Lisp environment allows you to make use of rapid prototyping, incremental development, and other capabilities that make it a powerful language. %prep %autosetup -n %{name}-%{version} -p1 %build ./koga --bin-path=/usr/bin --lib-path=/usr/lib64/clasp --dylib-path=/usr/lib64 --share-path=/usr/share/clasp --pkgconfig-path=/usr/lib64/pkgconfig --package-path=%{buildroot} ninja -C build %install export QA_RPATHS=3 rm -rf %{buildroot} ninja -C build install # fix install mv %{buildroot}/usr/libclasp.so %{buildroot}/usr/lib64/ chmod 755 %{buildroot}/usr/lib64/libclasp.so mkdir -p %{buildroot}/usr/lib64/pkgconfig mv %{buildroot}/usr/lib64/libclasp.pc %{buildroot}/usr/lib64/pkgconfig/ # rpmbuild doesn't like multiple '-' sed -ri -e 's/^(Version: [^-]+)-.*$/\1/' %{buildroot}/usr/lib64/pkgconfig/libclasp.pc mkdir -p %{buildroot}/usr/share/man/man1/ cp -p docs/clasp.1 %{buildroot}/usr/share/man/man1/ # I provide it !! %global __requires_exclude ^libclasp.so$ %files %license licenses/* %doc docs/userDocs.pdf %{_bindir}/* %{_libdir}/* %{_datadir}/clasp %{_mandir}/man1/clasp.1.gz %changelog * Sun Aug 10 2025 Builder - Initial release - 2.7.0