145 lines
4.2 KiB
RPMSpec
145 lines
4.2 KiB
RPMSpec
#
|
|
# spec file for package eppic
|
|
#
|
|
# Copyright (c) 2023 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: eppic
|
|
Version: 4.99.git.1682279748.c294e5b
|
|
Release: 0
|
|
Summary: Embeddable Pre-Processor and Interpreter for C
|
|
License: GPL-2.0-or-later
|
|
Group: Development/Libraries/C and C++
|
|
Source: %{name}-%{version}.tar.xz
|
|
Source99: %{name}-rpmlintrc
|
|
Patch1: %{name}-fix-install.patch
|
|
BuildRequires: bison
|
|
BuildRequires: crash-devel
|
|
BuildRequires: flex
|
|
BuildRequires: ncurses-devel
|
|
URL: https://github.com/lucchouina/eppic
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
%description
|
|
EPPIC is a C interpreter that permits easy access to the symbol and type
|
|
information stored in a executable image like a coredump or live memory
|
|
interfaces (e.g. /dev/kmem, /dev/mem). Although it has a strong association
|
|
with live or postmortem kernel analysis, it is not constraint to it and can be
|
|
embedded in any tools that is C friendly.
|
|
|
|
%package -n libeppic-devel
|
|
Summary: EPPIC include files and libraries
|
|
Group: Development/Languages/C and C++
|
|
|
|
%package -n crash-eppic
|
|
Summary: The eppic extension for crash
|
|
Group: Development/Tools/Debuggers
|
|
|
|
%description -n libeppic-devel
|
|
EPPIC is a C interpreter that permits easy access to the symbol and type
|
|
information stored in a executable image like a coredump or live memory
|
|
interfaces (e.g. /dev/kmem, /dev/mem). Although it has a strong association
|
|
with live or postmortem kernel analysis, it is not constraint to it and can be
|
|
embedded in any tools that is C friendly.
|
|
|
|
This package provides the include files and libraries needed for development.
|
|
|
|
%description -n crash-eppic
|
|
EPPIC is a C interpreter that permits easy access to the symbol and type
|
|
information stored in a executable image like a coredump or live memory
|
|
interfaces (e.g. /dev/kmem, /dev/mem). Although it has a strong association
|
|
with live or postmortem kernel analysis, it is not constraint to it and can be
|
|
embedded in any tools that is C friendly.
|
|
|
|
This package provides the extension for the crash utility.
|
|
|
|
%prep
|
|
%setup
|
|
%autopatch -p1
|
|
|
|
%build
|
|
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
|
make -C libeppic CFLAGS="%{optflags} -fPIC" %{?_smp_mflags}
|
|
|
|
case `uname -m` in
|
|
aarch64)
|
|
TARGET=ARM64
|
|
TARGET_CFLAGS=
|
|
;;
|
|
arm*)
|
|
TARGET=ARM
|
|
TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64
|
|
;;
|
|
i?86)
|
|
TARGET=X86
|
|
TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64
|
|
;;
|
|
ia64)
|
|
TARGET=IA64
|
|
TARGET_CFLAGS=
|
|
;;
|
|
ppc)
|
|
TARGET=PPC
|
|
TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64
|
|
;;
|
|
ppc64|ppc64le)
|
|
TARGET=PPC64
|
|
TARGET_CFLAGS=-m64
|
|
;;
|
|
riscv64)
|
|
TARGET=RISCV64
|
|
TARGET_CFLAGS=
|
|
;;
|
|
s390)
|
|
TARGET=S390
|
|
TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64
|
|
;;
|
|
s390x)
|
|
TARGET=S390X
|
|
TARGET_CFLAGS=
|
|
;;
|
|
x86_64)
|
|
TARGET=X86_64
|
|
TARGET_CFLAGS=
|
|
;;
|
|
esac
|
|
export TARGET TARGET_CFLAGS
|
|
ln -snf ../../libeppic applications/crash/
|
|
make -C applications/crash -f eppic.mk INCDIR=/usr/include/crash eppic.so
|
|
|
|
%install
|
|
mkdir -p %{buildroot}%{_libdir}
|
|
mkdir -p %{buildroot}%{_includedir}
|
|
make -C libeppic ROOT="%{buildroot}" LIBDIR=%{_libdir} install
|
|
|
|
mkdir -p %{buildroot}%{_libdir}/crash/extensions
|
|
install -m 0644 applications/crash/eppic.so %{buildroot}%{_libdir}/crash/extensions
|
|
install -d -m 0755 %{buildroot}%{_datadir}/eppic
|
|
cp -r applications/crash/code %{buildroot}%{_datadir}/eppic/crash
|
|
|
|
%files -n libeppic-devel
|
|
%defattr(-,root,root)
|
|
%doc libeppic/README.md
|
|
%{_includedir}/eppic.h
|
|
%{_includedir}/eppic_api.h
|
|
%attr(644,root,root) %{_libdir}/libeppic.a
|
|
|
|
%files -n crash-eppic
|
|
%doc applications/crash/README.code
|
|
%{_libdir}/crash/extensions/eppic.so
|
|
%{_datadir}/eppic
|
|
|
|
%changelog
|