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/optimal_vars_finder.cpp
48 polynomial/primpart_content.cpp
49 polynomial/upoly_io.cpp
63 set(ginaclib_public_headers
83 ${CMAKE_CURRENT_BINARY_DIR}/function.h
109 parser/parse_context.h
112 set(ginaclib_private_headers
120 polynomial/gcd_euclid.h
121 polynomial/remainder.h
122 polynomial/normalize.h
124 polynomial/ring_traits.h
126 polynomial/cra_garner.h
127 polynomial/upoly_io.h
128 polynomial/prem_uvar.h
129 polynomial/eval_uvar.h
130 polynomial/interpolate_padic_uvar.h
131 polynomial/sr_gcd_uvar.h
132 polynomial/heur_gcd_uvar.h
133 polynomial/chinrem_gcd.h
134 polynomial/collect_vargs.h
135 polynomial/divide_in_z_p.h
136 polynomial/euclid_gcd_wrap.h
137 polynomial/eval_point_finder.h
138 polynomial/newton_interpolate.h
139 polynomial/optimal_vars_finder.h
141 polynomial/poly_cra.h
142 polynomial/primes_factory.h
143 polynomial/smod_helpers.h
147 add_library(ginac ${ginaclib_sources})
148 set_target_properties(ginac PROPERTIES
149 SOVERSION ${ginaclib_soversion}
150 VERSION ${ginaclib_version})
151 target_link_libraries(ginac ${CLN_LIBRARIES})
152 include_directories(${CMAKE_SOURCE_DIR}/ginac)
154 if (NOT BUILD_SHARED_LIBS)
155 set_target_properties(ginac PROPERTIES OUTPUT_NAME "ginac")
156 # Avoid the static library vs import library conflict (necessary for
158 set_target_properties(ginac PROPERTIES PREFIX "lib")
161 install(TARGETS ginac LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
162 RUNTIME DESTINATION "${BIN_INSTALL_DIR}"
163 ARCHIVE DESTINATION "${LIB_INSTALL_DIR}")
164 install(FILES ${ginaclib_public_headers} DESTINATION "${INCLUDE_INSTALL_DIR}/ginac")
167 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/function.h
168 COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/function.py -o ${CMAKE_CURRENT_BINARY_DIR}/function.h ${CMAKE_CURRENT_SOURCE_DIR}/function.hppy
169 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/function.hppy ${CMAKE_CURRENT_SOURCE_DIR}/function.py)
172 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/function.cpp
173 COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/function.py -o ${CMAKE_CURRENT_BINARY_DIR}/function.cpp ${CMAKE_CURRENT_SOURCE_DIR}/function.cppy
174 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/function.h ${CMAKE_CURRENT_SOURCE_DIR}/function.cppy ${CMAKE_CURRENT_SOURCE_DIR}/function.py)