CMakeLists.txt 17.7 KB
Newer Older
1
2
project(poppler)

3
cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
4
5
6
7
8
9
10
11
12

set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)

include(PopplerDefaults)
include(PopplerMacros)
include(MacroOptionalFindPackage)
find_package(PkgConfig)
include(MacroEnsureVersion)
include(MacroBoolTo01)
13
find_package(Threads)
14
15
include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)
16

17
set(POPPLER_MAJOR_VERSION "0")
Albert Astals Cid's avatar
0.18.0    
Albert Astals Cid committed
18
19
set(POPPLER_MINOR_VERSION "18")
set(POPPLER_MICRO_VERSION "0")
20
set(POPPLER_VERSION "${POPPLER_MAJOR_VERSION}.${POPPLER_MINOR_VERSION}.${POPPLER_MICRO_VERSION}")
21
22
23
24
25

# command line switches
option(ENABLE_XPDF_HEADERS "Install unsupported xpdf headers." OFF)
option(BUILD_GTK_TESTS "Whether compile the GTK+ test programs." ON)
option(BUILD_QT4_TESTS "Whether compile the Qt4 test programs." ON)
26
option(BUILD_CPP_TESTS "Whether compile the CPP test programs." ON)
27
28
option(ENABLE_SPLASH "Build the Splash graphics backend." ON)
option(ENABLE_UTILS "Compile poppler command line utils." ON)
29
option(ENABLE_CPP "Compile poppler cpp wrapper." ON)
30
option(ENABLE_LIBOPENJPEG "Use libopenjpeg for JPX streams." ON)
31
option(ENABLE_LCMS "Use liblcms for color management." ON)
Hib Eris's avatar
Hib Eris committed
32
option(ENABLE_LIBCURL "Build libcurl based HTTP support." OFF)
33
option(ENABLE_ZLIB "Build with zlib (not totally safe)." OFF)
34
35
option(USE_FIXEDPOINT "Use fixed point arithmetic in the Splash backend" OFF)
option(USE_FLOAT "Use single precision arithmetic in the Splash backend" OFF)
36
if(WIN32)
37
  option(ENABLE_RELOCATABLE "Do not hardcode the poppler library location (on Windows)." ON)
38
39
40
else(WIN32)
  set(ENABLE_RELOCATABLE OFF)
endif(WIN32)
41

42
43
set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")

44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
set(TESTDATADIR "${CMAKE_SOURCE_DIR}/../test" CACHE STRING "Specify test data dir.")
if(NOT (EXISTS ${TESTDATADIR} AND EXISTS ${TESTDATADIR}/test-poppler.c))
  message(WARNING "
 No test data found in $testdatadir.
 You will not be able to run 'make test' successfully.

 The test data is not included in the source packages
 and is also not part of the main git repository. Instead,
 you can checkout the test data from its own git
 repository with:

   git clone git://git.freedesktop.org/git/poppler/test

 You should checkout the test data as a sibling of your
 poppler source folder or specify the location of your
 checkout with -DTESTDATADIR=/path/to/checkoutdir/test.
  ")
endif()

63
64
65
66
67
68
69
if(WIN32)
  set(_default_fontconfiguration "win32")
else(WIN32)
  set(_default_fontconfiguration "fontconfig")
endif(WIN32)
set(FONT_CONFIGURATION "${_default_fontconfiguration}" CACHE STRING "The font configuration backend (win32|fontconfig).")
string(TOLOWER "${FONT_CONFIGURATION}" font_configuration)
70
71
set(WITH_FONTCONFIGURATION_WIN32 OFF)
set(WITH_FONTCONFIGURATION_FONTCONFIG OFF)
72
73
74
75
76
77
78
79
if(font_configuration STREQUAL "win32")
  set(WITH_FONTCONFIGURATION_WIN32 ON)
elseif(font_configuration STREQUAL "fontconfig")
  set(WITH_FONTCONFIGURATION_FONTCONFIG ON)
else(font_configuration STREQUAL "win32")
  message(FATAL_ERROR "Invalid font configuration setting: ${FONT_CONFIGURATION}")
endif(font_configuration STREQUAL "win32")

80
# Enable these unconditionally.
81
set(MULTITHREADED ON)
82
83
84
85
set(OPI_SUPPORT ON)
set(TEXTOUT_WORD_LIST ON)

# setting the minimum required versions for some components
Albert Astals Cid's avatar
Albert Astals Cid committed
86
set(QT4_MIN_VERSION "4.4.0")
87
set(CAIRO_VERSION "1.10.0")
88
set(GLIB_REQUIRED "2.18")
89
90
91

macro_bool_to_01(ENABLE_SPLASH HAVE_SPLASH)
find_package(Freetype REQUIRED)
92
93
94
if(WITH_FONTCONFIGURATION_FONTCONFIG)
  find_package(Fontconfig REQUIRED)
endif(WITH_FONTCONFIGURATION_FONTCONFIG)
95
macro_optional_find_package(JPEG)
Albert Astals Cid's avatar
Albert Astals Cid committed
96
macro_optional_find_package(PNG)
97
macro_optional_find_package(TIFF)
98
if(JPEG_FOUND)
Albert Astals Cid's avatar
Albert Astals Cid committed
99
  set(ENABLE_LIBJPEG ${JPEG_FOUND})
100
101
endif(JPEG_FOUND)
macro_optional_find_package(Qt4)
102
103
macro_optional_find_package(Cairo ${CAIRO_VERSION})
if(CAIRO_FOUND)
Albert Astals Cid's avatar
Albert Astals Cid committed
104
  set(HAVE_CAIRO ${CAIRO_FOUND})
105
106
  set(CAIRO_FEATURE "#define POPPLER_HAS_CAIRO 1")
  set(CAIRO_REQ "cairo")
107
108
  set(POPPLER_GLIB_DISABLE_DEPRECATED "")
  set(POPPLER_GLIB_DISABLE_SINGLE_INCLUDES "")
109
  macro_optional_find_package(GLIB)
110
  if(GLIB_FOUND)
111
    set(ENABLE_GLIB ON)
112
    # Check for introspection
113
    macro_optional_find_package(GObjectIntrospection 0.9.12)
114
    set(HAVE_INTROSPECTION ${INTROSPECTION_FOUND})
115
116
    set(POPPLER_GLIB_DISABLE_DEPRECATED "${POPPLER_GLIB_DISABLE_DEPRECATED} -DG_DISABLE_DEPRECATED")
    set(POPPLER_GLIB_DISABLE_SINGLE_INCLUDES "${POPPLER_GLIB_DISABLE_SINGLE_INCLUDES} -DG_DISABLE_SINGLE_INCLUDES")
117
    macro_optional_find_package(GTK)
118
119
120
121
  endif(GLIB_FOUND)
else(CAIRO_FOUND)
  set(CAIRO_FEATURE "#undef POPPLER_HAS_CAIRO")
endif(CAIRO_FOUND)
122
123
124
125
126
if(ENABLE_CPP)
  macro_optional_find_package(Iconv)
  set(ENABLE_CPP ${ICONV_FOUND})
  set(HAVE_ICONV ${ICONV_FOUND})
endif(ENABLE_CPP)
127
128
129
if(ENABLE_ZLIB)
  find_package(ZLIB)
  if(ZLIB_FOUND)
Albert Astals Cid's avatar
Albert Astals Cid committed
130
    set(HAVE_LIBZ ${ZLIB_FOUND})
131
132
133
  endif(ZLIB_FOUND)
  set(ENABLE_ZLIB ${ZLIB_FOUND})
endif(ENABLE_ZLIB)
134
135
136
if(ENABLE_LIBOPENJPEG)
  find_package(LIBOPENJPEG)
  set(ENABLE_LIBOPENJPEG ${LIBOPENJPEG_FOUND})
137
  set(HAVE_OPENJPEG_H ON)
138
endif(ENABLE_LIBOPENJPEG)
139
140
141
142
if(ENABLE_LCMS)
  find_package(LCMS)
  set(USE_CMS ${LCMS_FOUND})
endif(ENABLE_LCMS)
Hib Eris's avatar
Hib Eris committed
143
144
145
146
147
if(ENABLE_LIBCURL)
  find_package(CURL)
  include_directories(${CURL_INCLUDE_DIR})
  set(POPPLER_HAS_CURL_SUPPORT ON)
endif(ENABLE_LIBCURL)
148

149
150
151
add_definitions(-DHAVE_CONFIG_H=1)
if(FONTCONFIG_FOUND)
  add_definitions(${FONTCONFIG_DEFINITIONS})
152
  include_directories(${FONTCONFIG_INCLUDE_DIR})
153
endif(FONTCONFIG_FOUND)
154
155
156
157
158
159
if(WITH_FONTCONFIGURATION_WIN32)
  if(MINGW)
    # Set the minimum required Internet Explorer version to 5.0
    add_definitions(-D_WIN32_IE=0x0500)
  endif(MINGW)
endif(WITH_FONTCONFIGURATION_WIN32)
160
161
162
163
164
165
166
include_directories(
  ${CMAKE_CURRENT_SOURCE_DIR}
  ${CMAKE_CURRENT_SOURCE_DIR}/fofi
  ${CMAKE_CURRENT_SOURCE_DIR}/goo
  ${CMAKE_CURRENT_SOURCE_DIR}/poppler
  ${CMAKE_CURRENT_BINARY_DIR}
  ${CMAKE_CURRENT_BINARY_DIR}/poppler
167
  ${FREETYPE_INCLUDE_DIRS}
168
169
)
set(HAVE_FREETYPE_H ON)
170
171
172
if(CMAKE_USE_PTHREADS_INIT)
  set(HAVE_PTHREAD ON)
endif(CMAKE_USE_PTHREADS_INIT)
173
174
175
176
177
178
179
180

if(ENABLE_ZLIB)
  include_directories(${ZLIB_INCLUDE_DIR})
endif(ENABLE_ZLIB)
if(JPEG_FOUND)
  include_directories(${JPEG_INCLUDE_DIR})
  set(ENABLE_LIBJPEG ON)
endif(JPEG_FOUND)
Albert Astals Cid's avatar
Albert Astals Cid committed
181
182
183
184
if(PNG_FOUND)
  include_directories(${PNG_INCLUDE_DIR})
  set(ENABLE_LIBPNG ON)
endif(PNG_FOUND)
185
186
187
188
if(TIFF_FOUND)
  include_directories(${TIFF_INCLUDE_DIR})
  set(ENABLE_LIBTIFF ON)
endif(TIFF_FOUND)
189
if(LIBOPENJPEG_FOUND)
190
  include_directories(${LIBOPENJPEG_INCLUDE_DIR})
191
endif(LIBOPENJPEG_FOUND)
Albert Astals Cid's avatar
Albert Astals Cid committed
192
193
194
if(LCMS_FOUND)
  include_directories(${LCMS_INCLUDE_DIR})
endif(LCMS_FOUND)
195
196
197
198
199
200
201

if(DEFINED COMPILE_WARNINGS)
else(DEFINED COMPILE_WARNINGS)
  set(COMPILE_WARNINGS "yes")
endif(DEFINED COMPILE_WARNINGS)
string(TOLOWER "${COMPILE_WARNINGS}" _comp_warnings)
if(_comp_warnings STREQUAL "no")
202
  set(CMAKE_CXX_FLAGS "${DEFAULT_COMPILE_WARNINGS_NO} ${CMAKE_CXX_FLAGS}")
203
204
endif(_comp_warnings STREQUAL "no")
if(_comp_warnings STREQUAL "yes")
205
  set(CMAKE_CXX_FLAGS "${DEFAULT_COMPILE_WARNINGS_YES} ${CMAKE_CXX_FLAGS}")
206
207
208
209
210
211
212
213
endif(_comp_warnings STREQUAL "yes")
if(_comp_warnings STREQUAL "kde")
  set(CMAKE_CXX_FLAGS "${DEFAULT_COMPILE_WARNINGS_KDE} ${CMAKE_CXX_FLAGS}")
endif(_comp_warnings STREQUAL "kde")


include(ConfigureChecks.cmake)
configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
214
configure_file(poppler/poppler-config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/poppler/poppler-config.h)
215
216
217
218
219
220
221
222
223
224
225


set(poppler_SRCS
  goo/gfile.cc
  goo/gmempp.cc
  goo/GooHash.cc
  goo/GooList.cc
  goo/GooTimer.cc
  goo/GooString.cc
  goo/gmem.cc
  goo/FixedPoint.cc
226
  goo/PNGWriter.cc
227
  goo/TiffWriter.cc
Albert Astals Cid's avatar
Albert Astals Cid committed
228
  goo/JpegWriter.cc
229
  goo/ImgWriter.cc
230
  goo/gstrtod.cc
231
232
233
234
235
  fofi/FoFiBase.cc
  fofi/FoFiEncodings.cc
  fofi/FoFiTrueType.cc
  fofi/FoFiType1.cc
  fofi/FoFiType1C.cc
236
  fofi/FoFiIdentifier.cc
237
238
239
240
  poppler/Annot.cc
  poppler/Array.cc
  poppler/BuiltinFont.cc
  poppler/BuiltinFontTables.cc
Hib Eris's avatar
Hib Eris committed
241
  poppler/CachedFile.cc
242
243
244
  poppler/Catalog.cc
  poppler/CharCodeToUnicode.cc
  poppler/CMap.cc
245
  poppler/DateInfo.cc
246
247
248
  poppler/Decrypt.cc
  poppler/Dict.cc
  poppler/Error.cc
249
  poppler/FileSpec.cc
250
251
252
253
254
255
256
257
  poppler/FontEncodingTables.cc
  poppler/Form.cc
  poppler/FontInfo.cc
  poppler/Function.cc
  poppler/Gfx.cc
  poppler/GfxFont.cc
  poppler/GfxState.cc
  poppler/GlobalParams.cc
Hib Eris's avatar
Hib Eris committed
258
  poppler/Hints.cc
259
260
261
262
  poppler/JArithmeticDecoder.cc
  poppler/JBIG2Stream.cc
  poppler/Lexer.cc
  poppler/Link.cc
Hib Eris's avatar
Hib Eris committed
263
  poppler/Linearization.cc
264
  poppler/LocalPDFDocBuilder.cc
265
266
  poppler/NameToCharCode.cc
  poppler/Object.cc
267
  poppler/OptionalContent.cc
268
269
270
271
272
273
274
  poppler/Outline.cc
  poppler/OutputDev.cc
  poppler/Page.cc
  poppler/PageTransition.cc
  poppler/Parser.cc
  poppler/PDFDoc.cc
  poppler/PDFDocEncoding.cc
Hib Eris's avatar
Hib Eris committed
275
  poppler/PDFDocFactory.cc
276
  poppler/PopplerCache.cc
277
278
279
280
  poppler/ProfileData.cc
  poppler/PreScanOutputDev.cc
  poppler/PSTokenizer.cc
  poppler/Stream.cc
281
  poppler/strtok_r.cpp
282
283
284
285
286
287
288
  poppler/UnicodeMap.cc
  poppler/UnicodeTypeTable.cc
  poppler/XRef.cc
  poppler/PSOutputDev.cc
  poppler/TextOutputDev.cc
  poppler/PageLabelInfo.cc
  poppler/SecurityHandler.cc
289
  poppler/StdinCachedFile.cc
290
  poppler/StdinPDFDocBuilder.cc
291
  poppler/Sound.cc
292
  poppler/ViewerPreferences.cc
293
  poppler/XpdfPluginAPI.cc
Hugo Mercier's avatar
Hugo Mercier committed
294
  poppler/Movie.cc
295
  poppler/Rendition.cc
296
)
297
set(poppler_LIBS ${FREETYPE_LIBRARIES})
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
if(ENABLE_SPLASH)
  set(poppler_SRCS ${poppler_SRCS}
    poppler/SplashOutputDev.cc
    splash/Splash.cc
    splash/SplashBitmap.cc
    splash/SplashClip.cc
    splash/SplashFTFont.cc
    splash/SplashFTFontEngine.cc
    splash/SplashFTFontFile.cc
    splash/SplashFont.cc
    splash/SplashFontEngine.cc
    splash/SplashFontFile.cc
    splash/SplashFontFileID.cc
    splash/SplashPath.cc
    splash/SplashPattern.cc
    splash/SplashScreen.cc
    splash/SplashState.cc
    splash/SplashT1Font.cc
    splash/SplashT1FontEngine.cc
    splash/SplashT1FontFile.cc
    splash/SplashXPath.cc
    splash/SplashXPathScanner.cc
  )
endif(ENABLE_SPLASH)
322
323
324
if(FONTCONFIG_FOUND)
  set(poppler_LIBS ${poppler_LIBS} ${FONTCONFIG_LIBRARIES})
endif(FONTCONFIG_FOUND)
325
326
327
328
329
330
331
332
333
334
335
336
if(JPEG_FOUND)
  set(poppler_SRCS ${poppler_SRCS}
    poppler/DCTStream.cc
  )
  set(poppler_LIBS ${poppler_LIBS} ${JPEG_LIBRARIES})
endif(JPEG_FOUND)
if(ENABLE_ZLIB)
  set(poppler_SRCS ${poppler_SRCS}
    poppler/FlateStream.cc
  )
  set(poppler_LIBS ${poppler_LIBS} ${ZLIB_LIBRARIES})
endif(ENABLE_ZLIB)
Hib Eris's avatar
Hib Eris committed
337
338
339
if(ENABLE_LIBCURL)
  set(poppler_SRCS ${poppler_SRCS}
    poppler/CurlCachedFile.cc
Hib Eris's avatar
Hib Eris committed
340
    poppler/CurlPDFDocBuilder.cc
Hib Eris's avatar
Hib Eris committed
341
342
343
  )
  set(poppler_LIBS ${poppler_LIBS} ${CURL_LIBRARIES})
endif(ENABLE_LIBCURL)
344
if(LIBOPENJPEG_FOUND)
345
346
347
348
  set(poppler_SRCS ${poppler_SRCS}
    poppler/JPEG2000Stream.cc
  )
  set(poppler_LIBS ${poppler_LIBS} ${LIBOPENJPEG_LIBRARIES})
349
else (LIBOPENJPEG_FOUND)
350
351
352
  set(poppler_SRCS ${poppler_SRCS}
    poppler/JPXStream.cc
  )
353
endif(LIBOPENJPEG_FOUND)
354
355
356
if(USE_CMS)
  set(poppler_LIBS ${poppler_LIBS} ${LCMS_LIBRARIES})
endif(USE_CMS)
357
358
359
360
if(WIN32)
  # gdi32 is needed under win32
  set(poppler_LIBS ${poppler_LIBS} gdi32)
endif(WIN32)
361
362
363
if(PNG_FOUND)
  set(poppler_LIBS ${poppler_LIBS} ${PNG_LIBRARIES})
endif(PNG_FOUND)
364
365
366
if(TIFF_FOUND)
  set(poppler_LIBS ${poppler_LIBS} ${TIFF_LIBRARIES})
endif(TIFF_FOUND)
367

368
if(MSVC)
369
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
370
set(CMAKE_CXX_FLAGS "/Zc:wchar_t- ${CMAKE_CXX_FLAGS}")
371
372
add_library(poppler STATIC ${poppler_SRCS})
else(MSVC)
373
add_library(poppler SHARED ${poppler_SRCS})
374
endif(MSVC)
Albert Astals Cid's avatar
0.18.0    
Albert Astals Cid committed
375
set_target_properties(poppler PROPERTIES VERSION 18.0.0 SOVERSION 18)
376
target_link_libraries(poppler ${poppler_LIBS})
377
target_link_libraries(poppler LINK_INTERFACE_LIBRARIES "")
378
install(TARGETS poppler RUNTIME DESTINATION bin LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX})
379
380
381
382
383
384
385

if(ENABLE_XPDF_HEADERS)
  install(FILES
    poppler/Annot.h
    poppler/Array.h
    poppler/BuiltinFont.h
    poppler/BuiltinFontTables.h
Hib Eris's avatar
Hib Eris committed
386
    poppler/CachedFile.h
387
388
389
    poppler/Catalog.h
    poppler/CharCodeToUnicode.h
    poppler/CMap.h
390
    poppler/DateInfo.h
391
392
393
    poppler/Decrypt.h
    poppler/Dict.h
    poppler/Error.h
394
    poppler/FileSpec.h
395
396
397
398
399
400
401
402
    poppler/FontEncodingTables.h
    poppler/FontInfo.h
    poppler/Form.h
    poppler/Function.cc
    poppler/Function.h
    poppler/Gfx.h
    poppler/GfxFont.h
    poppler/GfxState.h
403
    poppler/GfxState_helpers.h
404
    poppler/GlobalParams.h
Hib Eris's avatar
Hib Eris committed
405
    poppler/Hints.h
406
407
408
409
    poppler/JArithmeticDecoder.h
    poppler/JBIG2Stream.h
    poppler/Lexer.h
    poppler/Link.h
Hib Eris's avatar
Hib Eris committed
410
    poppler/Linearization.h
411
    poppler/LocalPDFDocBuilder.h
412
    poppler/Movie.h
413
414
    poppler/NameToCharCode.h
    poppler/Object.h
415
    poppler/OptionalContent.h
416
417
418
419
420
421
    poppler/Outline.h
    poppler/OutputDev.h
    poppler/Page.h
    poppler/PageTransition.h
    poppler/Parser.h
    poppler/PDFDoc.h
Hib Eris's avatar
Hib Eris committed
422
    poppler/PDFDocBuilder.h
423
    poppler/PDFDocEncoding.h
Hib Eris's avatar
Hib Eris committed
424
    poppler/PDFDocFactory.h
Albert Astals Cid's avatar
Albert Astals Cid committed
425
    poppler/PopplerCache.h
426
427
428
    poppler/ProfileData.h
    poppler/PreScanOutputDev.h
    poppler/PSTokenizer.h
429
    poppler/Rendition.h
430
431
432
433
434
435
436
437
    poppler/Stream-CCITT.h
    poppler/Stream.h
    poppler/UnicodeMap.h
    poppler/UnicodeMapTables.h
    poppler/UnicodeTypeTable.h
    poppler/UnicodeCClassTables.h
    poppler/UnicodeCompTables.h
    poppler/UnicodeDecompTables.h
438
    poppler/ViewerPreferences.h
439
440
441
442
443
444
445
446
    poppler/XRef.h
    poppler/CharTypes.h
    poppler/CompactFontTables.h
    poppler/ErrorCodes.h
    poppler/NameToUnicodeTable.h
    poppler/PSOutputDev.h
    poppler/TextOutputDev.h
    poppler/SecurityHandler.h
447
    poppler/StdinCachedFile.h
448
    poppler/StdinPDFDocBuilder.h
449
450
451
452
453
    poppler/UTF8.h
    poppler/XpdfPluginAPI.h
    poppler/Sound.h
    ${CMAKE_CURRENT_BINARY_DIR}/poppler/poppler-config.h
    DESTINATION include/poppler)
454
455
456
457
458
459
460
461
462
463
  install(FILES
    goo/GooHash.h
    goo/GooList.h
    goo/GooTimer.h
    goo/GooMutex.h
    goo/GooString.h
    goo/gtypes.h
    goo/gmem.h
    goo/gfile.h
    goo/FixedPoint.h
Maciej Mrozowski's avatar
Maciej Mrozowski committed
464
    goo/ImgWriter.h
465
    goo/GooLikely.h
466
    goo/gstrtod.h
467
    DESTINATION include/poppler/goo)
Maciej Mrozowski's avatar
Maciej Mrozowski committed
468
469
470
471
472
  if(PNG_FOUND)
    install(FILES
      goo/PNGWriter.h
      DESTINATION include/poppler/goo)
  endif(PNG_FOUND)
473
474
475
476
477
  if(TIFF_FOUND)
    install(FILES
      goo/TiffWriter.h
      DESTINATION include/poppler/goo)
  endif(TIFF_FOUND)
478
479
480
481
482
483
  install(FILES
    fofi/FoFiBase.h
    fofi/FoFiEncodings.h
    fofi/FoFiTrueType.h
    fofi/FoFiType1.h
    fofi/FoFiType1C.h
484
    fofi/FoFiIdentifier.h
485
    DESTINATION include/poppler/fofi)
Hib Eris's avatar
Hib Eris committed
486
487
488
  if(ENABLE_LIBCURL)
    install(FILES
      poppler/CurlCachedFile.h
Hib Eris's avatar
Hib Eris committed
489
      poppler/CurlPDFDocBuilder.h
Hib Eris's avatar
Hib Eris committed
490
491
      DESTINATION include/poppler)
  endif(ENABLE_LIBCURL)
492
  if(LIBOPENJPEG_FOUND)
493
494
495
    install(FILES
      poppler/JPEG2000Stream.h
      DESTINATION include/poppler)
Maciej Mrozowski's avatar
Maciej Mrozowski committed
496
497
498
    install(FILES
      goo/JpegWriter.h
      DESTINATION include/poppler/goo)
499
  else(LIBOPENJPEG_FOUND)
500
501
502
    install(FILES
      poppler/JPXStream.h
      DESTINATION include/poppler)
503
  endif(LIBOPENJPEG_FOUND)
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
  if(ENABLE_SPLASH)
    install(FILES
      poppler/SplashOutputDev.h
      DESTINATION include/poppler)
    install(FILES
      splash/Splash.h
      splash/SplashBitmap.h
      splash/SplashClip.h
      splash/SplashErrorCodes.h
      splash/SplashFTFont.h
      splash/SplashFTFontEngine.h
      splash/SplashFTFontFile.h
      splash/SplashFont.h
      splash/SplashFontEngine.h
      splash/SplashFontFile.h
      splash/SplashFontFileID.h
      splash/SplashGlyphBitmap.h
      splash/SplashMath.h
      splash/SplashPath.h
      splash/SplashPattern.h
      splash/SplashScreen.h
      splash/SplashState.h
      splash/SplashT1Font.h
      splash/SplashT1FontEngine.h
      splash/SplashT1FontFile.h
      splash/SplashTypes.h
      splash/SplashXPath.h
      splash/SplashXPathScanner.h
      DESTINATION include/poppler/splash)
  endif(ENABLE_SPLASH)
endif(ENABLE_XPDF_HEADERS)


if(ENABLE_UTILS)
  add_subdirectory(utils)
endif(ENABLE_UTILS)
540
if(ENABLE_GLIB)
541
  add_subdirectory(glib)
542
endif(ENABLE_GLIB)
543
544
545
546
add_subdirectory(test)
if(QT4_FOUND)
  add_subdirectory(qt4)
endif(QT4_FOUND)
547
548
549
if(ENABLE_CPP)
  add_subdirectory(cpp)
endif(ENABLE_CPP)
550
551

set(PKG_CONFIG_VERSION_0_18 TRUE)
552
553
if(PKG_CONFIG_EXECUTABLE)
  exec_program(${PKG_CONFIG_EXECUTABLE} ARGS --version RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _output_VAR)
554
  macro_ensure_version("0.18" "${_output_VAR}" PKG_CONFIG_VERSION_0_18)
555
endif(PKG_CONFIG_EXECUTABLE)
556
557
558
559
560
561
562
563
if(PKG_CONFIG_VERSION_0_18)
  set(PC_REQUIRES "")
  set(PC_REQUIRES_PRIVATE "Requires.private: poppler = ${POPPLER_VERSION}")
else(PKG_CONFIG_VERSION_0_18)
  set(PC_REQUIRES "poppler = ${POPPLER_VERSION}")
  set(PC_REQUIRES_PRIVATE "")
endif(PKG_CONFIG_VERSION_0_18)

564
poppler_create_install_pkgconfig(poppler.pc lib${LIB_SUFFIX}/pkgconfig)
565
if(ENABLE_SPLASH)
566
  poppler_create_install_pkgconfig(poppler-splash.pc lib${LIB_SUFFIX}/pkgconfig)
567
568
endif(ENABLE_SPLASH)
if(QT4_FOUND)
569
  poppler_create_install_pkgconfig(poppler-qt4.pc lib${LIB_SUFFIX}/pkgconfig)
570
endif(QT4_FOUND)
571
if(ENABLE_GLIB)
572
  poppler_create_install_pkgconfig(poppler-glib.pc lib${LIB_SUFFIX}/pkgconfig)
573
endif(ENABLE_GLIB)
574
if(CAIRO_FOUND)
575
  poppler_create_install_pkgconfig(poppler-cairo.pc lib${LIB_SUFFIX}/pkgconfig)
576
endif(CAIRO_FOUND)
Pino Toscano's avatar
Pino Toscano committed
577
578
579
if(ENABLE_CPP)
  poppler_create_install_pkgconfig(poppler-cpp.pc lib${LIB_SUFFIX}/pkgconfig)
endif(ENABLE_CPP)
580
581
582


message("Building Poppler with support for:")
583
show_end_message("font configuration" ${font_configuration})
584
585
586
show_end_message_yesno("splash output" ENABLE_SPLASH)
show_end_message_yesno("cairo output" CAIRO_FOUND)
show_end_message_yesno("qt4 wrapper" QT4_FOUND)
587
show_end_message_yesno("glib wrapper" ENABLE_GLIB)
588
show_end_message_yesno("  introspection" INTROSPECTION_FOUND)
589
show_end_message_yesno("cpp wrapper" ENABLE_CPP)
590
show_end_message("use gtk-doc" "not supported with this CMake build system")
591
592
show_end_message_yesno("use libjpeg" ENABLE_LIBJPEG)
show_end_message_yesno("use libpng" ENABLE_LIBPNG)
593
show_end_message_yesno("use libtiff" ENABLE_LIBTIFF)
594
show_end_message_yesno("use zlib" ENABLE_ZLIB)
Hib Eris's avatar
Hib Eris committed
595
show_end_message_yesno("use curl" ENABLE_LIBCURL)
596
597
598
show_end_message_yesno("use libopenjpeg" LIBOPENJPEG_FOUND)
show_end_message_yesno("use cms" USE_CMS)
show_end_message_yesno("command line utils" ENABLE_UTILS)
599
show_end_message("test data dir" ${TESTDATADIR})
600
601
602
603

if(USE_FIXEDPOINT AND USE_FLOAT)
  message("Warning: Single precision and fixed point options should not be enabled at the same time")
endif(USE_FIXEDPOINT AND USE_FLOAT)