patch genisoimage multi extent
[platform/upstream/cdrkit.git] / genisoimage / CMakeLists.txt
1 PROJECT (MKISOFS C)
2
3 INCLUDE(../include/AddScgBits.cmake)
4 INCLUDE(../include/AddSchilyBits.cmake)
5
6 INCLUDE_DIRECTORIES(../include ../libhfs_iso ../wodim ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/include)
7
8 INCLUDE(CheckIncludeFiles)
9 CHECK_INCLUDE_FILES("magic.h" USE_MAGIC)
10 IF(USE_MAGIC)
11         ADD_DEFINITIONS(-DUSE_MAGIC)
12         SET(MAGICLIBS magic)
13 ENDIF(USE_MAGIC)
14
15 CHECK_INCLUDE_FILES("pthread.h" USE_PTHREAD)
16 IF(USE_PTHREAD)
17         ADD_DEFINITIONS(-DTHREADED_CHECKSUMS)
18         LIST(APPEND EXTRA_LIBS "pthread")
19 ENDIF(USE_PTHREAD)
20
21     IF(HAVE_ICONV_H)
22     ADD_DEFINITIONS(-DUSE_ICONV)
23     #INCLUDE(CheckLibraryExists)
24 #    CHECK_LIBRARY_EXISTS (iconv "iconv_open(argv[0],argv[0])" "" USE_LIBICONV)
25 IF(USE_LIBICONV)
26     LIST(APPEND EXTRA_LIBS "iconv")
27 ELSE(USE_LIBICONV)
28 #           MESSAGE("No additional libiconv found, maybe not required. If required, change linker flags, see TROUBLESHOOTING in the INSTALL file")
29 ENDIF(USE_LIBICONV)
30 ENDIF(HAVE_ICONV_H)
31
32 ADD_DEFINITIONS(-DUSE_LARGEFILES -DABORT_DEEP_ISO_ONLY -DAPPLE_HYB -DUDF -DDVD_VIDEO -DSORTING -DHAVE_CONFIG_H -DUSE_LIBSCHILY -DUSE_SCG -DJIGDO_TEMPLATE)
33
34 SET(MKISOFS_MOST_SRCS apple.c boot.c desktop.c dvd_file.c dvd_reader.c eltorito.c exclude.c files.c fnmatch.c hash.c ifo_read.c joliet.c mac_label.c match.c multi.c name.c rock.c scsi.c stream.c tree.c udf.c vms.c volume.c write.c boot-alpha.c boot-hppa.c boot-mips.c md5.c jte.c rsync.c boot-mipsel.c endian.c sha1.c sha256.c sha512.c checksum.c )
35   
36 INCLUDE(CheckFunctionExists)
37 SET(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
38 CHECK_FUNCTION_EXISTS("getopt_long" HAVE_GETOPT_LONG)
39 IF(NOT HAVE_GETOPT_LONG)
40     LIST ( APPEND MKISOFS_MOST_SRCS  getopt.c getopt1.c )
41 ENDIF(NOT HAVE_GETOPT_LONG)
42  
43
44 #SET_SOURCE_FILES_PROPERTIES(${MKISOFS_MOST_SRCS} PROPERTIES )
45 LINK_DIRECTORIES(../libhfs_iso ../librols ../libusal ../libunls  ../wodim)
46
47 ADD_EXECUTABLE (genisoimage genisoimage.c ${MKISOFS_MOST_SRCS})
48 TARGET_LINK_LIBRARIES(genisoimage wodimstuff hfs_iso  ${MAGICLIBS} c unls z bz2 ${EXTRA_LIBICONV} ${EXTRA_LIBS})
49
50 # common lib set and genisoimage source parts for the rest
51 LINK_LIBRARIES(wodimstuff ${EXTRA_LIBS}  unls ${EXTRA_LIBICONV} )
52 ADD_EXECUTABLE(devdump diag/dump.c scsi.c)
53 ADD_EXECUTABLE(isodebug diag/isodebug.c scsi.c)
54 ADD_EXECUTABLE(isodump  diag/isodump.c scsi.c)
55 ADD_EXECUTABLE(isoinfo diag/isoinfo.c scsi.c)
56 ADD_EXECUTABLE(isovfy   diag/isovfy.c scsi.c)
57
58
59 SET_TARGET_PROPERTIES(genisoimage devdump isodebug isodump isoinfo isovfy PROPERTIES  SKIP_BUILD_RPATH TRUE)
60
61 INSTALL(TARGETS genisoimage devdump isodebug isodump isoinfo isovfy DESTINATION bin)
62 INSTALL(FILES 
63 genisoimage.1
64 diag/devdump.1
65 diag/isodebug.1
66 diag/isodump.1
67 diag/isoinfo.1
68 diag/isovfy.1
69 DESTINATION ${MANSUBDIR}/man1)
70 INSTALL(FILES genisoimagerc.5 DESTINATION "${MANSUBDIR}/man5")