3 EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -e "use Config; print \$Config{ccflags}" OUTPUT_VARIABLE PERL_CCFLAGS)
4 EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -e "use Config; print \$Config{archlib}.\"/CORE\"" OUTPUT_VARIABLE PERL_CORE_DIR)
5 EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -e "use Config; print \$Config{ccldflags}" OUTPUT_VARIABLE PERL_CCLDFLAGS)
6 EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -e "use Config; print \$Config{installsitearch}" OUTPUT_VARIABLE PERL_SITEARCHDIR)
7 EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -e "use Config; print \$Config{installvendorarch}" OUTPUT_VARIABLE PERL_VENDORARCHDIR)
10 SET (PERL_INSTALL_DIR ${PERL_VENDORARCHDIR})
12 SET (PERL_INSTALL_DIR ${PERL_SITEARCHDIR})
13 ENDIF (USE_VENDORDIRS)
15 MESSAGE (STATUS "Perl executable: ${PERL_EXECUTABLE}")
16 MESSAGE (STATUS "Perl installation dir: ${PERL_INSTALL_DIR}")
20 COMMAND ${SWIG_EXECUTABLE} -perl -I${CMAKE_SOURCE_DIR}/src -o solv_perl.c ${CMAKE_SOURCE_DIR}/bindings/solv.i
21 COMMAND sed -i -e "s/SvTYPE(tsv) == SVt_PVHV/SvTYPE(tsv) == SVt_PVHV || SvTYPE(tsv) == SVt_PVAV/" solv_perl.c
22 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
23 DEPENDS ${CMAKE_SOURCE_DIR}/bindings/solv.i
27 ADD_DEFINITIONS(${PERL_CCFLAGS} -Wno-unused)
28 LINK_DIRECTORIES (${PERL_CORE_DIR})
29 INCLUDE_DIRECTORIES (${PERL_INCLUDE_PATH} ${PERL_CORE_DIR})
31 ADD_LIBRARY (bindings_perl SHARED solv_perl.c)
32 SET_TARGET_PROPERTIES (bindings_perl PROPERTIES PREFIX "" OUTPUT_NAME "solv")
33 SET_TARGET_PROPERTIES (bindings_perl PROPERTIES LINK_FLAGS "${PERL_CCLDFLAGS}")
34 TARGET_LINK_LIBRARIES (bindings_perl libsolvext libsolv ${SYSTEM_LIBRARIES})
36 INSTALL (TARGETS bindings_perl LIBRARY DESTINATION ${PERL_INSTALL_DIR})
37 INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/solv.pm DESTINATION ${PERL_INSTALL_DIR})