Sophie

Sophie

distrib > Mageia > 5 > i586 > by-pkgid > 4da3d3ceaf3d819d4049d75d0cb8599a > files > 3

aspectc++-1.2-4.mga5.src.rpm

# Set bootstrap to 1 to build an aspectc++ package using the ac++/ag++ binary
# executables included in the SRPM. This is required to bootstrap building
# this package as those binaries are required in order to rebuild themselves.
# Once the package has been bootstrapped, set this to 0 and rebuild in order
# to create a fully-verifiable built-from-source package.
%define         bootstrap 0

%define  libpuma  %mklibname puma -s
%define  libpuma_d  %mklibname puma -d

Name:           aspectc++ 
Version:        1.2
Release:        %mkrel 4
License:        GPLv2+
Group:          Development/C
URL:            http://www.aspectc.org 
Summary:        Compiler for C++ language extension to support aspect orientation
Source0:        ftp://akut.aspectc.org/releases/%{version}/ac-%{version}.tar.gz
%if %bootstrap
Source1:        ac-1.2-bin.tar.xz
%else
BuildRequires:  aspectc++ >= 1.2
%endif
BuildRequires:  pkgconfig(libxml-2.0)
BuildRequires:  pkgconfig(zlib)
Patch0:         Puma-fix-install.patch

%description
The AspectC++ compiler enables you to benefit from the aspect oriented
programming paradigm.


%package -n %{libpuma}
Summary:        Libraries for %{name}
Group:          System/Libraries

%description -n %{libpuma}
The AspectC++ compiler enables you to benefit from the aspect oriented
programming paradigm.

%package -n %{libpuma_d}
Summary:    Libraries and header files for %{name}
Group:      Development/C
Requires:   %{libpuma} = %{version}-%{release}

%description -n %{libpuma_d}
This package contains the static development libraries and headers needed
to compile applications linked with %name libraries.
 
%prep
%setup -q -n %{name}
%apply_patches

%build
%if %bootstrap
# extract the binary compiler executables
tar xaf %SOURCE1
%ifarch x86_64
export PATH="$PATH:`pwd`/x86_64"
%else
export PATH="$PATH:`pwd`/i386"
%endif
%endif
make -C Puma
make -C AspectC++ SHARED=1
make -C Ag++ SHARED=1

%install
%makeinstall_std -C Puma
%if "%{?_lib}" == "lib64"     
    mkdir -p %{buildroot}%{_libdir}
    mv %{buildroot}%{_prefix}/lib/* %{buildroot}%{_libdir}
    rm -frv  %{buildroot}%{_prefix}/lib
%endif
mkdir -p %{buildroot}%{_bindir}
install AspectC++/bin/linux-release/a[cg]++ %{buildroot}%{_bindir}

%check
# ForcedInclude fails because we're redefining ACOPTFLAGS
# ExecAdviceNewDelete fails due to what looks like a 32/64 bit compatibility
# issue in the test suite
# RepoInvalid and RepoVersion fail for unknown reasons, maybe due to use of
# ag++ instead of ac++
sed -i -e 's/\<\(ForcedInclude\|ExecAdviceNewDelete\|RepoInvalid\|RepoVersion\)\>//g' AspectC++/tests/Makefile
make -C AspectC++ testall AC="`pwd`/AspectC++/bin/linux-release/ag++" ACOPTFLAGS=--weave_only

%files -n %{libpuma}
%{_libdir}/libPuma.a

%files -n %{libpuma_d}
%{_includedir}/Puma
%doc Puma/doc/UsersManual/UsersManual.pdf

%files
%{_bindir}/ac++
%{_bindir}/ag++
%doc AspectC++/doc/NoE_ExecModelSurvey/ac++exec-survey.pdf
%doc AspectC++/doc/LanguageReference/LanguageReference.pdf
%doc %lang(ru) AspectC++/doc/LanguageReference/LanguageReference-RU.pdf
%doc AspectC++/doc/NoE_ShortSurvey/ac++lang-survey.pdf
%doc AspectC++/doc/QuickRef/ac++quickref.pdf
%doc AspectC++/doc/CompilerManual/CompilerManual.pdf
%doc Ag++/doc/Ag++Manual/Ag++Manual.pdf


%changelog
* Wed Oct 15 2014 umeabot <umeabot> 1.2-4.mga5
+ Revision: 739583
- Second Mageia 5 Mass Rebuild

* Tue Sep 16 2014 umeabot <umeabot> 1.2-3.mga5
+ Revision: 677918
- Mageia 5 Mass Rebuild

* Sat Jan 04 2014 pterjan <pterjan> 1.2-2.mga4
+ Revision: 564428
- Disable bootstrap

* Tue Dec 31 2013 danf <danf> 1.2-1.mga4
+ Revision: 563552
- build a new package containing the AspectC++ compiler and use it when
  rebuilding itself (unless bootstrapping)
- renamed libpuma0 to libpuma-static since it only contains a static library
- included PDF documentation in packages
- enabled running test suite at build time
- Upgraded to ver. 1.2
- Added an option to bootstrap the ac++/ag++ binaries from sources instead of
  relying on opaque binary blobs

  + umeabot <umeabot>
    - Mageia 4 Mass Rebuild

* Sun Feb 03 2013 neoclust <neoclust> 1.1-1.mga3
+ Revision: 394174
- Try to fix build on 64bit
- Use a snapshot ( fix gcc build )
- imported package aspectc++