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