[GiNaC-devel] [SCM] GiNaC -- a C++ library for symbolic computations branch, master, updated. release_1-4-0-688-g9b536005
Richard B. Kreckel
git at ginac.de
Sat Aug 29 20:28:46 CEST 2020
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GiNaC -- a C++ library for symbolic computations".
The branch, master has been updated
via 9b536005350ae3f722e23fc775b456cd8b72aa39 (commit)
via e7a1ce91cd311fde94a8011e2869a7f9fc018f41 (commit)
via 4f71d7035d32e8f74d9b13e0d6a9c0ab4a58062d (commit)
via f7ffc0186d90947cb5df395b9fc547ab80115ea0 (commit)
via 7704505fbf7d969ff918f8bf2ff9ed976194987a (commit)
via 51de097fb10f6167affe710328555113d7bcfa63 (commit)
via 08c190937df7e802393b588d3cc82d2bdf00b128 (commit)
via 3b980fd5eeadd638874dfe03801c4c15926882c6 (commit)
via 4561adcbcae14c71ca6b8eb2668a6c7690c7428a (commit)
via 8a4e28dc8121e50d987e888f9688412e1d3ee663 (commit)
from 67111f007a38497508b72603408b8f59a8e110a5 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 9b536005350ae3f722e23fc775b456cd8b72aa39
Author: Richard Kreckel <kreckel at ginac.de>
Date: Sat Aug 29 20:22:49 2020 +0200
Remove executable file attribute from last Python script.
They are all invoked by ${PYTHON} and lack a shebang line since 8a4e28dc81.
commit e7a1ce91cd311fde94a8011e2869a7f9fc018f41
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Thu Dec 19 18:17:41 2019 +0400
build: use bundled CLN if available
So one can unpack CLN tarball (or clone CLN git repository) and compile
both CLN and GiNaC in one pass:
git clone git://ginac.de/ginac.git
cd ginac
git clone git://www.ginac.de/cln.git
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo .. && make
commit 4f71d7035d32e8f74d9b13e0d6a9c0ab4a58062d
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Wed Dec 18 14:52:17 2019 +0400
Use "modern" CMake facilities to manage includes and libs
* Use target_link_libraries to specify dependencies (include paths,
compiler options, etc)
* Export targets and provide `ginac-config.cmake` so the following
`CMakeLists.txt` is enough to build a program using GiNaC:
cmake_minimum_required(VERSION 3.1)
project(foo)
find_package(ginac REQUIRED)
add_executable(foo foo.cpp)
target_link_libraries(foo PRIVATE ginac::ginac)
* GiNaC can be included as a (CMake) subproject. One can put GiNaC
sources (either from git or a tarball) into a subdirectory (say,
`ginac`) and use the following CMakeLists.txt to build everything:
cmake_minimum_required(VERSION 3.1)
project(foo)
add_subdirectory(ginac)
add_executable(foo foo.cpp)
target_link_libraries(foo PRIVATE ginac::ginac)
commit f7ffc0186d90947cb5df395b9fc547ab80115ea0
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Thu Dec 26 21:45:11 2019 +0400
build: windows: enable automatic imports by default
For now there are no dllexport/dllimport markings in GiNaC and CLN, so
export all symbols when building GiNaC DLL, and enable automatic imports
when linking with it. Note: this works with GNU linker only.
commit 7704505fbf7d969ff918f8bf2ff9ed976194987a
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Fri Dec 27 17:34:05 2019 +0400
build: CMake: made it easier to run tests in parallel
As of now `make -jN check` executes test suite sequentially
(although it builds test executables in parallel). This takes
a bit too long, so it would be nice to run tests in parallel.
`ctest -jN` or `make test ARGS=-jN` runs tests concurrently,
however it does not build test executables, instead it fails
if any test binary is missing.
Also `test` target is a bit special and it's impossible to add
dependencies to it, see
https://gitlab.kitware.com/cmake/cmake/issues/8438
To work around the problem define `test_suite` target which
builds the tests suite without running it, so one can both
compile and run tests in parallel
make -j8 test_suite
make test ARGS=-j8
commit 51de097fb10f6167affe710328555113d7bcfa63
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Wed Dec 25 20:41:17 2019 +0400
Made it easier to run tests on windows
Put executables and DLLs into the `bin` subdirectory so the system
can locate GiNaC (and CLN) DLLs without extra configuration.
commit 08c190937df7e802393b588d3cc82d2bdf00b128
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Wed Dec 18 16:39:12 2019 +0400
numeric.cpp, archive.cpp: don't include config.h
config.h is necessary for excompiler only, the rest of the library
is pretty portable. Not including dynamically generated headers
saves compilation time due to more (c)cache hits.
commit 3b980fd5eeadd638874dfe03801c4c15926882c6
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Mon Jan 6 22:34:09 2020 +0400
Build example programs to avoid breaking them on API changes
commit 4561adcbcae14c71ca6b8eb2668a6c7690c7428a
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Thu Dec 19 18:16:53 2019 +0400
build: fixed `ginac-excompiler` installation with CMake
commit 8a4e28dc8121e50d987e888f9688412e1d3ee663
Author: Alexey Sheplyakov <asheplyakov at altlinux.org>
Date: Sun Aug 23 11:28:07 2020 +0400
build: accept both python 3 and python 2
This makes building GiNaC a bit easier for users of "old" distributions
where python 3 is not installed by default (Ubuntu 16.04), or even not
available (CentOS 7).
Scripts themselves work just fine with python 2.7 and python 3.x, so
only minor changes to CMakeLists.txt are required (autotools scripts
already handle python2/3)
-----------------------------------------------------------------------
Summary of changes:
CMakeLists.txt | 127 +++++++++++++++++++++++---------------------
INSTALL | 3 +-
Makefile.am | 1 +
check/CMakeLists.txt | 8 +--
cmake/ginac-config.cmake.in | 9 ++++
cmake/modules/FindCLN.cmake | 23 ++++++++
doc/CMakeLists.txt | 2 +-
doc/examples/CMakeLists.txt | 35 +++++++++++-
doc/examples/Makefile.am | 27 ++++++++++
doc/examples/archive1.cpp | 6 ++-
doc/examples/compile1.cpp | 5 +-
doc/examples/compile2.cpp | 4 ++
doc/examples/compile3.cpp | 5 +-
doc/examples/derivative.cpp | 4 ++
doc/examples/mystring.cpp | 6 ++-
ginac.pc.cmake | 6 +--
ginac/CMakeLists.txt | 42 +++++++++++----
ginac/archive.cpp | 3 --
ginac/function.py | 2 +-
ginac/numeric.cpp | 4 --
ginsh/CMakeLists.txt | 19 +++----
ginsh/ginsh_fcn_help.py | 2 +-
ginsh/ginsh_op_help.py | 2 +-
scripts/fixupind.py | 4 +-
scripts/yaptu.py | 2 +-
tools/CMakeLists.txt | 8 ++-
26 files changed, 244 insertions(+), 115 deletions(-)
create mode 100644 cmake/ginac-config.cmake.in
mode change 100755 => 100644 ginac/function.py
mode change 100755 => 100644 ginsh/ginsh_fcn_help.py
mode change 100755 => 100644 ginsh/ginsh_op_help.py
mode change 100755 => 100644 scripts/fixupind.py
hooks/post-receive
--
GiNaC -- a C++ library for symbolic computations
More information about the GiNaC-devel
mailing list