1 cmake_minimum_required(VERSION 2.6)
33 parser/default_reader.cpp
35 parser/parse_binop_rhs.cpp
36 parser/parse_context.cpp
37 parser/parser_compat.cpp
39 polynomial/chinrem_gcd.cpp
40 polynomial/collect_vargs.cpp
41 polynomial/cra_garner.cpp
42 polynomial/divide_in_z_p.cpp
43 polynomial/gcd_uvar.cpp
45 polynomial/mod_gcd.cpp
46 polynomial/normalize.cpp
47 polynomial/optimal_vars_finder.cpp
49 polynomial/primpart_content.cpp
50 polynomial/remainder.cpp
51 polynomial/upoly_io.cpp
65 set(ginaclib_public_headers
86 ${CMAKE_CURRENT_BINARY_DIR}/function.h
112 parser/parse_context.h
115 set(ginaclib_private_headers
122 polynomial/gcd_euclid.h
123 polynomial/remainder.h
124 polynomial/normalize.h
126 polynomial/ring_traits.h
128 polynomial/cra_garner.h
129 polynomial/upoly_io.h
130 polynomial/prem_uvar.h
131 polynomial/eval_uvar.h
132 polynomial/interpolate_padic_uvar.h
133 polynomial/sr_gcd_uvar.h
134 polynomial/heur_gcd_uvar.h
135 polynomial/chinrem_gcd.h
136 polynomial/collect_vargs.h
137 polynomial/divide_in_z_p.h
138 polynomial/euclid_gcd_wrap.h
139 polynomial/eval_point_finder.h
140 polynomial/newton_interpolate.h
141 polynomial/optimal_vars_finder.h
143 polynomial/poly_cra.h
144 polynomial/primes_factory.h
145 polynomial/smod_helpers.h
149 add_library(ginac ${ginaclib_sources})
150 add_definitions(-DLIBEXECDIR="${LIBEXECDIR}/")
151 set_target_properties(ginac PROPERTIES
152 SOVERSION ${ginaclib_soversion}
153 VERSION ${ginaclib_version})
154 target_link_libraries(ginac ${CLN_LIBRARIES})
155 include_directories(${CMAKE_SOURCE_DIR}/ginac)
157 if (NOT BUILD_SHARED_LIBS)
158 set_target_properties(ginac PROPERTIES OUTPUT_NAME "ginac")
159 # Avoid the static library vs import library conflict (necessary for
161 set_target_properties(ginac PROPERTIES PREFIX "lib")
164 install(TARGETS ginac LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
165 RUNTIME DESTINATION "${BIN_INSTALL_DIR}"
166 ARCHIVE DESTINATION "${LIB_INSTALL_DIR}")
167 install(FILES ${ginaclib_public_headers} DESTINATION "${INCLUDE_INSTALL_DIR}/ginac")
170 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/function.h
171 COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/function.py -o ${CMAKE_CURRENT_BINARY_DIR}/function.h ${CMAKE_CURRENT_SOURCE_DIR}/function.hppy
172 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/function.hppy ${CMAKE_CURRENT_SOURCE_DIR}/function.py)
175 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/function.cpp
176 COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/function.py -o ${CMAKE_CURRENT_BINARY_DIR}/function.cpp ${CMAKE_CURRENT_SOURCE_DIR}/function.cppy
177 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/function.h ${CMAKE_CURRENT_SOURCE_DIR}/function.cppy ${CMAKE_CURRENT_SOURCE_DIR}/function.py)