blob: de9da8fb92340107d676daa838d9a02f33c235aa [file] [log] [blame]
Pierre Ossman5156d5e2011-03-09 09:42:34 +00001include_directories(${FLTK_INCLUDE_DIR})
Pierre Ossmanb232b5f2011-04-28 14:38:04 +00002include_directories(${GETTEXT_INCLUDE_DIR})
Pierre Ossman5156d5e2011-03-09 09:42:34 +00003
4include_directories(${CMAKE_SOURCE_DIR}/common)
Pierre Ossmanf14bf332011-04-14 12:49:03 +00005set(VNCVIEWER_SOURCES
Martin Koegler498ef462011-09-04 07:04:43 +00006 menukey.cxx
Pierre Ossman5156d5e2011-03-09 09:42:34 +00007 CConn.cxx
8 DesktopWindow.cxx
Pierre Ossmanac13abe2014-02-07 14:46:26 +01009 FLTKPixelBuffer.cxx
Pierre Ossman5156d5e2011-03-09 09:42:34 +000010 UserDialog.cxx
Pierre Ossman561ff0c2011-05-13 14:04:59 +000011 ServerDialog.cxx
Pierre Ossmand463b572011-05-16 12:04:43 +000012 OptionsDialog.cxx
Pierre Ossmanac13abe2014-02-07 14:46:26 +010013 PlatformPixelBuffer.cxx
Pierre Ossmand50b3d12011-04-15 07:46:56 +000014 Viewport.cxx
Pierre Ossman5156d5e2011-03-09 09:42:34 +000015 parameters.cxx
Pierre Ossmand014d052011-03-09 13:28:12 +000016 keysym2ucs.c
Pierre Ossman5156d5e2011-03-09 09:42:34 +000017 vncviewer.cxx)
18
Pierre Ossman407a5c32011-05-26 14:48:29 +000019if(WIN32)
Pierre Ossmanca937762012-03-27 12:30:19 +000020 # Since vncviewer.rc is generated, local includes will be looking
21 # in the wrong directory. We need to help it out.
22 include_directories(${CMAKE_CURRENT_SOURCE_DIR})
23 configure_file(vncviewer.rc.in vncviewer.rc)
24 set(VNCVIEWER_SOURCES
25 ${VNCVIEWER_SOURCES}
26 ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.rc)
Pierre Ossman407a5c32011-05-26 14:48:29 +000027endif()
28
Pierre Ossmanca937762012-03-27 12:30:19 +000029if(WIN32)
30 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} win32.c)
31elseif(APPLE)
Pierre Ossman407a5c32011-05-26 14:48:29 +000032 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} cocoa.mm)
33endif()
34
Pierre Ossmanb4cb8762011-06-13 13:24:29 +000035if(WIN32)
36 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} Win32PixelBuffer.cxx)
Pierre Ossmanc18753c2011-06-17 07:35:56 +000037elseif(APPLE)
38 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} OSXPixelBuffer.cxx)
39else()
Pierre Ossman13500692011-06-13 11:23:08 +000040 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} X11PixelBuffer.cxx)
41endif()
42
Pierre Ossman4c699322014-07-21 16:22:43 +020043if(WIN32 AND NOT CMAKE_BUILD_TYPE STREQUAL "Debug")
DRCc3a85172011-07-05 18:55:55 +000044 add_executable(vncviewer WIN32 ${VNCVIEWER_SOURCES})
45else()
46 add_executable(vncviewer ${VNCVIEWER_SOURCES})
47endif()
Pierre Ossmanf14bf332011-04-14 12:49:03 +000048
Peter Åstrand13ee3212012-08-27 08:12:47 +000049target_link_libraries(vncviewer rfb network rdr os Xregion ${FLTK_LIBRARIES} ${GETTEXT_LIBRARIES})
Peter Åstrand03327ae2011-04-19 12:31:44 +000050
Pierre Ossmanb27c1b22014-10-17 13:55:05 +020051if(APPLE)
52 target_link_libraries(vncviewer "-framework Cocoa" "-framework Carbon")
53endif()
54
Pierre Ossman448fd3a2012-03-27 10:28:18 +000055install(TARGETS vncviewer DESTINATION ${BIN_DIR})
DRCe66060d2011-06-25 03:02:10 +000056if(UNIX)
Pierre Ossman448fd3a2012-03-27 10:28:18 +000057 install(FILES vncviewer.man DESTINATION ${MAN_DIR}/man1 RENAME vncviewer.1)
DRCe66060d2011-06-25 03:02:10 +000058endif()