Synchronize up to trunk's revision r57756.
[reactos.git] / boot / bootdata / CMakeLists.txt
1
2 add_subdirectory(packages)
3
4 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/txtsetup.sif DESTINATION reactos NO_CAB FOR bootcd regtest)
5 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivecls_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivecls.inf FOR bootcd regtest)
6 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivedef_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivedef.inf FOR bootcd regtest)
7 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivesft_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivesft.inf FOR bootcd regtest)
8 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivesys_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivesys.inf FOR bootcd regtest)
9
10 # livecd hives
11 list(APPEND CD_HIVES
12 ${CMAKE_CURRENT_SOURCE_DIR}/hivecls_${ARCH}.inf
13 ${CMAKE_CURRENT_SOURCE_DIR}/hivedef_${ARCH}.inf
14 ${CMAKE_CURRENT_SOURCE_DIR}/hivesft_${ARCH}.inf
15 ${CMAKE_CURRENT_SOURCE_DIR}/hivesys_${ARCH}.inf
16 ${CMAKE_CURRENT_SOURCE_DIR}/livecd.inf
17 ${CMAKE_CURRENT_SOURCE_DIR}/hiveinst_${ARCH}.inf)
18
19 add_custom_command(
20 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/sam
21 ${CMAKE_CURRENT_BINARY_DIR}/default
22 ${CMAKE_CURRENT_BINARY_DIR}/security
23 ${CMAKE_CURRENT_BINARY_DIR}/software
24 ${CMAKE_CURRENT_BINARY_DIR}/system
25 COMMAND native-mkhive ${CMAKE_CURRENT_BINARY_DIR} ${CD_HIVES}
26 DEPENDS native-mkhive ${CD_HIVES})
27
28 add_custom_target(livecd_hives
29 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/sam
30 ${CMAKE_CURRENT_BINARY_DIR}/default
31 ${CMAKE_CURRENT_BINARY_DIR}/security
32 ${CMAKE_CURRENT_BINARY_DIR}/software
33 ${CMAKE_CURRENT_BINARY_DIR}/system)
34
35 add_cd_file(
36 FILE ${CMAKE_CURRENT_BINARY_DIR}/sam
37 ${CMAKE_CURRENT_BINARY_DIR}/default
38 ${CMAKE_CURRENT_BINARY_DIR}/security
39 ${CMAKE_CURRENT_BINARY_DIR}/software
40 ${CMAKE_CURRENT_BINARY_DIR}/system
41 TARGET livecd_hives
42 DESTINATION reactos/system32/config
43 FOR livecd)
44
45 #regtest
46 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/regtest.cmd DESTINATION reactos/bin FOR all)
47
48 #freeldr.ini
49 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd.ini DESTINATION root NO_CAB NAME_ON_CD freeldr.ini FOR bootcd regtest)
50 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/livecd.ini DESTINATION root NAME_ON_CD freeldr.ini FOR livecd)
51
52 #unattend
53 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/unattend.inf DESTINATION reactos NO_CAB FOR regtest)
54 add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd/unattend.inf DESTINATION reactos NO_CAB FOR bootcd)
55
56 #LiveCD shortcuts
57 macro(add_livecd_shortcut name app dest)
58 add_link(NAME ${name} CMD_LINE_ARGS ${app} ICON ${app} PATH livecd_start.cmd GUID "{450D8FBA-AD25-11D0-98A8-0800361B1103}" MINIMIZE)
59 list(APPEND LIVECD_SHORTCUTS "${CMAKE_CURRENT_BINARY_DIR}/${name}.lnk")
60 add_cd_file(FILE "${CMAKE_CURRENT_BINARY_DIR}/${name}.lnk"
61 TARGET livecd_links
62 DESTINATION ${dest}
63 FOR livecd)
64 endmacro(add_livecd_shortcut)
65
66 add_cd_file(FILE "${CMAKE_CURRENT_SOURCE_DIR}/livecd_start.cmd" DESTINATION "Profiles/Default User/My Documents" FOR livecd)
67 add_livecd_shortcut("Command Prompt" cmd.exe "Profiles/All Users/Desktop")
68 add_livecd_shortcut("Device Manager" devmgmt.exe "Profiles/All Users/Start Menu/Programs/Administrative Tools")
69 add_livecd_shortcut("Event Viewer" eventvwr.exe "Profiles/All Users/Start Menu/Programs/Administrative Tools")
70 add_livecd_shortcut("Service Manager" servman.exe "Profiles/All Users/Start Menu/Programs/Administrative Tools")
71 add_livecd_shortcut("System Configuration" msconfig.exe "Profiles/All Users/Start Menu/Programs/Administrative Tools")
72 add_livecd_shortcut("Magnify" magnify.exe "Profiles/All Users/Start Menu/Programs/Accessibility")
73 add_livecd_shortcut("Calculator" calc.exe "Profiles/All Users/Start Menu/Programs/Accessories")
74 add_livecd_shortcut("Command Prompt" cmd.exe "Profiles/All Users/Start Menu/Programs/Accessories")
75 add_livecd_shortcut("Paint" mspaint.exe "Profiles/All Users/Start Menu/Programs/Accessories")
76 add_livecd_shortcut("Notepad" notepad.exe "Profiles/All Users/Start Menu/Programs/Accessories")
77 add_livecd_shortcut("Remote desktop" mstsc.exe "Profiles/All Users/Start Menu/Programs/Accessories")
78 add_livecd_shortcut("WordPad" wordpad.exe "Profiles/All Users/Start Menu/Programs/Accessories")
79 add_livecd_shortcut("Audiorecorder" sndrec32.exe "Profiles/All Users/Start Menu/Programs/Entertainment")
80 add_livecd_shortcut("Multimedia Player" mplay32.exe "Profiles/All Users/Start Menu/Programs/Entertainment")
81 add_livecd_shortcut("Volume Control" sndvol32.exe "Profiles/All Users/Start Menu/Programs/Entertainment")
82 add_livecd_shortcut("Solitaire" sol.exe "Profiles/All Users/Start Menu/Programs/Games")
83 add_livecd_shortcut("Spider Solitaire" spider.exe "Profiles/All Users/Start Menu/Programs/Games")
84 add_livecd_shortcut("WineMine" winmine.exe "Profiles/All Users/Start Menu/Programs/Games")
85 add_livecd_shortcut("Character Map" charmap.exe "Profiles/All Users/Start Menu/Programs/System Tools")
86 add_livecd_shortcut("Keyboard Layout Switcher" kbswitch.exe "Profiles/All Users/Start Menu/Programs/System Tools")
87 add_livecd_shortcut("ReactX Diagnostic" dxdiag.exe "Profiles/All Users/Start Menu/Programs/System Tools")
88 add_livecd_shortcut("Regedit" regedit.exe "Profiles/All Users/Start Menu/Programs/System Tools")
89 add_livecd_shortcut("ReactOS Explorer" explorer.exe "Profiles/All Users/Start Menu/Programs")
90
91 add_custom_target(livecd_links DEPENDS ${LIVECD_SHORTCUTS})