Changed perl paths again, this time to <prefix>/<libdir>/perl5 and few improvements

This commit is contained in:
mastertheknife 2013-10-03 15:08:09 +03:00
parent 5fce4c516b
commit f043c6e955
5 changed files with 25 additions and 22 deletions

View File

@ -74,6 +74,7 @@ check_include_file("linux/videodev2.h" HAVE_LINUX_VIDEODEV2_H)
check_include_file("execinfo.h" HAVE_EXECINFO_H) check_include_file("execinfo.h" HAVE_EXECINFO_H)
check_include_file("sys/sendfile.h" HAVE_SYS_SENDFILE_H) check_include_file("sys/sendfile.h" HAVE_SYS_SENDFILE_H)
check_include_file("sys/syscall.h" HAVE_SYS_SYSCALL_H) check_include_file("sys/syscall.h" HAVE_SYS_SYSCALL_H)
check_function_exists("syscall" HAVE_SYSCALL)
check_function_exists("sendfile" HAVE_SENDFILE) check_function_exists("sendfile" HAVE_SENDFILE)
check_function_exists("backtrace" HAVE_DECL_BACKTRACE) check_function_exists("backtrace" HAVE_DECL_BACKTRACE)
check_function_exists("posix_memalign" HAVE_POSIX_MEMALIGN) check_function_exists("posix_memalign" HAVE_POSIX_MEMALIGN)
@ -83,6 +84,7 @@ check_type_size("siginfo_t" SIGINFO_T)
check_type_size("ucontext_t" UCONTEXT_T) check_type_size("ucontext_t" UCONTEXT_T)
check_type_size("struct sigcontext" STRUCT_SIGCONTEXT) check_type_size("struct sigcontext" STRUCT_SIGCONTEXT)
check_struct_has_member("struct sigcontext" eip signal.h HAVE_STRUCT_SIGCONTEXT_EIP) check_struct_has_member("struct sigcontext" eip signal.h HAVE_STRUCT_SIGCONTEXT_EIP)
check_struct_has_member("struct sigcontext" rip signal.h HAVE_STRUCT_SIGCONTEXT_RIP)
# *** LIBRARY CHECKS *** # *** LIBRARY CHECKS ***
@ -330,7 +332,7 @@ set(WEB_PREFIX "${ZM_WEBDIR}")
set(CGI_PREFIX "${ZM_CGIDIR}") set(CGI_PREFIX "${ZM_CGIDIR}")
set(WEB_USER "${ZM_WEB_USER}") set(WEB_USER "${ZM_WEB_USER}")
set(WEB_GROUP "${ZM_WEB_GROUP}") set(WEB_GROUP "${ZM_WEB_GROUP}")
set(EXTRA_PERL_LIB "use lib '${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/zoneminder/perl5';") set(EXTRA_PERL_LIB "use lib '${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/perl5';")
# Generate files from the .in files # Generate files from the .in files
configure_file(zoneminder-config.cmake config.h @ONLY) configure_file(zoneminder-config.cmake config.h @ONLY)

View File

@ -9,6 +9,7 @@ cmake is an alternative to the autotools collection (libtool, autoconf, automake
* Newer than autotools and is being actively developed. * Newer than autotools and is being actively developed.
* Generates colored makefiles with progress indicator. * Generates colored makefiles with progress indicator.
* Slightly faster because its based on C and not bash. * Slightly faster because its based on C and not bash.
* Lots of documentation, unlike autotools: http://www.cmake.org/cmake/help/cmake2.6docs.html
At this point, its still possible to use autotools for the ZoneMinder project. Choosing cmake or autotools is now a matter of preference. At this point, its still possible to use autotools for the ZoneMinder project. Choosing cmake or autotools is now a matter of preference.
Hopefully in the future, cmake will become the default way to install ZoneMinder. Hopefully in the future, cmake will become the default way to install ZoneMinder.

View File

@ -3,25 +3,22 @@
# Process the perl modules subdirectory # Process the perl modules subdirectory
add_subdirectory(ZoneMinder ZoneMinder) add_subdirectory(ZoneMinder ZoneMinder)
# Create the directory for the final files to be copied
file(MAKE_DIRECTORY output)
# Create files from the .in files # Create files from the .in files
configure_file(zmaudit.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmaudit.pl @ONLY) configure_file(zmaudit.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmaudit.pl @ONLY)
configure_file(zmcontrol.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmcontrol.pl @ONLY) configure_file(zmcontrol.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmcontrol.pl @ONLY)
configure_file(zmdc.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmdc.pl @ONLY) configure_file(zmdc.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmdc.pl @ONLY)
configure_file(zmfilter.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmfilter.pl @ONLY) configure_file(zmfilter.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmfilter.pl @ONLY)
configure_file(zmpkg.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmpkg.pl @ONLY) configure_file(zmpkg.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmpkg.pl @ONLY)
configure_file(zmtrack.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmtrack.pl @ONLY) configure_file(zmtrack.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmtrack.pl @ONLY)
configure_file(zmtrigger.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmtrigger.pl @ONLY) configure_file(zmtrigger.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmtrigger.pl @ONLY)
configure_file(zmupdate.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmupdate.pl @ONLY) configure_file(zmupdate.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmupdate.pl @ONLY)
configure_file(zmvideo.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmvideo.pl @ONLY) configure_file(zmvideo.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmvideo.pl @ONLY)
configure_file(zmwatch.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmwatch.pl @ONLY) configure_file(zmwatch.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmwatch.pl @ONLY)
configure_file(zmx10.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmx10.pl @ONLY) configure_file(zmx10.pl.in ${CMAKE_CURRENT_SOURCE_DIR}/zmx10.pl @ONLY)
#configure_file(zmdbbackup.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmdbbackup @ONLY) #configure_file(zmdbbackup.in ${CMAKE_CURRENT_SOURCE_DIR}/zmdbbackup @ONLY)
#configure_file(zmdbrestore.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmdbrestore @ONLY) #configure_file(zmdbrestore.in ${CMAKE_CURRENT_SOURCE_DIR}/zmdbrestore @ONLY)
#configure_file(zm.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zm @ONLY) #configure_file(zm.in ${CMAKE_CURRENT_SOURCE_DIR}/zm @ONLY)
#configure_file(zmeventdump.in ${CMAKE_CURRENT_SOURCE_DIR}/output/zmeventdump @ONLY) #configure_file(zmeventdump.in ${CMAKE_CURRENT_SOURCE_DIR}/zmeventdump @ONLY)
# Install the perl scripts # Install the perl scripts
install(DIRECTORY output/ DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}" FILE_PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) install(FILES zmaudit.pl zmcontrol.pl zmdc.pl zmfilter.pl zmpkg.pl zmtrack.pl zmtrigger.pl zmupdate.pl zmvideo.pl zmwatch.pl zmx10.pl DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}" FILE_PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)

View File

@ -7,7 +7,7 @@ configure_file(lib/ZoneMinder/Memory.pm.in ${CMAKE_CURRENT_SOURCE_DIR}/lib/ZoneM
configure_file(lib/ZoneMinder/ConfigData.pm.in ${CMAKE_CURRENT_SOURCE_DIR}/lib/ZoneMinder/ConfigData.pm @ONLY) configure_file(lib/ZoneMinder/ConfigData.pm.in ${CMAKE_CURRENT_SOURCE_DIR}/lib/ZoneMinder/ConfigData.pm @ONLY)
# Add build target for the perl modules # Add build target for the perl modules
add_custom_target(zmperlmodules ALL perl Makefile.PL FIRST_MAKEFILE=MakefilePerl INSTALL_BASE=output INSTALLPRIVLIB="output/${CMAKE_INSTALL_DATADIR}/zoneminder/perl5" INSTALLARCHLIB="optout/${CMAKE_INSTALL_DATADIR}/zoneminder/perl5/arch" INSTALLSITELIB="output/${CMAKE_INSTALL_DATADIR}/zoneminder/perl5" INSTALLSITEARCH="optout/${CMAKE_INSTALL_DATADIR}/zoneminder/perl5/arch" COMMAND make --makefile=MakefilePerl COMMAND make --makefile=MakefilePerl pure_install COMMENT "Building ZoneMinder perl modules") add_custom_target(zmperlmodules ALL perl Makefile.PL FIRST_MAKEFILE=MakefilePerl INSTALL_BASE=output INSTALLPRIVLIB="output/${CMAKE_INSTALL_LIBDIR}/perl5" INSTALLARCHLIB="optout/${CMAKE_INSTALL_LIBDIR}/perl5/arch" INSTALLSITELIB="output/${CMAKE_INSTALL_LIBDIR}/perl5" INSTALLSITEARCH="optout/${CMAKE_INSTALL_LIBDIR}/perl5/arch" COMMAND make --makefile=MakefilePerl COMMAND make --makefile=MakefilePerl pure_install COMMENT "Building ZoneMinder perl modules")
# Add install target for the perl modules # Add install target for the perl modules
install(DIRECTORY output/ DESTINATION "${CMAKE_INSTALL_PREFIX}") install(DIRECTORY output/ DESTINATION "${CMAKE_INSTALL_PREFIX}")

View File

@ -9,6 +9,7 @@
#cmakedefine HAVE_EXECINFO_H 1 #cmakedefine HAVE_EXECINFO_H 1
#cmakedefine HAVE_SYS_SENDFILE_H 1 #cmakedefine HAVE_SYS_SENDFILE_H 1
#cmakedefine HAVE_SYS_SYSCALL_H 1 #cmakedefine HAVE_SYS_SYSCALL_H 1
#cmakedefine HAVE_SYSCALL 1
#cmakedefine HAVE_SENDFILE 1 #cmakedefine HAVE_SENDFILE 1
#cmakedefine HAVE_DECL_BACKTRACE 1 #cmakedefine HAVE_DECL_BACKTRACE 1
#cmakedefine HAVE_POSIX_MEMALIGN 1 #cmakedefine HAVE_POSIX_MEMALIGN 1
@ -18,9 +19,9 @@
#cmakedefine HAVE_UCONTEXT_T 1 #cmakedefine HAVE_UCONTEXT_T 1
#cmakedefine HAVE_STRUCT_SIGCONTEXT 1 #cmakedefine HAVE_STRUCT_SIGCONTEXT 1
#cmakedefine HAVE_STRUCT_SIGCONTEXT_EIP 1 #cmakedefine HAVE_STRUCT_SIGCONTEXT_EIP 1
#cmakedefine HAVE_STRUCT_SIGCONTEXT_RIP 1
/* Library checks and their header files */ /* Library checks and their header files */
#cmakedefine HAVE_LIBZLIB 1 #cmakedefine HAVE_LIBZLIB 1
#cmakedefine HAVE_ZLIB_H 1 #cmakedefine HAVE_ZLIB_H 1
#cmakedefine HAVE_LIBJPEG 1 #cmakedefine HAVE_LIBJPEG 1
@ -52,6 +53,8 @@
#cmakedefine HAVE_LIBSWSCALE_SWSCALE_H 1 #cmakedefine HAVE_LIBSWSCALE_SWSCALE_H 1
/* Authenication checks */ /* Authenication checks */
#cmakedefine HAVE_MD5_OPENSSL 1
#cmakedefine HAVE_MD5_GNUTLS 1
#cmakedefine HAVE_DECL_MD5 1 #cmakedefine HAVE_DECL_MD5 1
#cmakedefine HAVE_DECL_GNUTLS_FINGERPRINT 1 #cmakedefine HAVE_DECL_GNUTLS_FINGERPRINT 1