Remove MakeMaker
parent
a728d9e0e8
commit
c97d73db9f
|
|
@ -83,7 +83,6 @@ mark_as_advanced(
|
|||
ZM_MYSQL_ENGINE
|
||||
ZM_NO_MMAP
|
||||
CMAKE_INSTALL_FULL_BINDIR
|
||||
ZM_PERL_MM_PARMS
|
||||
ZM_PERL_SEARCH_PATH
|
||||
ZM_TARGET_DISTRO
|
||||
ZM_PATH_MAP
|
||||
|
|
@ -198,16 +197,9 @@ set(ZM_NO_PCRE "OFF" CACHE BOOL
|
|||
"Set to ON to skip libpcre2 checks and force building ZM without libpcre2. default: OFF")
|
||||
set(ZM_NO_RTSPSERVER "OFF" CACHE BOOL
|
||||
"Set to ON to skip building ZM with rtsp server support. default: OFF")
|
||||
set(ZM_PERL_MM_PARMS INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 CACHE STRING
|
||||
"By default, ZoneMinder's Perl modules are installed into the Vendor folders,
|
||||
as defined by your installation of Perl. You can change that here. Consult Perl's
|
||||
MakeMaker documentation for a definition of acceptable parameters. If you set this
|
||||
to something that causes the modules to be installed outside Perl's normal search
|
||||
path, then you will also need to set ZM_PERL_SEARCH_PATH accordingly.")
|
||||
set(ZM_PERL_SEARCH_PATH "" CACHE PATH
|
||||
"Use to add a folder to your Perl's search path. This will need to be set in cases
|
||||
where ZM_PERL_MM_PARMS has been modified such that ZoneMinder's Perl modules are
|
||||
installed outside Perl's default search path.")
|
||||
"Use to override the Perl module installation path. By default, ZoneMinder
|
||||
installs Perl modules to Perl's vendorlib (or sitelib on FreeBSD).")
|
||||
set(ZM_TARGET_DISTRO "" CACHE STRING
|
||||
"Build ZoneMinder for a specific distribution. Currently, valid names are: fc, el, OS13, FreeBSD")
|
||||
set(ZM_DETECT_SYSTEMD "ON" CACHE BOOL
|
||||
|
|
@ -270,17 +262,12 @@ elseif(ZM_TARGET_DISTRO STREQUAL "FreeBSD")
|
|||
set(ZM_CONFIG_SUBDIR "/usr/local/etc/zm/conf.d")
|
||||
set(ZM_WEBDIR "/usr/local/share/zoneminder/www")
|
||||
set(ZM_CGIDIR "/usr/local/libexec/zoneminder/cgi-bin")
|
||||
set(ZM_PERL_MM_PARMS "INSTALLDIRS=site")
|
||||
endif()
|
||||
|
||||
if(BUILD_MAN)
|
||||
message(STATUS "Building man pages: Yes (default)")
|
||||
set(ZM_PERL_MM_PARMS_FULL ${ZM_PERL_MM_PARMS})
|
||||
else()
|
||||
message(STATUS "Building man pages: No")
|
||||
list(APPEND ZM_PERL_MM_PARMS_FULL ${ZM_PERL_MM_PARMS}
|
||||
"INSTALLMAN1DIR=none"
|
||||
"INSTALLMAN3DIR=none")
|
||||
endif()
|
||||
|
||||
# Required for certain checks to work
|
||||
|
|
@ -623,13 +610,34 @@ if(NOT PERL_FOUND)
|
|||
message(FATAL_ERROR "ZoneMinder requires Perl 5.6.0 or newer but it was not found on your system")
|
||||
endif()
|
||||
|
||||
# Determine Perl module installation directory
|
||||
# Use vendorlib by default, sitelib for FreeBSD
|
||||
if(ZM_TARGET_DISTRO STREQUAL "FreeBSD")
|
||||
execute_process(
|
||||
COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{sitelib}"
|
||||
OUTPUT_VARIABLE ZM_PERL_INSTALLDIR
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
else()
|
||||
execute_process(
|
||||
COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{vendorlib}"
|
||||
OUTPUT_VARIABLE ZM_PERL_INSTALLDIR
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
endif()
|
||||
|
||||
# Allow override via ZM_PERL_SEARCH_PATH
|
||||
if(ZM_PERL_SEARCH_PATH)
|
||||
set(ZM_PERL_INSTALLDIR "${ZM_PERL_SEARCH_PATH}")
|
||||
endif()
|
||||
|
||||
message(STATUS "Perl modules will be installed to: ${ZM_PERL_INSTALLDIR}")
|
||||
|
||||
# Checking for perl modules requires FindPerlModules.cmake
|
||||
# Check all required modules at once
|
||||
# TODO: Add checking for the optional modules
|
||||
find_package(
|
||||
PerlModules COMPONENTS Sys::Syslog DBI DBD::mysql
|
||||
Getopt::Long Time::HiRes Date::Manip LWP::UserAgent
|
||||
ExtUtils::MakeMaker ${ZM_MMAP_PERLPACKAGE})
|
||||
${ZM_MMAP_PERLPACKAGE})
|
||||
if(NOT PERLMODULES_FOUND)
|
||||
message(WARNING "Not all required perl modules were found on your system")
|
||||
endif()
|
||||
|
|
|
|||
|
|
@ -1,18 +1,6 @@
|
|||
# CMakeLists.txt for the ZoneMinder ONVIF modules.
|
||||
|
||||
# If this is an out-of-source build, copy the files we need to the binary directory
|
||||
if(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/Makefile.PL" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/lib" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}" PATTERN "*.in" EXCLUDE)
|
||||
endif()
|
||||
|
||||
# MAKEMAKER_NOECHO_COMMAND previously defined in /scripts/zoneminder/CMakeLists.txt
|
||||
|
||||
# Add build target for the perl modules
|
||||
add_custom_target(zmonvifmodules ALL perl Makefile.PL ${ZM_PERL_MM_PARMS_FULL} FIRST_MAKEFILE=MakefilePerl DESTDIR="${CMAKE_CURRENT_BINARY_DIR}/output" ${MAKEMAKER_NOECHO_COMMAND} COMMAND make -f MakefilePerl pure_install COMMENT "Building ZoneMinder perl ONVIF proxy module")
|
||||
|
||||
# Add install target for the perl modules
|
||||
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/output/" DESTINATION "/")
|
||||
|
||||
# Add additional files and directories to make clean
|
||||
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "output;blib;pm_to_blib;MakefilePerl")
|
||||
# Install the .pm files from source
|
||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/lib/"
|
||||
DESTINATION "${ZM_PERL_INSTALLDIR}"
|
||||
FILES_MATCHING PATTERN "*.pm")
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
use 5.006;
|
||||
use ExtUtils::MakeMaker;
|
||||
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
|
||||
# the contents of the Makefile that is written.
|
||||
WriteMakefile(
|
||||
NAME => 'ONVIF',
|
||||
# VERSION_FROM => 'lib/ZoneMinder/Base.pm', # finds $VERSION
|
||||
PREREQ_PM => {}, # e.g., Module::Name => 1.1
|
||||
# No need to specify perl modules. MakeMaker will find them automatically
|
||||
($] >= 5.005 ? ## Add these new keywords supported since 5.005
|
||||
(#ABSTRACT_FROM => 'lib/ZoneMinder.pm', # retrieve abstract from module
|
||||
AUTHOR => 'Jan Hochstein') : ()),
|
||||
);
|
||||
|
|
@ -1,18 +1,6 @@
|
|||
# CMakeLists.txt for the ZoneMinder ONVIF proxy module.
|
||||
|
||||
# If this is an out-of-source build, copy the files we need to the binary directory
|
||||
if(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/Makefile.PL" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/lib" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}" PATTERN "*.in" EXCLUDE)
|
||||
endif()
|
||||
|
||||
# MAKEMAKER_NOECHO_COMMAND previously defined in /scripts/zoneminder/CMakeLists.txt
|
||||
|
||||
# Add build target for the perl modules
|
||||
add_custom_target(zmonvifproxy ALL perl Makefile.PL ${ZM_PERL_MM_PARMS_FULL} FIRST_MAKEFILE=MakefilePerl DESTDIR=${CMAKE_CURRENT_BINARY_DIR}/output ${MAKEMAKER_NOECHO_COMMAND} COMMAND make -f MakefilePerl pure_install COMMENT "Building ZoneMinder perl ONVIF proxy module")
|
||||
|
||||
# Add install target for the perl modules
|
||||
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/output/" DESTINATION "/")
|
||||
|
||||
# Add additional files and directories to make clean
|
||||
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "output;blib;pm_to_blib;MakefilePerl")
|
||||
# Install the .pm files from source
|
||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/lib/"
|
||||
DESTINATION "${ZM_PERL_INSTALLDIR}"
|
||||
FILES_MATCHING PATTERN "*.pm")
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
use 5.006;
|
||||
use ExtUtils::MakeMaker;
|
||||
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
|
||||
# the contents of the Makefile that is written.
|
||||
WriteMakefile(
|
||||
NAME => 'ONVIF',
|
||||
# VERSION_FROM => 'lib/ZoneMinder/Base.pm', # finds $VERSION
|
||||
PREREQ_PM => {}, # e.g., Module::Name => 1.1
|
||||
# No need to specify perl modules. MakeMaker will find them automatically
|
||||
($] >= 5.005 ? ## Add these new keywords supported since 5.005
|
||||
(#ABSTRACT_FROM => 'lib/ZoneMinder.pm', # retrieve abstract from module
|
||||
AUTHOR => 'Jan Hochstein') : ()),
|
||||
);
|
||||
|
|
@ -1,16 +1,5 @@
|
|||
# CMakeLists.txt for the ZoneMinder perl module.
|
||||
|
||||
# If this is an out-of-source build, copy the files we need to the binary directory
|
||||
if(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/Changes" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/Makefile.PL" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/MANIFEST" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/META.yml" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/README" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/t" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/lib" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}" PATTERN "*.in" EXCLUDE)
|
||||
endif()
|
||||
|
||||
# Create files from the .in files
|
||||
configure_file(lib/ZoneMinder/Base.pm.in "${CMAKE_CURRENT_BINARY_DIR}/lib/ZoneMinder/Base.pm" @ONLY)
|
||||
configure_file(lib/ZoneMinder/Config.pm.in "${CMAKE_CURRENT_BINARY_DIR}/lib/ZoneMinder/Config.pm" @ONLY)
|
||||
|
|
@ -18,17 +7,13 @@ configure_file(lib/ZoneMinder/Memory.pm.in "${CMAKE_CURRENT_BINARY_DIR}/lib/Zone
|
|||
configure_file(lib/ZoneMinder/ConfigData.pm.in "${CMAKE_CURRENT_BINARY_DIR}/lib/ZoneMinder/ConfigData.pm" @ONLY)
|
||||
configure_file(lib/ZoneMinder/ONVIF.pm.in "${CMAKE_CURRENT_BINARY_DIR}/lib/ZoneMinder/ONVIF.pm" @ONLY)
|
||||
|
||||
if(CMAKE_VERBOSE_MAKEFILE)
|
||||
set(MAKEMAKER_NOECHO_COMMAND "")
|
||||
else()
|
||||
set(MAKEMAKER_NOECHO_COMMAND "NOECHO=\"1>/dev/null\"")
|
||||
endif()
|
||||
# Install the generated .pm files (from .in templates)
|
||||
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib/"
|
||||
DESTINATION "${ZM_PERL_INSTALLDIR}"
|
||||
FILES_MATCHING PATTERN "*.pm")
|
||||
|
||||
# Add build target for the perl modules
|
||||
add_custom_target(zmperlmodules ALL perl Makefile.PL ${ZM_PERL_MM_PARMS_FULL} FIRST_MAKEFILE=MakefilePerl DESTDIR="${CMAKE_CURRENT_BINARY_DIR}/output" ${MAKEMAKER_NOECHO_COMMAND} COMMAND make -f MakefilePerl pure_install COMMENT "Building ZoneMinder perl modules")
|
||||
|
||||
# Add install target for the perl modules
|
||||
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/output/" DESTINATION "/")
|
||||
|
||||
# Add additional files and directories to make clean
|
||||
set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "output;blib;pm_to_blib;MakefilePerl")
|
||||
# Install the static .pm files from source
|
||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/lib/"
|
||||
DESTINATION "${ZM_PERL_INSTALLDIR}"
|
||||
FILES_MATCHING PATTERN "*.pm"
|
||||
PATTERN "*.in" EXCLUDE)
|
||||
|
|
|
|||
|
|
@ -1,6 +0,0 @@
|
|||
Revision history for Perl extension ZoneMinder.
|
||||
|
||||
0.01 Thu Dec 15 17:22:29 2005
|
||||
- original version; created by h2xs 1.23 with options
|
||||
-XA -b 5.6.0 -n ZoneMinder
|
||||
|
||||
|
|
@ -1 +0,0 @@
|
|||
\.pm\.in$
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
Changes
|
||||
Makefile.PL
|
||||
MANIFEST
|
||||
README
|
||||
t/ZoneMinder.t
|
||||
lib/ZoneMinder.pm
|
||||
META.yml Module meta-data (added by MakeMaker)
|
||||
|
|
@ -1 +0,0 @@
|
|||
\.pm\.in$
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
# http://module-build.sourceforge.net/META-spec.html
|
||||
#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
|
||||
name: ZoneMinder
|
||||
version: 1.23.2
|
||||
version_from: lib/ZoneMinder/Base.pm
|
||||
installdirs: site
|
||||
requires:
|
||||
|
||||
distribution_type: module
|
||||
generated_by: ExtUtils::MakeMaker version 6.17
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
use 5.006;
|
||||
use ExtUtils::MakeMaker;
|
||||
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
|
||||
# the contents of the Makefile that is written.
|
||||
WriteMakefile(
|
||||
NAME => 'ZoneMinder',
|
||||
VERSION_FROM => 'lib/ZoneMinder/Base.pm', # finds $VERSION
|
||||
PREREQ_PM => {}, # e.g., Module::Name => 1.1
|
||||
# No need to specify perl modules. MakeMaker will find them automatically
|
||||
($] >= 5.005 ? ## Add these new keywords supported since 5.005
|
||||
(ABSTRACT_FROM => 'lib/ZoneMinder.pm', # retrieve abstract from module
|
||||
AUTHOR => 'Philip Coombes <philip.coombes@zoneminder.com>') : ()),
|
||||
);
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
ZoneMinder version 0.01
|
||||
=======================
|
||||
|
||||
The README is used to introduce the module and provide instructions on
|
||||
how to install the module, any machine dependencies it may have (for
|
||||
example C compilers and installed libraries) and any other information
|
||||
that should be provided before the module is installed.
|
||||
|
||||
A README file is required for CPAN modules since CPAN extracts the
|
||||
README file from a module distribution so that people browsing the
|
||||
archive can use it get an idea of the modules uses. It is usually a
|
||||
good idea to provide version information here so that people can
|
||||
decide whether fixes for the module are worth downloading.
|
||||
|
||||
INSTALLATION
|
||||
|
||||
To install this module type the following:
|
||||
|
||||
perl Makefile.PL
|
||||
make
|
||||
make test
|
||||
make install
|
||||
|
||||
DEPENDENCIES
|
||||
|
||||
This module requires these other modules and libraries:
|
||||
|
||||
blah blah blah
|
||||
|
||||
COPYRIGHT AND LICENCE
|
||||
|
||||
Put the correct copyright and licence information here.
|
||||
|
||||
Copyright (C) 2005 by Philip Coombes
|
||||
|
||||
This library is free software; you can redistribute it and/or modify
|
||||
it under the same terms as Perl itself, either Perl version 5.8.3 or,
|
||||
at your option, any later version of Perl 5 you may have available.
|
||||
|
||||
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
# Before `make install' is performed this script should be runnable with
|
||||
# `make test'. After `make install' it should work as `perl ZoneMinder.t'
|
||||
|
||||
#########################
|
||||
|
||||
# change 'tests => 1' to 'tests => last_test_to_print';
|
||||
|
||||
use Test;
|
||||
BEGIN { plan tests => 1 };
|
||||
use ZoneMinder;
|
||||
ok(1); # If we made it this far, we're ok.
|
||||
|
||||
#########################
|
||||
|
||||
# Insert your test code below, the Test::More module is use()ed here so read
|
||||
# its man page ( perldoc Test::More ) for help writing this test script.
|
||||
|
||||
Loading…
Reference in New Issue