File: FindPerlMore.cmake

package info (click to toggle)
qt4-perl 4.8.4-1.2
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 8,636 kB
  • ctags: 8,100
  • sloc: perl: 42,963; cpp: 28,039; makefile: 160; xml: 98; sh: 4
file content (78 lines) | stat: -rw-r--r-- 2,688 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# - Find Perl
# This module finds detailed info about how Perl is installed and determines
# where the include files and libraries are. This code sets the following
# variables:
#
#  PERL_INCLUDE_PATH = path to where perl.h can be found

if(PERL_INCLUDE_PATH)
   # Already in cache, be silent
   SET(PERL_HEADERS_FOUND TRUE)
endif (PERL_INCLUDE_PATH)		

IF(PERL_EXECUTABLE)
	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{archlib}"
   		OUTPUT_VARIABLE PERL_ARCH_LIB_DIR)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{sitearch}"
   		OUTPUT_VARIABLE PERL_SITE_ARCH_DIR)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{vendorarch}"
   		OUTPUT_VARIABLE PERL_VENDOR_ARCH_DIR)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{sitelib}"
   		OUTPUT_VARIABLE PERL_SITE_LIB_DIR)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{vendorlib}"
   		OUTPUT_VARIABLE PERL_VENDOR_LIB_DIR)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{version}"
   		OUTPUT_VARIABLE PERL_VERSION)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{ccflags}"
   		OUTPUT_VARIABLE PERL_CXX_FLAGS)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{ccdlflags}"
   		OUTPUT_VARIABLE PERL_CCDL_FLAGS)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -MFile::Spec -e "print '-L' . File::Spec->catdir(\$Config{archlibexp}, 'CORE')"
   		OUTPUT_VARIABLE PERL_EXTRA_LIB_PATHS)

	EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{perllibs}"
   		OUTPUT_VARIABLE PERL_LIBS)

	FIND_PATH(PERL_INCLUDE_PATH 
  		NAMES perl.h
  		PATHS ${PERL_ARCH_LIB_DIR}/CORE
  	)

	if(PERL_INCLUDE_PATH)
		SET(PERL_HEADERS_FOUND TRUE)
	endif (PERL_INCLUDE_PATH)

	MARK_AS_ADVANCED(
	  PERL_INCLUDE_PATH
	  )
ENDIF(PERL_EXECUTABLE)

IF(PERL_HEADERS_FOUND)
  IF(NOT PERL_FIND_QUIETLY)
    MESSAGE(STATUS "Perl headers found: ${PERL_INCLUDE_PATH}")
  ENDIF(NOT PERL_FIND_QUIETLY)
ELSE(PERL_HEADERS_FOUND)
  IF(PERL_FIND_HEADERS_REQUIRED)
    MESSAGE(FATAL_ERROR "Could not find Perl headers")
  ENDIF(PERL_FIND_HEADERS_REQUIRED)
ENDIF(PERL_HEADERS_FOUND)

IF ( PERL_LIBRARY MATCHES .*-NOTFOUND )
  EXECUTE_PROCESS ( COMMAND ${PERL_EXECUTABLE}
                    -MConfig -e "print \$Config{libperl}"
                    OUTPUT_VARIABLE PERL_OUTPUT
                    RESULT_VARIABLE PERL_RETURN_VALUE )
  IF ( NOT PERL_RETURN_VALUE )
    FIND_LIBRARY ( PERL_LIBRARY NAMES ${PERL_OUTPUT}
                                PATHS ${PERL_INCLUDE_PATH} )
  ENDIF ( NOT PERL_RETURN_VALUE )
ENDIF ( PERL_LIBRARY MATCHES .*-NOTFOUND )