Advamce to cppad-20190200.

This commit is contained in:
Brad Bell 2019-02-01 05:27:55 -07:00
commit c43b41e1cb
3 changed files with 67 additions and 45 deletions

12
.gitignore vendored
View file

@ -9,9 +9,11 @@
/junk.*
# ignore result drectory created by fedpkg mockbuild
/results_cppad/
# directory used like git cache
/new/
/new.*/
# ---------------------------------------------------------------------------
# When finish testing, change so only ignore cppad-yyyy0000.rel.gpl.tgz file
# and cppad-yyyy0000.rel directory for current year yyyy and current CppAD bug
# release rel.
/cppad-20180000.0.gpl.tgz
/cppad-20180000.0/
# soruce code
/CppAD-20190200.0.tar.gz
# documentation
/CppAD-20190200.doc.tar.gz

View file

@ -1,21 +1,25 @@
# vim: set expandtab:
# ----------------------------------------------------------------------------
# Lint
# ----------------------------------------------------------------------------
# The comamnd 'fedpkg lint' generates the warning:
#
# cppad.spec:89: W: rpm-buildroot-usage
# cppad.spec:99: W: rpm-buildroot-usage
# %%prep includedir=%%{buildroot}%%{_includedir}
#
# See https://lists.fedoraproject.org/pipermail/devel/2011-January/147969.html
# ----------------------------------------------------------------------------
# Preamble
# ----------------------------------------------------------------------------
# CppAD release number starts with zero and last part of version number.
# yyyy is year, mm is month, dd is day, corresponding to this version
# The $${version} includes a bug fix number at end that starts at zero.
%define yyyymmdd 20190200
# Fedora Release starts with 1; see
# https://fedoraproject.org/wiki/Packaging:Versioning
Name: cppad
Version: 20180000.0
Release: 4%{?dist}
Version: %{yyyymmdd}.0
Release: 1%{?dist}
Summary: C++ Algorithmic Differentiation (AD), %{name}-devel and %{name}-doc
# As of yet, there are no object libraries or executables included in this
@ -27,9 +31,13 @@ Summary: C++ Algorithmic Differentiation (AD), %{name}-devel and %{name}-doc
# change (see mention of cppad_lib below).
%global debug_package %{nil}
License: GPLv3
URL: http://www.coin-or.org/CppAD/
Source: http://www.coin-or.org/download/source/CppAD/%{name}-%{version}.gpl.tgz
# Note that the upstream sources have been named the same as thier directories;
# CppAD-%%{version} and CppAD-%%{yyyymmdd}.doc
License: EPL2.0 or (GPL2 or later)
URL: http://coin-or.github.io/CppAD
Source: https://github.com/coin-or/CppAD/archive/%{version}.tar.gz
Source1: https://github.com/coin-or/CppAD/archive/%{yyyymmdd}.doc.tar.gz
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: cmake >= 2.8
@ -62,32 +70,35 @@ Summary: Documentation for %{name}-devel
BuildArch: noarch
%description doc
The %{name}-doc package installs the XML documentation for %{name}-devel in
The %{name}-doc package installs the HTML documentation for this version
of %{name}-devel in
%{_docdir}/%{name}
Links to an HTML version of the %{name} documentation, for the most recent
version of %{name}, can be found at the web site
http://www.coin-or.org/CppAD/
In addition, printable versions of the documentation,
as a single web page, in both HTML and XML, can be found at that web site.
The documentation, for the most recent version of %{name}, can be found at
http://coin-or.github.io/CppAD
# -----------------------------------------------------------------------------
# prep
# -----------------------------------------------------------------------------
%prep
%setup -q
# 1. Replace cppad_SOURCE_DIR by the system include directory so that
# installed files, instead of local files, are used for testing.
# 2. EPEL7 is using cmake 2.8 so change required version and reply on all
# the tests passing for correctness of this change.
#
includedir=%{buildroot}%{_includedir}
sed \
-e "s|\(INCLUDE_DIRECTORIES(\).*{cppad_SOURCE_DIR}|\1 SYSTEM $includedir|" \
-e "s|\(CMAKE_MINIMUM_REQUIRED\)(VERSION 3.1)|\1(VERSION 2.8)|" \
-i.bak CMakeLists.txt
# The source code tarball
rm -rf CppAD-%{version}
tar -xzf %{_topdir}/SOURCES/CppAD-%{version}.tar.gz
#
# The documentation tarball
rm -rf CppAD-%{yyyymmdd}.doc
tar -xzf %{_topdir}/SOURCES/CppAD-%{yyyymmdd}.doc.tar.gz
#
# move the documentaion to this build directory
mv CppAD-%{yyyymmdd}.doc/doc CppAD-%{version}/doc
mv CppAD-%{version}/COPYING COPYING
mv CppAD-%{version}/uw_copy_040507.html uw_copy_040507.html
# Replace cppad_SOURCE_DIR by the system include directory so that
# installed files, instead of local files, are used for testing.
includedir=%{buildroot}%{_includedir}
sed -e "s|\${cppad_SOURCE_DIR}/include|SYSTEM $includedir|" \
-i.bak CppAD-%{version}/CMakeLists.txt
# -----------------------------------------------------------------------------
# build
# -----------------------------------------------------------------------------
@ -102,31 +113,31 @@ cppad_cxx_flags='-Wall -pedantic-errors -std=c++11 -Wshadow -Wconversion'
%cmake --version
%cmake \
-D CMAKE_VERBOSE_MAKEFILE=0 \
-G 'Unix Makefiles' \
-G 'Unix Makefiles' \
\
-D cppad_prefix=%{_prefix} \
-D cppad_postfix='' \
-D cppad_postfix='' \
-D cmake_install_includedirs=include \
-D cmake_install_libdirs=lib \
-D cmake_install_libdirs=%{_lib} \
-D cmake_install_datadir=share \
-D cmake_install_docdir=share/doc \
\
-D adolc_prefix='' \
-D colpack_prefix='' \
-D eigen_prefix='' \
-D fadbad_prefix='' \
-D ipopt_prefix='' \
-D sacado_prefix='' \
\
-D adolc_prefix='' \
-D colpack_prefix='' \
-D eigen_prefix='' \
-D fadbad_prefix='' \
-D ipopt_prefix='' \
-D sacado_prefix='' \
\
-D cppad_cxx_flags="$cppad_cxx_flags" \
-D cppad_profile_flag='' \
\
-D cppad_profile_flag='' \
\
-D cppad_test_vector=cppad \
-D cppad_max_num_theads=64 \
-D cppad_tape_id_type=size_t \
-D cppad_tape_addr_type=size_t \
-D cppad_deprecated=NO \
.
CppAD-%{version}
make %{?_smp_mflags}
# -----------------------------------------------------------------------------
@ -136,11 +147,11 @@ make %{?_smp_mflags}
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
%files devel
%doc COPYING uw_copy_040507.html
%{_includedir}/%{name}
%{_datadir}/pkgconfig/%{name}.pc
%{_libdir}/pkgconfig/%{name}.pc
%files doc
%{_docdir}/%{name}
@ -154,6 +165,14 @@ make check
# ----------------------------------------------------------------------------
%changelog
* Fri Feb 01 2019 Brad Bell <bradbell at seanet dot com> - 20190200.0-1
- Advance to version 2019 of cppad (actually 2019-02).
- Home page and sources have moved to github.
- Documentation is now a separate source tarball.
- Copyright changed from GPL3 -> EPL2 with GPL2 or later option.
- Change tabs to spaces and add 'vim: setexpandtab' command at top.
- Install pkgconfig files in both data and lib directories.
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 20180000.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

View file

@ -1 +1,2 @@
SHA512 (cppad-20180000.0.gpl.tgz) = 83e8617c0f0f1d1784a89049bfba2ab4f1aee7af79f23cc4384db858ff55ef7e26901b3985897fcc65c87d6243b892978d17036e0de84132c0bca2edbe3fc082
SHA512 (CppAD-20190200.0.tar.gz) = 2cd77d56b141f58f5bf2bfc75b17ac663e6f5696f43bb18219e94289000f45acb148eee2dec445813aada01e55ed560888e69f8c32ced359df5472938efec6a8
SHA512 (CppAD-20190200.doc.tar.gz) = 7543960efd81fbf0186397b63953b927ec5cfd1f0796408b63ddbf5d41a2137ce1fa1e03ad1448eb31b131cce2c58bd4a52f47ea52da6506126b74eb539e43ba