mcpp/mcpp.spec

114 lines
3.5 KiB
RPMSpec
Raw Normal View History

Name: mcpp
Version: 2.7.2
Release: 3mamba
Summary: Alternative C/C++ preprocessor
Group: Development/Languages
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://mcpp.sourceforge.net/
Source: http://downloads.sourceforge.net/project/mcpp/mcpp/V.%{version}/mcpp-%{version}.tar.gz
Patch0: mcpp-manual.html.patch
Patch2: mcpp-2.7.2-fs28284.patch
Patch3: mcpp-2.7.2-namlen.patch
License: BSD
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
## AUTOBUILDREQ-END
Requires: libmcpp = %{?epoch:%epoch:}%{version}-%{release}
%description
C/C++ preprocessor defines and expands macros and processes '#if', '#include' and some other directives.
MCPP is an alternative C/C++ preprocessor with the highest conformance.
It supports multiple standards: K&R, ISO C90, ISO C99, and ISO C++98.
MCPP is especially useful for debugging a source program which uses complicated macros and also useful for checking portability of a source.
Though mcpp could be built as a replacement of GCC's resident proprocessor or as a stand-alone program without using library build of mcpp, this package installs only a program named 'mcpp' which links shared library of mcpp and behaves independent from GCC.
%package -n libmcpp
Group: System/Libraries
Summary: Libraries for MCPP
%description -n libmcpp
MCPP is an alternative C/C++ preprocessor with the highest conformance.
This package provides a library build of mcpp.
%package -n libmcpp-devel
Group: Development/Libraries
Summary: Libraries and headers for MCPP
Requires: libmcpp = %{?epoch:%epoch:}%{version}-%{release}
%description -n libmcpp-devel
MCPP is an alternative C/C++ preprocessor with the highest conformance.
This package contains libraries and header files needed for development.
%package doc
Summary: Documentation for MCPP
Group: Documentation
%description doc
MCPP is an alternative C/C++ preprocessor with the highest conformance.
The %{name}-doc package contains the documentation for MCPP.
%debug_packages
%prep
%setup -q -n mcpp-%{version}
%patch0 -p0 -b -z.euc-jp
%patch2 -p1 -b .fs28284
%patch3 -p1 -b .namlen
sed -i "s,| arm-\* |,| aarch64-\* | arm-\* |," config/config.sub
%build
%configure \
--enable-mcpplib \
--disable-static
make CFLAGS="%{optflags}"
%install
iconv -f euc-jp -t utf-8 doc-jp/mcpp-manual.html > doc-jp/mcpp-manual-jp.html
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
make DESTDIR=%{buildroot} install
rm -rf %{buildroot}%{_docdir}/%{name}
rm -rf %{buildroot}%{_libdir}/libmcpp.*a
install -m 644 mcpp-gcc.1 %{buildroot}%{_mandir}/man1/
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -n libmcpp -p /sbin/ldconfig
%postun -n libmcpp -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_bindir}/mcpp
%{_mandir}/man1/mcpp.1*
%{_mandir}/man1/mcpp-gcc.1*
%files -n libmcpp
%defattr(-,root,root)
%{_libdir}/libmcpp.so.*
%doc LICENSE
%files -n libmcpp-devel
%defattr(-,root,root)
%{_includedir}/mcpp_lib.h
%{_includedir}/mcpp_out.h
%{_libdir}/libmcpp.so
%files doc
%defattr(-,root,root)
%lang(ja) %doc doc-jp/mcpp-manual-jp.html
%lang(en) %doc doc/mcpp-manual.html
%changelog
* Fri Dec 24 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 2.7.2-3mamba
- rebuilt with patches from Arch Linux
* Mon Jan 17 2011 gil <puntogil@libero.it> 2.7.2-2mamba
- rebuilt devel
* Mon Jan 05 2009 gil <puntogil@libero.it> 2.7.2-1mamba
- package created by autospec