Build: Plumb perl include path

Thanks to @kortschak for contributing to this fix
Co-authored-by: Dan Kortschak <dan@kortschak.io>
This commit is contained in:
Vojtech Kral 2018-08-16 16:34:59 +02:00 committed by bubnikv
parent 93b8f3147c
commit 267712eb32
3 changed files with 14 additions and 7 deletions

View file

@ -1,5 +1,4 @@
# Boost 1.63 requires CMake 3.7 or newer
cmake_minimum_required(VERSION 2.8)
cmake_minimum_required(VERSION 3.2)
project(Slic3r)
@ -36,10 +35,18 @@ else()
set(ENV_PATH_SEPARATOR ":")
endif()
set(ENV{PATH} "${PROJECT_SOURCE_DIR}/local-lib/bin${ENV_PATH_SEPARATOR}$ENV{PATH}")
set(ENV{PERL5LIB} "${PROJECT_SOURCE_DIR}/local-lib/lib/perl${ENV_PATH_SEPARATOR}$ENV{PERL5LIB}")
set(PERL_INCLUDE "${PROJECT_SOURCE_DIR}/local-lib/lib/perl5${ENV_PATH_SEPARATOR}$ENV{PERL5LIB}")
message("PATH: $ENV{PATH}")
message("PERL5LIB: $ENV{PERL5LIB}")
message("PERL_INCLUDE: ${PERL_INCLUDE}")
find_package(Perl REQUIRED)
if (WIN32)
# On Windows passing the PERL5LIB variable causes various problems (such as with MAX_PATH and others),
# basically I've found no good way to do it on Windows.
set(PERL5LIB_ENV_CMD "")
else()
set(PERL5LIB_ENV_CMD ${CMAKE_COMMAND} -E env PERL5LIB=${PERL_INCLUDE})
endif()
# CMAKE_PREFIX_PATH is used to point CMake to the remaining dependencies (Boost, TBB, ...)
# We pick it from environment if it is not defined in another way