#include <hallo.h> * Petr Salinger [Mon, Sep 04 2006, 06:45:51PM]: > >>It have to add some detection logic for libcam into cmake. > >>In autoconf based build system, the test would be > >> AC_CHECK_HEADERS([camlib.h]) > > > >But scsi-bsd.c includes <cam/cam.h> and not camlib.h, maybe I should > >check for that? > > > > It includes both, but "HAVE_CAMLIB_H" is used to select support via -lcam. > Also <camlib.h> comes from libcam-dev, which contains /usr/lib/libcam.so
Please try the attached patch, applied to 1.0pre3, and tell us the results. Eduard. -- Das Gedächtnis ist ein sonderbares Sieb. Es behält alles Gute von uns und alles Üble von den anderen. -- Wieslaw Brudzinzki
Index: debian/changelog =================================================================== --- debian/changelog (Revision 214) +++ debian/changelog (Arbeitskopie) @@ -1,3 +1,9 @@ +cdrkit (5:1.0~pre3-2) unstable; urgency=low + + * added detection for libcam (closes: #385975) + + -- Eduard Bloch <[EMAIL PROTECTED]> Mon, 4 Sep 2006 23:39:20 +0200 + cdrkit (5:1.0~pre3-1) unstable; urgency=low [ Eduard Bloch ] Index: cdrecord/CMakeLists.txt =================================================================== --- cdrecord/CMakeLists.txt (Revision 214) +++ cdrecord/CMakeLists.txt (Arbeitskopie) @@ -1,5 +1,6 @@ PROJECT (CDRECORD) INCLUDE_DIRECTORIES(../include . ${CMAKE_BINARY_DIR}) +INCLUDE(../include/AddScgBits.cmake) AUX_SOURCE_DIRECTORY(. CDRECORD_SRCS) @@ -10,8 +11,8 @@ LINK_DIRECTORIES(../libschily ../libscg ../libdeflt) ADD_EXECUTABLE (wodim ${CDRECORD_SRCS}) -TARGET_LINK_LIBRARIES(wodim scg schily deflt ${CAPLINK}) -SET_TARGET_PROPERTIES(wodim PROPERTIES SKIP_BUILD_RPATH TRUE) +TARGET_LINK_LIBRARIES(wodim ${SCG_LIBS} schily deflt ${CAPLINK}) +SET_TARGET_PROPERTIES(wodim PROPERTIES SKIP_BUILD_RPATH TRUE) INSTALL(TARGETS wodim DESTINATION bin) INSTALL(FILES Index: Changelog =================================================================== --- Changelog (Revision 214) +++ Changelog (Arbeitskopie) @@ -1,3 +1,9 @@ +cdrkit (1.0pre4) UNRELEASED; urgency=low + + * Added checks for libcam to make (k)FreeBSD compilation work (untested) + + -- Eduard Bloch <[EMAIL PROTECTED]> Mon, 4 Sep 2006 23:36:58 +0200 + cdrkit (1.0pre3) unstable; urgency=low [ Eduard Bloch ] Index: cdda2wav/CMakeLists.txt =================================================================== --- cdda2wav/CMakeLists.txt (Revision 214) +++ cdda2wav/CMakeLists.txt (Arbeitskopie) @@ -1,5 +1,6 @@ PROJECT (CDDA2WAV) INCLUDE_DIRECTORIES(../include ../cdrecord . ${CMAKE_BINARY_DIR}) +include(../include/AddScgBits.cmake) FIND_FILE (HAVE_SYS_SOUNDCARD_H sys/soundcard.h) IF(HAVE_SYS_SOUNDCARD_H) @@ -12,7 +13,7 @@ LINK_DIRECTORIES(../libschily ../libscg ../libdeflt ../libparanoia) ADD_EXECUTABLE (cdda2wav aifc.c aiff.c base64.c cd_misc.c cdda2wav.c defaults.c getnum.c interface.c ioctl.c md5c.c modes.c raw.c resample.c ringbuff.c scsi_cdr.c scsi_cmds.c scsi_scan.c semshm.c setuid.c sha_func.c sndconfig.c sun.c toc.c wav.c) -TARGET_LINK_LIBRARIES(cdda2wav scg schily deflt paranoia) +TARGET_LINK_LIBRARIES(cdda2wav ${SCG_LIBS} schily deflt paranoia) SET_TARGET_PROPERTIES(cdda2wav PROPERTIES SKIP_BUILD_RPATH TRUE) Index: libscg/CMakeLists.txt =================================================================== --- libscg/CMakeLists.txt (Revision 214) +++ libscg/CMakeLists.txt (Arbeitskopie) @@ -1,9 +1,9 @@ PROJECT (LIBSCG) INCLUDE_DIRECTORIES(../include . ${CMAKE_BINARY_DIR} ../cdrecord) +include(../include/AddScgBits.cmake) #SET(LIBSCG_SRCS rdummy.c scgsettarget.c scgtimes.c scsi-linux-ata.c scsi-linux-pg.c scsi-linux-sg.c scsierrs.c scsihack.c scsihelp.c scsiopen.c scsitransp.c) SET(LIBSCG_SRCS rdummy.c scgsettarget.c scgtimes.c scsierrs.c scsihack.c scsihelp.c scsiopen.c scsitransp.c) -SET_SOURCE_FILES_PROPERTIES(${LIBSCG_SRCS} PROPERTIES ) LINK_DIRECTORIES(../libschily) ADD_LIBRARY (scg STATIC ${LIBSCG_SRCS}) -TARGET_LINK_LIBRARIES(scg schily) +TARGET_LINK_LIBRARIES(scg schily ${SCG_SELF_LIBS}) Index: scgcheck/CMakeLists.txt =================================================================== --- scgcheck/CMakeLists.txt (Revision 214) +++ scgcheck/CMakeLists.txt (Arbeitskopie) @@ -1,6 +1,8 @@ PROJECT (SCGCHECK) INCLUDE_DIRECTORIES(../include ../cdrecord . ) +INCLUDE(../include/AddScgBits.cmake) + LINK_DIRECTORIES(../libschily ../libscg ../libdeflt) ADD_EXECUTABLE (scgcheck cd_misc.c dmaresid.c modes.c scgcheck.c scsi_cdr.c scsi_scan.c sense.c) -TARGET_LINK_LIBRARIES(scgcheck scg schily) +TARGET_LINK_LIBRARIES(scgcheck ${SCG_LIBS} schily) Index: readcd/CMakeLists.txt =================================================================== --- readcd/CMakeLists.txt (Revision 214) +++ readcd/CMakeLists.txt (Arbeitskopie) @@ -1,11 +1,12 @@ PROJECT (READECD) INCLUDE_DIRECTORIES(../include ../cdrecord . ${CMAKE_BINARY_DIR}) +INCLUDE(../include/AddScgBits.cmake) AUX_SOURCE_DIRECTORY(. READCD_SRCS) LINK_DIRECTORIES(../libschily ../libscg ../libdeflt) ADD_EXECUTABLE (readcd ${READCD_SRCS}) -TARGET_LINK_LIBRARIES(readcd scg schily deflt) +TARGET_LINK_LIBRARIES(readcd ${SCG_LIBS} schily deflt) SET_TARGET_PROPERTIES(readcd PROPERTIES SKIP_BUILD_RPATH TRUE) INSTALL(TARGETS readcd DESTINATION bin) Index: rscsi/CMakeLists.txt =================================================================== --- rscsi/CMakeLists.txt (Revision 214) +++ rscsi/CMakeLists.txt (Arbeitskopie) @@ -1,11 +1,11 @@ PROJECT (RSCSI) INCLUDE_DIRECTORIES(../include ../cdrecord . ${CMAKE_BINARY_DIR} ) -#ADD_DEFINITIONS(-DUSE_LARGEFILES -DABORT_DEEP_ISO_ONLY -DAPPLE_HYB -DUDF -DDVD_VIDEO -DSORTING -DHAVE_CONFIG_H -DUSE_LIBSCHILY -DUSE_SCG) +INCLUDE(../include/AddScgBits.cmake) LINK_DIRECTORIES(../libschily ../libscg ../libdeflt) ADD_EXECUTABLE (rscsi rscsi.c) #SET_SOURCE_FILES_PROPERTIES(rscsi.c ) -TARGET_LINK_LIBRARIES(rscsi scg schily deflt) +TARGET_LINK_LIBRARIES(rscsi ${SCG_LIBS} schily deflt) #SET_TARGET_PROPERTIES(rscsi PROPERTIES SKIP_BUILD_RPATH TRUE) INSTALL(TARGETS rscsi DESTINATION sbin) Index: include/AddScgBits.cmake =================================================================== --- include/AddScgBits.cmake (Revision 0) +++ include/AddScgBits.cmake (Revision 0) @@ -0,0 +1,13 @@ + +LIST(APPEND SCG_LIBS "scg") + +INCLUDE(CheckSymbolExists) +SET(CMAKE_REQUIRED_LIBRARIES cam) +CHECK_SYMBOL_EXISTS(cam_open_device "camlib.h" HAVE_CAMLIB_H) +if(HAVE_CAMLIB_H) + ADD_DEFINITIONS(-DHAVE_CAMLIB_H) + LIST(APPEND SCG_LIBS "cam") + LIST(APPEND SCG_SELF_LIBS "cam") +endif(HAVE_CAMLIB_H) +SET(CMAKE_REQUIRED_LIBRARIES ) + Index: mkisofs/CMakeLists.txt =================================================================== --- mkisofs/CMakeLists.txt (Revision 214) +++ mkisofs/CMakeLists.txt (Arbeitskopie) @@ -1,4 +1,7 @@ PROJECT (MKISOFS) + +INCLUDE(../include/AddScgBits.cmake) + INCLUDE_DIRECTORIES(../include ../libhfs_iso . ../cdrecord ${CMAKE_BINARY_DIR}) FIND_FILE (USE_MAGIC magic.h) @@ -26,10 +29,10 @@ LINK_DIRECTORIES(../libhfs_iso ../libschily ../libscg ../libunls ../libdeflt) ADD_EXECUTABLE (mkisofs mkisofs.c ${MKISOFS_MOST_SRCS}) -TARGET_LINK_LIBRARIES(mkisofs schily hfs_iso deflt magic scg unls z ${EXTRA_LIBICONV}) +TARGET_LINK_LIBRARIES(mkisofs schily hfs_iso deflt magic unls z ${EXTRA_LIBICONV} ${SCG_LIBS}) # common lib set and mkisofs source parts for the rest -LINK_LIBRARIES(schily deflt scg unls ${EXTRA_LIBICONV}) +LINK_LIBRARIES(${SCG_LIBS} schily deflt unls ${EXTRA_LIBICONV} ) SET(MI_COMMON diag/scsi.c diag/scsi_cdr.c diag/cd_misc.c diag/modes.c diag/defaults.c diag/getnum.c) ADD_EXECUTABLE(devdump diag/dump.c ${MI_COMMON}) ADD_EXECUTABLE(isodebug diag/isodebug.c ${MI_COMMON})