diff --git a/Manifest.toml b/Manifest.toml new file mode 100644 index 0000000..98f0ce5 --- /dev/null +++ b/Manifest.toml @@ -0,0 +1,123 @@ +# This file is machine-generated - editing it directly is not advised + +[[Base64]] +uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" + +[[BinDeps]] +deps = ["Libdl", "Pkg", "SHA", "URIParser", "Unicode"] +git-tree-sha1 = "66158ad56b4bf6cc8413b37d0b7bc52402682764" +uuid = "9e28174c-4ba2-5203-b857-d8d62c4213ee" +version = "1.0.0" + +[[BinaryProvider]] +deps = ["Libdl", "SHA"] +git-tree-sha1 = "5b08ed6036d9d3f0ee6369410b830f8873d4024c" +uuid = "b99e7846-7c00-51b0-8f62-c81ae34c0232" +version = "0.5.8" + +[[Compat]] +deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "SHA", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"] +git-tree-sha1 = "5a5e0e21707cabade4f2e197976f550333a24165" +uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" +version = "3.4.0" + +[[Dates]] +deps = ["Printf"] +uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" + +[[DelimitedFiles]] +deps = ["Mmap"] +uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" + +[[Distributed]] +deps = ["Random", "Serialization", "Sockets"] +uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" + +[[InteractiveUtils]] +deps = ["Markdown"] +uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" + +[[LibGit2]] +uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" + +[[Libdl]] +uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" + +[[LinearAlgebra]] +deps = ["Libdl"] +uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" + +[[Logging]] +uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" + +[[Markdown]] +deps = ["Base64"] +uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" + +[[Mmap]] +uuid = "a63ad114-7e13-5084-954f-fe012c677804" + +[[Pkg]] +deps = ["Dates", "LibGit2", "Markdown", "Printf", "REPL", "Random", "SHA", "UUIDs"] +uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" + +[[Printf]] +deps = ["Unicode"] +uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" + +[[REPL]] +deps = ["InteractiveUtils", "Markdown", "Sockets"] +uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" + +[[Random]] +deps = ["Serialization"] +uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" + +[[RecipesBase]] +git-tree-sha1 = "b4ed4a7f988ea2340017916f7c9e5d7560b52cae" +uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" +version = "0.8.0" + +[[SHA]] +uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" + +[[Serialization]] +uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" + +[[SharedArrays]] +deps = ["Distributed", "Mmap", "Random", "Serialization"] +uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" + +[[Sockets]] +uuid = "6462fe0b-24de-5631-8697-dd941f90decc" + +[[SparseArrays]] +deps = ["LinearAlgebra", "Random"] +uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + +[[SpecialFunctions]] +deps = ["BinDeps", "BinaryProvider", "Libdl"] +git-tree-sha1 = "3bdd374b6fd78faf0119b8c5d538788dbf910c6e" +uuid = "276daf66-3868-5448-9aa4-cd146d93841b" +version = "0.8.0" + +[[Statistics]] +deps = ["LinearAlgebra", "SparseArrays"] +uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" + +[[Test]] +deps = ["Distributed", "InteractiveUtils", "Logging", "Random"] +uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" + +[[URIParser]] +deps = ["Test", "Unicode"] +git-tree-sha1 = "6ddf8244220dfda2f17539fa8c9de20d6c575b69" +uuid = "30578b45-9adc-5946-b283-645ec420af67" +version = "0.4.0" + +[[UUIDs]] +deps = ["Random", "SHA"] +uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" + +[[Unicode]] +uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" diff --git a/Project.toml b/Project.toml index 9f8ac4c..2578c04 100644 --- a/Project.toml +++ b/Project.toml @@ -5,9 +5,10 @@ version = "0.7.1" [deps] BinaryProvider = "b99e7846-7c00-51b0-8f62-c81ae34c0232" Compat = "34da2185-b29b-5c13-b0c7-acf172513d20" +Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb" +LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" RecipesBase = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" -Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb" [compat] BinaryProvider = "≥ 0.3.0" diff --git a/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineConfig.cmake b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineConfig.cmake new file mode 100644 index 0000000..bc2105b --- /dev/null +++ b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineConfig.cmake @@ -0,0 +1,112 @@ +# To use SymEngine from another CMake project include the following in your +# `CMakeLists.txt` file + +# `find_package(SymEngine CONFIG)` + +# You can give the path to the SymEngine installation directory if it was +# installed to a non standard location by, + +# `find_package(SymEngine CONFIG Paths /path/to/install/dir)` + +# Alternatively, you can give the path to the build directory. + +# Variable exported are +# SYMENGINE_BUILD_TYPE - Cofiguration Type Debug or Release +# SYMENGINE_INCLUDE_DIRS - Header file directories +# SYMENGINE_LIBRARIES - SymEngine libraries and dependency libraries to link against +# SYMENGINE_FOUND - Set to yes +# SYMENGINE_CXX_FLAGS_RELEASE - C++ flags for Release configuration +# SYMENGINE_CXX_FLAGS_DEBUG - C++ flags for Debug configuration +# SYMENGINE_C_FLAGS_RELEASE - C flags for Release configuration +# SYMENGINE_C_FLAGS_DEBUG - C flags for Debug configuration + +# An example project would be, +# +# cmake_minimum_required(VERSION 2.8) +# find_package(symengine CONFIG) +# set(CMAKE_CXX_FLAGS_RELEASE ${SYMENGINE_CXX_FLAGS_RELEASE}) +# +# include_directories(${SYMENGINE_INCLUDE_DIRS}) +# add_executable(example main.cpp) +# target_link_libraries(example ${SYMENGINE_LIBRARIES}) +# + +cmake_minimum_required(VERSION 2.8) + +set(SYMENGINE_CXX_FLAGS "-march=core2") +set(SYMENGINE_CXX_FLAGS_RELEASE "-Wall -Wextra -Wno-unused-parameter -fno-common -O3 -funroll-loops -std=c++11 -fPIC -Wno-unknown-pragmas") +set(SYMENGINE_CXX_FLAGS_DEBUG "-Wall -Wextra -Wno-unused-parameter -fno-common -g -ggdb -std=c++11 -fPIC -Wno-unknown-pragmas") +set(SYMENGINE_C_FLAGS "") +set(SYMENGINE_C_FLAGS_RELEASE "-O3 -DNDEBUG") +set(SYMENGINE_C_FLAGS_DEBUG "-g") + +# ... for the build tree +get_filename_component(SYMENGINE_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) + +set(SYMENGINE_BUILD_TREE no) + +if(NOT TARGET symengine) + include("${SYMENGINE_CMAKE_DIR}/SymEngineTargets.cmake") +endif() + +if(SYMENGINE_BUILD_TREE) + set(SYMENGINE_INSTALL_CMAKE_DIR "${SYMENGINE_CMAKE_DIR}") + set(SYMENGINE_INCLUDE_DIRS /workspace/srcdir/symengine-0.4.0;/workspace/srcdir/symengine-0.4.0 ${SYMENGINE_CMAKE_DIR}) + if (TARGET teuchos) + set(SYMENGINE_INCLUDE_DIRS ${SYMENGINE_INCLUDE_DIRS} ${SYMENGINE_CMAKE_DIR}/symengine/teuchos) + endif() +else() + set(SYMENGINE_INSTALL_CMAKE_DIR "/workspace/destdir/lib/cmake/symengine") + set(SYMENGINE_INCLUDE_DIRS "${SYMENGINE_CMAKE_DIR}/../../../include") +endif() + + +set(SYMENGINE_GMP_LIBRARIES /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/lib/libgmp.so) +set(SYMENGINE_GMP_INCLUDE_DIRS /workspace/destdir/include) +set(HAVE_SYMENGINE_GMP True) +set(SYMENGINE_MPC_LIBRARIES /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/lib/libmpc.so) +set(SYMENGINE_MPC_INCLUDE_DIRS /workspace/destdir/include) +set(HAVE_SYMENGINE_MPC True) +set(SYMENGINE_MPFR_LIBRARIES /opt/x86_64-linux-gnu/x86_64-linux-gnu/sys-root/usr/local/lib/libmpfr.so) +set(SYMENGINE_MPFR_INCLUDE_DIRS /workspace/destdir/include) +set(HAVE_SYMENGINE_MPFR True) + +set(SYMENGINE_LLVM_COMPONENTS ) + +if (NOT "${SYMENGINE_LLVM_COMPONENTS}" STREQUAL "") + find_package(LLVM REQUIRED ${SYMENGINE_LLVM_COMPONENTS}) + llvm_map_components_to_libnames(llvm_libs ${SYMENGINE_LLVM_COMPONENTS}) + set(SYMENGINE_LIBRARIES ${SYMENGINE_LIBRARIES} ${llvm_libs}) +else() + set(SYMENGINE_LLVM_INCLUDE_DIRS) +endif() + +if (TARGET gmp) + # Avoid defining targets again + set(SYMENGINE_SKIP_DEPENDENCIES yes CACHE BOOL "Skip finding dependencies") +else() + set(SYMENGINE_SKIP_DEPENDENCIES no CACHE BOOL "Skip finding dependencies") +endif() + +foreach(PKG GMP;MPC;MPFR) + set(SYMENGINE_INCLUDE_DIRS ${SYMENGINE_INCLUDE_DIRS} ${SYMENGINE_${PKG}_INCLUDE_DIRS}) + set(SYMENGINE_LIBRARIES ${SYMENGINE_LIBRARIES} ${SYMENGINE_${PKG}_LIBRARIES}) +endforeach() + +#Use CMake provided find_package(BOOST) module +if (NOT "" STREQUAL "") + set(SYMENGINE_INCLUDE_DIRS ${SYMENGINE_INCLUDE_DIRS} ) + set(SYMENGINE_LIBRARIES ${SYMENGINE_LIBRARIES} ) +endif() + +list(REMOVE_DUPLICATES SYMENGINE_INCLUDE_DIRS) + +foreach(LIB "symengine") + # Remove linking of dependencies to later add them as targets + set_target_properties(${LIB} PROPERTIES IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE "") + set_target_properties(${LIB} PROPERTIES IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "") +endforeach() + +set(SYMENGINE_LIBRARIES symengine ${SYMENGINE_LIBRARIES}) +set(SYMENGINE_BUILD_TYPE "Release") +set(SYMENGINE_FOUND yes) diff --git a/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineConfigVersion.cmake b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineConfigVersion.cmake new file mode 100644 index 0000000..d805351 --- /dev/null +++ b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineConfigVersion.cmake @@ -0,0 +1,31 @@ +# This is a basic version file for the Config-mode of find_package(). +# It is used by write_basic_package_version_file() as input file for configure_file() +# to create a version-file which can be installed along a config.cmake file. +# +# The created file sets PACKAGE_VERSION_EXACT if the current version string and +# the requested version string are exactly the same and it sets +# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version. +# The variable CVF_VERSION must be set before calling configure_file(). + +set(PACKAGE_VERSION 0.4.0) + +if("${PACKAGE_VERSION}" VERSION_LESS "${PACKAGE_FIND_VERSION}" ) + set(PACKAGE_VERSION_COMPATIBLE FALSE) +else() + set(PACKAGE_VERSION_COMPATIBLE TRUE) + if( "${PACKAGE_FIND_VERSION}" STREQUAL "${PACKAGE_VERSION}") + set(PACKAGE_VERSION_EXACT TRUE) + endif() +endif() + +# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it: +if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "8" STREQUAL "") + return() +endif() + +# check that the installed version has the same 32/64bit-ness as the one which is currently searching: +if(NOT "${CMAKE_SIZEOF_VOID_P}" STREQUAL "8") + math(EXPR installedBits "8 * 8") + set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)") + set(PACKAGE_VERSION_UNSUITABLE TRUE) +endif() diff --git a/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineTargets-release.cmake b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineTargets-release.cmake new file mode 100644 index 0000000..7b95e19 --- /dev/null +++ b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineTargets-release.cmake @@ -0,0 +1,20 @@ +#---------------------------------------------------------------- +# Generated CMake target import file for configuration "Release". +#---------------------------------------------------------------- + +# Commands may need to know the format version. +set(CMAKE_IMPORT_FILE_VERSION 1) + +# Import target "symengine" for configuration "Release" +set_property(TARGET symengine APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) +set_target_properties(symengine PROPERTIES + IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE "gmp;mpc;mpfr" + IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libsymengine.so.0.4.0" + IMPORTED_SONAME_RELEASE "libsymengine.so.0.4" + ) + +list(APPEND _IMPORT_CHECK_TARGETS symengine ) +list(APPEND _IMPORT_CHECK_FILES_FOR_symengine "${_IMPORT_PREFIX}/lib/libsymengine.so.0.4.0" ) + +# Commands beyond this point should not need to know the version. +set(CMAKE_IMPORT_FILE_VERSION) diff --git a/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineTargets.cmake b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineTargets.cmake new file mode 100644 index 0000000..f580ef6 --- /dev/null +++ b/deps/libsymengine-0.4/lib/cmake/symengine/SymEngineTargets.cmake @@ -0,0 +1,90 @@ +# Generated by CMake + +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5) + message(FATAL_ERROR "CMake >= 2.6.0 required") +endif() +cmake_policy(PUSH) +cmake_policy(VERSION 2.6) +#---------------------------------------------------------------- +# Generated CMake target import file. +#---------------------------------------------------------------- + +# Commands may need to know the format version. +set(CMAKE_IMPORT_FILE_VERSION 1) + +# Protect against multiple inclusion, which would fail when already imported targets are added once more. +set(_targetsDefined) +set(_targetsNotDefined) +set(_expectedTargets) +foreach(_expectedTarget symengine) + list(APPEND _expectedTargets ${_expectedTarget}) + if(NOT TARGET ${_expectedTarget}) + list(APPEND _targetsNotDefined ${_expectedTarget}) + endif() + if(TARGET ${_expectedTarget}) + list(APPEND _targetsDefined ${_expectedTarget}) + endif() +endforeach() +if("${_targetsDefined}" STREQUAL "${_expectedTargets}") + unset(_targetsDefined) + unset(_targetsNotDefined) + unset(_expectedTargets) + set(CMAKE_IMPORT_FILE_VERSION) + cmake_policy(POP) + return() +endif() +if(NOT "${_targetsDefined}" STREQUAL "") + message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n") +endif() +unset(_targetsDefined) +unset(_targetsNotDefined) +unset(_expectedTargets) + + +# Compute the installation prefix relative to this file. +get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) +get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) +get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) +get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) +if(_IMPORT_PREFIX STREQUAL "/") + set(_IMPORT_PREFIX "") +endif() + +# Create imported target symengine +add_library(symengine SHARED IMPORTED) + +# Load information for each installed configuration. +get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) +file(GLOB CONFIG_FILES "${_DIR}/SymEngineTargets-*.cmake") +foreach(f ${CONFIG_FILES}) + include(${f}) +endforeach() + +# Cleanup temporary variables. +set(_IMPORT_PREFIX) + +# Loop over all imported files and verify that they actually exist +foreach(target ${_IMPORT_CHECK_TARGETS} ) + foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} ) + if(NOT EXISTS "${file}" ) + message(FATAL_ERROR "The imported target \"${target}\" references the file + \"${file}\" +but this file does not exist. Possible reasons include: +* The file was deleted, renamed, or moved to another location. +* An install or uninstall procedure did not complete successfully. +* The installation package was faulty and contained + \"${CMAKE_CURRENT_LIST_FILE}\" +but not all the files it references. +") + endif() + endforeach() + unset(_IMPORT_CHECK_FILES_FOR_${target}) +endforeach() +unset(_IMPORT_CHECK_TARGETS) + +# This file does not depend on other imported targets which have +# been exported from the same project but in a separate export set. + +# Commands beyond this point should not need to know the version. +set(CMAKE_IMPORT_FILE_VERSION) +cmake_policy(POP) diff --git a/deps/libsymengine-0.4/lib/libgmp.la b/deps/libsymengine-0.4/lib/libgmp.la new file mode 100755 index 0000000..8565664 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libgmp.la @@ -0,0 +1,41 @@ +# libgmp.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.6 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libgmp.so.10' + +# Names of this library. +library_names='libgmp.so.10.3.2 libgmp.so.10 libgmp.so' + +# The name of the static archive. +old_library='' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs='' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libgmp. +current=13 +age=3 +revision=2 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/workspace/destdir/lib' diff --git a/deps/libsymengine-0.4/lib/libgmp.so b/deps/libsymengine-0.4/lib/libgmp.so new file mode 120000 index 0000000..db67e23 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libgmp.so @@ -0,0 +1 @@ +libgmp.so.10.3.2 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libgmp.so.10 b/deps/libsymengine-0.4/lib/libgmp.so.10 new file mode 120000 index 0000000..db67e23 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libgmp.so.10 @@ -0,0 +1 @@ +libgmp.so.10.3.2 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libgmp.so.10.3.2 b/deps/libsymengine-0.4/lib/libgmp.so.10.3.2 new file mode 100755 index 0000000..779390a Binary files /dev/null and b/deps/libsymengine-0.4/lib/libgmp.so.10.3.2 differ diff --git a/deps/libsymengine-0.4/lib/libgmpxx.la b/deps/libsymengine-0.4/lib/libgmpxx.la new file mode 100755 index 0000000..82782d7 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libgmpxx.la @@ -0,0 +1,41 @@ +# libgmpxx.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.6 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libgmpxx.so.4' + +# Names of this library. +library_names='libgmpxx.so.4.5.2 libgmpxx.so.4 libgmpxx.so' + +# The name of the static archive. +old_library='' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs=' /workspace/destdir/lib/libgmp.la /workspace/destdir/x86_64-linux-gnu/lib/../lib64/libstdc++.la' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libgmpxx. +current=9 +age=5 +revision=2 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/workspace/destdir/lib' diff --git a/deps/libsymengine-0.4/lib/libgmpxx.so b/deps/libsymengine-0.4/lib/libgmpxx.so new file mode 120000 index 0000000..beb8eff --- /dev/null +++ b/deps/libsymengine-0.4/lib/libgmpxx.so @@ -0,0 +1 @@ +libgmpxx.so.4.5.2 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libgmpxx.so.4 b/deps/libsymengine-0.4/lib/libgmpxx.so.4 new file mode 120000 index 0000000..beb8eff --- /dev/null +++ b/deps/libsymengine-0.4/lib/libgmpxx.so.4 @@ -0,0 +1 @@ +libgmpxx.so.4.5.2 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libgmpxx.so.4.5.2 b/deps/libsymengine-0.4/lib/libgmpxx.so.4.5.2 new file mode 100755 index 0000000..4e72d4c Binary files /dev/null and b/deps/libsymengine-0.4/lib/libgmpxx.so.4.5.2 differ diff --git a/deps/libsymengine-0.4/lib/libmpc.la b/deps/libsymengine-0.4/lib/libmpc.la new file mode 100755 index 0000000..dd8a050 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libmpc.la @@ -0,0 +1,41 @@ +# libmpc.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.6 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libmpc.so.3' + +# Names of this library. +library_names='libmpc.so.3.1.0 libmpc.so.3 libmpc.so' + +# The name of the static archive. +old_library='' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs=' -L/workspace/destdir/lib /workspace/destdir/lib/libmpfr.la /workspace/destdir/lib/libgmp.la -lm' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libmpc. +current=4 +age=1 +revision=0 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/workspace/destdir/lib' diff --git a/deps/libsymengine-0.4/lib/libmpc.so b/deps/libsymengine-0.4/lib/libmpc.so new file mode 120000 index 0000000..e165ef7 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libmpc.so @@ -0,0 +1 @@ +libmpc.so.3.1.0 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libmpc.so.3 b/deps/libsymengine-0.4/lib/libmpc.so.3 new file mode 120000 index 0000000..e165ef7 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libmpc.so.3 @@ -0,0 +1 @@ +libmpc.so.3.1.0 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libmpc.so.3.1.0 b/deps/libsymengine-0.4/lib/libmpc.so.3.1.0 new file mode 100755 index 0000000..05d983a Binary files /dev/null and b/deps/libsymengine-0.4/lib/libmpc.so.3.1.0 differ diff --git a/deps/libsymengine-0.4/lib/libmpfr.la b/deps/libsymengine-0.4/lib/libmpfr.la new file mode 100755 index 0000000..1681448 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libmpfr.la @@ -0,0 +1,41 @@ +# libmpfr.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.6 Debian-2.4.6-9+local1 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libmpfr.so.6' + +# Names of this library. +library_names='libmpfr.so.6.0.2 libmpfr.so.6 libmpfr.so' + +# The name of the static archive. +old_library='' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='' + +# Libraries that this one depends upon. +dependency_libs=' -L/workspace/destdir/lib /workspace/destdir/lib/libgmp.la' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libmpfr. +current=6 +age=0 +revision=2 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/workspace/destdir/lib' diff --git a/deps/libsymengine-0.4/lib/libmpfr.so b/deps/libsymengine-0.4/lib/libmpfr.so new file mode 120000 index 0000000..7e91559 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libmpfr.so @@ -0,0 +1 @@ +libmpfr.so.6.0.2 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libmpfr.so.6 b/deps/libsymengine-0.4/lib/libmpfr.so.6 new file mode 120000 index 0000000..7e91559 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libmpfr.so.6 @@ -0,0 +1 @@ +libmpfr.so.6.0.2 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libmpfr.so.6.0.2 b/deps/libsymengine-0.4/lib/libmpfr.so.6.0.2 new file mode 100755 index 0000000..48e8d20 Binary files /dev/null and b/deps/libsymengine-0.4/lib/libmpfr.so.6.0.2 differ diff --git a/deps/libsymengine-0.4/lib/libsymengine.so b/deps/libsymengine-0.4/lib/libsymengine.so new file mode 120000 index 0000000..1942759 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libsymengine.so @@ -0,0 +1 @@ +libsymengine.so.0.4 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libsymengine.so.0.4 b/deps/libsymengine-0.4/lib/libsymengine.so.0.4 new file mode 120000 index 0000000..93f3971 --- /dev/null +++ b/deps/libsymengine-0.4/lib/libsymengine.so.0.4 @@ -0,0 +1 @@ +libsymengine.so.0.4.0 \ No newline at end of file diff --git a/deps/libsymengine-0.4/lib/libsymengine.so.0.4.0 b/deps/libsymengine-0.4/lib/libsymengine.so.0.4.0 new file mode 100755 index 0000000..98b8f51 Binary files /dev/null and b/deps/libsymengine-0.4/lib/libsymengine.so.0.4.0 differ diff --git a/deps/libsymengine-0.4/lib/pkgconfig/mpfr.pc b/deps/libsymengine-0.4/lib/pkgconfig/mpfr.pc new file mode 100644 index 0000000..f3d11ed --- /dev/null +++ b/deps/libsymengine-0.4/lib/pkgconfig/mpfr.pc @@ -0,0 +1,11 @@ +prefix=/workspace/destdir +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: mpfr +URL: https://www.mpfr.org/ +Description: C library for multiple-precision floating-point computations +Version: 4.0.2 +Libs: -L${libdir} -lmpfr -lgmp +Cflags: -I${includedir} diff --git a/src/SymEngine.jl b/src/SymEngine.jl index 1205aa3..99ffb51 100644 --- a/src/SymEngine.jl +++ b/src/SymEngine.jl @@ -51,6 +51,7 @@ include("simplify.jl") include("subs.jl") include("numerics.jl") include("calculus.jl") +include("linalgebra.jl") include("recipes.jl") include("dense-matrix.jl") diff --git a/src/linalgebra.jl b/src/linalgebra.jl new file mode 100644 index 0000000..d60d209 --- /dev/null +++ b/src/linalgebra.jl @@ -0,0 +1,4 @@ +import LinearAlgebra: dot + +"""Provide proper method for recursive call in LinearAlgebra.jl +""" dot(x::Basic,y::Basic) = x * y :: Basic; diff --git a/test/runtests.jl b/test/runtests.jl index a61c27c..031d86f 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,7 +1,7 @@ using SymEngine using Compat using Compat.Test -import Compat: MathConstants.γ, MathConstants.e, MathConstants.φ, MathConstants.catalan +import Compat: MathConstants.γ, MathConstants.e, MathConstants.φ, MathConstants.catalan, LinearAlgebra include("test-dense-matrix.jl") @@ -63,6 +63,11 @@ ex = sin(x*y) @test series(sin(x), x, 0, 2) == x @test series(sin(x), x, 0, 3) == x - x^3/6 +## linalgebra +v = [ symbols("v_$i") for i=1:4 ] +ex = Basic("v_1^2 + v_2^2 + v_3^2 + v_4^2") +@test LinearAlgebra.dot(v,v) == ex + ## ntheory @test mod(Basic(10), Basic(4)) == 2 for j in [-3, 3], p in [-5,5]