aboutsummaryrefslogtreecommitdiffstats
path: root/win/winvnc/CMakeLists.txt
blob: 3b576a7b6a3b010a6c783eaf6ad2f27e4529a60b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
include_directories(${CMAKE_BINARY_DIR}/win ${CMAKE_CURRENT_SOURCE_DIR})

# Disable auto-generated manifests, since we have our own
if(MSVC)
  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO")
endif()

add_library(wm_hooks SHARED
  ../wm_hooks/wm_hooks.cxx
	../wm_hooks/wm_hooks.def
	../wm_hooks/wm_hooks.rc)

string(REGEX REPLACE "/" "\\\\\\\\" CMAKE_WIN_BINARY_DIR ${CMAKE_BINARY_DIR})
string(REGEX REPLACE "/" "\\\\\\\\" CMAKE_WIN_SOURCE_DIR ${CMAKE_SOURCE_DIR})

configure_file(winvnc.rc.in winvnc.rc)

add_executable(winvnc4 WIN32
  buildTime.cxx
  ControlPanel.cxx
  JavaViewer.cxx
  ManagedListener.cxx
  QueryConnectDialog.cxx
  STrayIcon.cxx
  VNCServerService.cxx
  VNCServerWin32.cxx
  winvnc.cxx
  ${CMAKE_CURRENT_BINARY_DIR}/winvnc.rc)

target_link_libraries(winvnc4 rfb rfb_win32 Xregion network rdr ws2_32.lib)

if(BUILD_JAVA)
  set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/winvnc.rc
    PROPERTIES OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/java/VncViewer.jar)
endif()

install(TARGETS winvnc4
  RUNTIME DESTINATION .
)

install(TARGETS wm_hooks
  RUNTIME DESTINATION .
)