blob: c1facc67c6408fdccf147dff8efa25fb711b2539 [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
DRCd8e93dc2011-07-28 22:13:40 +00006 buildTime.cxx
Martin Koegler498ef462011-09-04 07:04:43 +00007 menukey.cxx
Pierre Ossman5156d5e2011-03-09 09:42:34 +00008 CConn.cxx
9 DesktopWindow.cxx
10 UserDialog.cxx
Pierre Ossman561ff0c2011-05-13 14:04:59 +000011 ServerDialog.cxx
Pierre Ossmand463b572011-05-16 12:04:43 +000012 OptionsDialog.cxx
Pierre Ossmand50b3d12011-04-15 07:46:56 +000013 Viewport.cxx
Pierre Ossman5156d5e2011-03-09 09:42:34 +000014 parameters.cxx
Pierre Ossmand014d052011-03-09 13:28:12 +000015 keysym2ucs.c
Pierre Ossman5156d5e2011-03-09 09:42:34 +000016 vncviewer.cxx)
17
Pierre Ossman407a5c32011-05-26 14:48:29 +000018if(WIN32)
Pierre Ossmanca937762012-03-27 12:30:19 +000019 # Since vncviewer.rc is generated, local includes will be looking
20 # in the wrong directory. We need to help it out.
21 include_directories(${CMAKE_CURRENT_SOURCE_DIR})
22 configure_file(vncviewer.rc.in vncviewer.rc)
23 set(VNCVIEWER_SOURCES
24 ${VNCVIEWER_SOURCES}
25 ${CMAKE_CURRENT_BINARY_DIR}/vncviewer.rc)
Pierre Ossman407a5c32011-05-26 14:48:29 +000026endif()
27
Pierre Ossmanca937762012-03-27 12:30:19 +000028if(WIN32)
29 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} win32.c)
30elseif(APPLE)
Pierre Ossman407a5c32011-05-26 14:48:29 +000031 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} cocoa.mm)
32endif()
33
Pierre Ossmanb4cb8762011-06-13 13:24:29 +000034if(WIN32)
35 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} Win32PixelBuffer.cxx)
Pierre Ossmanc18753c2011-06-17 07:35:56 +000036elseif(APPLE)
37 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} OSXPixelBuffer.cxx)
38else()
Pierre Ossman13500692011-06-13 11:23:08 +000039 set(VNCVIEWER_SOURCES ${VNCVIEWER_SOURCES} X11PixelBuffer.cxx)
40endif()
41
DRCc3a85172011-07-05 18:55:55 +000042if(WIN32)
43 add_executable(vncviewer WIN32 ${VNCVIEWER_SOURCES})
44else()
45 add_executable(vncviewer ${VNCVIEWER_SOURCES})
46endif()
Pierre Ossmanf14bf332011-04-14 12:49:03 +000047
Peter Åstrand13ee3212012-08-27 08:12:47 +000048target_link_libraries(vncviewer rfb network rdr os Xregion ${FLTK_LIBRARIES} ${GETTEXT_LIBRARIES})
Peter Åstrand03327ae2011-04-19 12:31:44 +000049
Peter Åstrand13ee3212012-08-27 08:12:47 +000050# When building with GnuTLS, librdr depends on ws2_32, so in order to make
51# MinGW happy, we need to put ws2_32 in librdr's target_link_libraries string,
52# not here.
53if(NOT GNUTLS_FOUND AND WIN32)
54 target_link_libraries(vncviewer ws2_32)
DRC638314d2011-07-28 09:22:07 +000055endif()
56
Pierre Ossman448fd3a2012-03-27 10:28:18 +000057install(TARGETS vncviewer DESTINATION ${BIN_DIR})
DRCe66060d2011-06-25 03:02:10 +000058if(UNIX)
Pierre Ossman448fd3a2012-03-27 10:28:18 +000059 install(FILES vncviewer.man DESTINATION ${MAN_DIR}/man1 RENAME vncviewer.1)
DRCe66060d2011-06-25 03:02:10 +000060endif()