Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37038221
en ru br
Репозитории ALT
S:2.7.2-alt4
5.1: 2.7.2-alt1
www.altlinux.org/Changes

Группа :: Разработка/C
Пакет: mcpp

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%define _unpackaged_files_terminate_build 1
# implement shared libs policy on soname change!
%define soname 0
%def_disable static

Name:       mcpp
Version:    2.7.2
Release:    alt4

Summary:    Alternative C/C++ preprocessor

License:    BSD
Group:      Development/C
URL:        http://mcpp.sourceforge.net/

Source:     http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Patch0:     mcpp-manual.html.patch
Patch1:     mcpp-fix.patch
# from fc 2.7.2-29: https://bugzilla.redhat.com/show_bug.cgi?id=948860
Patch2:     mcpp-man.patch

%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
Summary:    Alternative C/C++ preprocessor (library build)
Group:      Development/C

%description -n libmcpp
This package provides a library build of mcpp.

%package -n libmcpp-devel
Summary:    Alternative C/C++ preprocessor (development package for library build)
Group:      Development/C
Requires:   libmcpp = %version

%description -n libmcpp-devel
Development package for libmcpp.

%package -n libmcpp-devel-static
Summary:    Alternative C/C++ preprocessor (development static package)
Group:      Development/C
Requires:   libmcpp-devel = %version

%description -n libmcpp-devel-static
Development static package for libmcpp.

%package doc
Summary:    Alternative C/C++ preprocessor (manual for library build)
Group:      Documentation
BuildArch: noarch

%description doc
This package provides an html manual for mcpp.

%prep
%setup -q
%patch0 -p0 -b -z.euc-jp
%patch1 -p1
%patch2 -p1

%build
%configure \
   %{subst_enable static} \
   --enable-mcpplib

sed -ri 's/^(hardcode_libdir_flag_spec|runpath_var)=.*/\1=/' libtool
make CFLAGS="%optflags"

%install
iconv -f euc-jp -t utf-8 doc-jp/mcpp-manual.html > doc-jp/mcpp-manual-jp.html
%makeinstall_std
rm -rf %buildroot%_docdir/%name

%files
%doc ChangeLog ChangeLog.old LICENSE NEWS README
%_man1dir/*
%_bindir/%name

%files -n libmcpp
%_libdir/libmcpp.so.%{soname}
%_libdir/libmcpp.so.%{soname}.*

%files -n libmcpp-devel
%_libdir/libmcpp.so
%_includedir/mcpp_lib.h
%_includedir/mcpp_out.h

%if_enabled static
%files -n libmcpp-devel-static
%_libdir/libmcpp.a
%endif

%files doc
%doc doc/mcpp-manual.html
%lang(ja) %doc doc-jp/mcpp-manual-jp.html

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin