Compare commits

..

3 Commits
rawhide ... f24

Author SHA1 Message Date
Tom Callaway 90ca8d93ff changes 2017-03-01 13:29:17 -05:00
Tom Callaway 5aa6e58075 conditionalize cmake mangling 2017-03-01 13:16:17 -05:00
Tom Callaway 584f8e7a97 3.8.1 2017-03-01 13:08:02 -05:00
4 changed files with 104 additions and 1 deletions

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
/libcxxabi-3.9.0.src.tar.xz
/libcxxabi-3.8.1.src.tar.xz
/libcxxabi-3.8.0.src.tar.xz

View File

@ -1 +0,0 @@
Package merged into libcxx

100
libcxxabi.spec Normal file
View File

@ -0,0 +1,100 @@
Name: libcxxabi
Version: 3.8.0
Release: 3%{?dist}
Summary: Low level support for a standard C++ library
License: MIT or NCSA
URL: http://libcxxabi.llvm.org/
Source0: http://llvm.org/releases/%{version}/libcxxabi-%{version}.src.tar.xz
BuildRequires: clang llvm-devel cmake
BuildRequires: libcxx-devel >= %{version}
%if 0%{?rhel}
# libcxx-devel has this, so we need to as well.
ExcludeArch: ppc64 ppc64le
%endif
%description
libcxxabi provides low level support for a standard C++ library.
%package devel
Summary: Headers and libraries for libcxxabi devel
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
%{summary}.
%package static
Summary: Static libraries for libcxxabi
%description static
%{summary}.
%prep
%setup -q -n %{name}-%{version}.src
%if 0%{?fedora} >= 26
sed -i 's|${LLVM_BINARY_DIR}/share/llvm/cmake|%{_libdir}/cmake/llvm|g' CMakeLists.txt
%endif
%build
%ifarch armv7hl
# disable ARM exception handling
sed -i 's|LIBCXXABI_ARM_EHABI 1|LIBCXXABI_ARM_EHABI 0|g' include/__cxxabi_config.h
%endif
mkdir _build
cd _build
%ifarch s390 s390x
%if 0%{?fedora} < 26
# clang requires z10 at minimum
# workaround until we change the defaults for Fedora
%global optflags %(echo %{optflags} | sed 's/-march=z9-109 /-march=z10 /')
%endif
%endif
export LDFLAGS="-Wl,--build-id"
%cmake .. \
-DCMAKE_C_COMPILER=/usr/bin/clang \
-DCMAKE_CXX_COMPILER=/usr/bin/clang++ \
-DLLVM_CONFIG=%{_bindir}/llvm-config \
-DCMAKE_CXX_FLAGS="-std=c++11" \
-DLIBCXXABI_LIBCXX_INCLUDES=%{_includedir}/c++/v1/ \
%if 0%{?__isa_bits} == 64
-DLIBCXXABI_LIBDIR_SUFFIX:STRING=64 \
%endif
-DCMAKE_BUILD_TYPE=RelWithDebInfo
make %{?_smp_mflags}
%install
cd _build
make install DESTDIR=%{buildroot}
mkdir -p %{buildroot}%{_includedir}
cd ..
cp -a include/* %{buildroot}%{_includedir}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%license LICENSE.TXT
%doc CREDITS.TXT
%{_libdir}/libc++abi.so.*
%files devel
%{_includedir}/*.h
%{_libdir}/libc++abi.so
%files static
%{_libdir}/libc++abi.a
%changelog
* Wed Mar 1 2017 Tom Callaway <spot@fedoraproject.org> - 3.8.0-3
- apply fixes from libcxx
* Mon Jul 25 2016 Tom Callaway <spot@fedoraproject.org> - 3.8.0-2
- make static subpackage
* Tue May 3 2016 Tom Callaway <spot@fedoraproject.org> - 3.8.0-1
- initial package

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (libcxxabi-3.8.0.src.tar.xz) = 4702ed44a33e6418b08a38f7b8b4f9df838d5c36a5b635c9769b4539850120b60bfbe40ab27543de2cf492b9ccfbb8b3110295aa466f96d61fddd1ff50c92be5