- fix Building without Nagra not possible at Nagra_Merlin https://trac.streamboard...
[oscam.git] / csctapi / CMakeLists.txt
blob2ee4cf8788abee82fdebc052d735d8d5f545d053
1 project (csctapi)
2 if (CMAKE_COMPILER_IS_GNUCC)
3         execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
4         string(REGEX MATCHALL "[0-9]+" GCC_VERSION_COMPONENTS ${GCC_VERSION})
5         list(GET GCC_VERSION_COMPONENTS 0 GCC_MAJOR)
6         list(GET GCC_VERSION_COMPONENTS 0 GCC_MINOR)
7         add_definitions ("-W -Wall ")
8         set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -O2")
9         set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O2")
10         set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -ggdb")
11         set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -ggdb")
12 endif (CMAKE_COMPILER_IS_GNUCC)
13 # Mac extra removes to avoid ranlib warnings in some situations
14 if (OSCamOperatingSystem MATCHES "Mac OS X" AND NOT HAVE_LIBUSB AND HAVE_PCSC)
15 set (mac_usbpcsc "ifd_smartreader*")
16 elseif(OSCamOperatingSystem MATCHES "Mac OS X" AND NOT HAVE_LIBUSB AND NOT HAVE_PCSC)
17 set (mac_usbpcsc "ifd_smartreader*" "ifd_pcsc*")
18 elseif (OSCamOperatingSystem MATCHES "Mac OS X" AND HAVE_LIBUSB AND NOT HAVE_PCSC)
19 set (mac_usbpcsc "ifd_pcsc*")
20 endif(OSCamOperatingSystem MATCHES "Mac OS X" AND NOT HAVE_LIBUSB AND HAVE_PCSC)
21 if (OSCamOperatingSystem MATCHES "Mac OS X")
22 file (GLOB csctapi_mac "ifd_azbox*" "ifd_cool*" "ifd_stapi*" ${mac_usbpcsc})
23 file (GLOB csctapi_srcs "*.c")
24 list(REMOVE_ITEM csctapi_srcs ${csctapi_mac})
25 file (GLOB csctapi_hdrs "*.h")
26 list(REMOVE_ITEM csctapi_hdrs ${csctapi_mac})
27 else (OSCamOperatingSystem MATCHES "Mac OS X")
28 file (GLOB csctapi_srcs "*.c")
29 file (GLOB csctapi_hdrs "*.h")
30 endif (OSCamOperatingSystem MATCHES "Mac OS X")
32 if (NOT OSCamOperatingSystem MATCHES "Mac OS X")
33         if (LIBRTDIR)
34                 check_include_file ("${LIBRTDIR}/include/time.h" HAVE_LIBRT_STATIC)
35                 if (HAVE_LIBRT_STATIC)
36                         if (EXISTS ${LIBRTDIR}/lib/librt.a)
37                                 add_definitions ("-I${LIBRTDIR}/include/")
38                         else (EXISTS ${LIBRTDIR}/lib/librt.a)
39                                 set (HAVE_LIBRT_STATIC False)
40                         endif (EXISTS ${LIBRTDIR}/lib/librt.a)
41                 elseif (HAVE_LIBRT_STATIC)
42                         set (HAVE_LIBRT_STATIC False)
43                 endif (HAVE_LIBRT_STATIC)
44     else (LIBRTDIR)
45                 check_include_file ("time.h" HAVE_LIBRT)
46                 if (HAVE_LIBRT)
47                         set (HAVE_LIBRT True)
48                 else (HAVE_LIBRT)
49                         set (HAVE_LIBRT False)
50                 endif (HAVE_LIBRT)
51         endif (LIBRTDIR)
52 else (NOT OSCamOperatingSystem MATCHES "Mac OS X")
53         set (HAVE_LIBRT True)
54 endif (NOT OSCamOperatingSystem MATCHES "Mac OS X")
56 check_include_file ("libusb-1.0/libusb.h" HAVE_LIBUSB)
57 if (HAVE_LIBUSB AND HAVE_PTHREAD AND HAVE_LIBRT OR HAVE_LIBRT_STATIC)
58         add_definitions ("-DWITH_LIBUSB=1")
59 endif (HAVE_LIBUSB AND HAVE_PTHREAD AND HAVE_LIBRT OR HAVE_LIBRT_STATIC)
61 set (lib_name "csctapi")
62 add_library (${lib_name} STATIC ${csctapi_srcs} ${csctapi_hdrs})