2 * This program is free software; you can redistribute it and/or
3 * modify it under the terms of the GNU General Public License as
4 * published by the Free Software Foundation; either version 2, or (at
5 * your option) any later version.
8 #include <config/general.h>
9 #include <config/console.h>
12 * Build ID string calculations
17 #define XSTR(s) STR(s)
21 #include "config/.buildserial.h"
22 #define BUILD_SERIAL_STR " #" XSTR(BUILD_SERIAL_NUM)
24 #define BUILD_SERIAL_STR ""
28 #define BUILD_ID_STR " " BUILD_ID
30 #define BUILD_ID_STR ""
33 #if defined(BUILD_ID) || defined(BUILD_SERIAL)
34 #define BUILD_STRING " [build" BUILD_ID_STR BUILD_SERIAL_STR "]"
36 #define BUILD_STRING ""
40 * Drag in all requested console types
45 REQUIRE_OBJECT ( bios_console );
48 REQUIRE_OBJECT ( serial_console );
50 #ifdef CONSOLE_DIRECT_VGA
51 REQUIRE_OBJECT ( video_subr );
54 REQUIRE_OBJECT ( btext );
57 REQUIRE_OBJECT ( pc_kbd );
60 REQUIRE_OBJECT ( syslog );
63 REQUIRE_OBJECT ( efi_console );
67 * Drag in all requested network protocols
71 REQUIRE_OBJECT ( ipv4 );
75 * Drag in all requested download protocols
78 #ifdef DOWNLOAD_PROTO_TFTP
79 REQUIRE_OBJECT ( tftp );
81 #ifdef DOWNLOAD_PROTO_NFS
82 REQUIRE_OBJECT ( nfs );
84 #ifdef DOWNLOAD_PROTO_HTTP
85 REQUIRE_OBJECT ( http );
87 #ifdef DOWNLOAD_PROTO_HTTPS
88 REQUIRE_OBJECT ( https );
90 #ifdef DOWNLOAD_PROTO_FTP
91 REQUIRE_OBJECT ( ftp );
93 #ifdef DOWNLOAD_PROTO_TFTM
94 REQUIRE_OBJECT ( tftm );
96 #ifdef DOWNLOAD_PROTO_SLAM
97 REQUIRE_OBJECT ( slam );
101 * Drag in all requested SAN boot protocols
104 #ifdef SANBOOT_PROTO_ISCSI
105 REQUIRE_OBJECT ( iscsiboot );
107 #ifdef SANBOOT_PROTO_AOE
108 REQUIRE_OBJECT ( aoeboot );
112 * Drag in all requested resolvers
116 REQUIRE_OBJECT ( dns );
119 REQUIRE_OBJECT ( nmb );
123 * Drag in all requested image formats
127 REQUIRE_OBJECT ( nbi );
130 REQUIRE_OBJECT ( elfboot );
133 REQUIRE_OBJECT ( freebsd );
135 #ifdef IMAGE_MULTIBOOT
136 REQUIRE_OBJECT ( multiboot );
139 REQUIRE_OBJECT ( aout );
142 REQUIRE_OBJECT ( wince );
145 REQUIRE_OBJECT ( pxe_image );
148 REQUIRE_OBJECT ( script );
151 REQUIRE_OBJECT ( bzimage );
153 #ifdef IMAGE_ELTORITO
154 REQUIRE_OBJECT ( eltorito );
157 REQUIRE_OBJECT ( comboot );
158 REQUIRE_OBJECT ( com32 );
159 REQUIRE_OBJECT ( comboot_call );
160 REQUIRE_OBJECT ( com32_call );
161 REQUIRE_OBJECT ( com32_wrapper );
162 REQUIRE_OBJECT ( comboot_resolv );
165 REQUIRE_OBJECT ( efi_image );
169 * Drag in all requested commands
173 REQUIRE_OBJECT ( autoboot_cmd );
176 REQUIRE_OBJECT ( nvo_cmd );
179 REQUIRE_OBJECT ( config_cmd );
182 REQUIRE_OBJECT ( ifmgmt_cmd );
185 REQUIRE_OBJECT ( route_cmd );
188 REQUIRE_OBJECT ( image_cmd );
191 REQUIRE_OBJECT ( dhcp_cmd );
194 REQUIRE_OBJECT ( sanboot_cmd );
197 REQUIRE_OBJECT ( login_cmd );
200 REQUIRE_OBJECT ( time_cmd );
203 REQUIRE_OBJECT ( digest_cmd );
207 * Drag in miscellaneous objects
211 REQUIRE_OBJECT ( nulltrap );
214 REQUIRE_OBJECT ( gdbidt );
215 REQUIRE_OBJECT ( gdbserial );
216 REQUIRE_OBJECT ( gdbstub_cmd );
219 REQUIRE_OBJECT ( gdbidt );
220 REQUIRE_OBJECT ( gdbudp );
221 REQUIRE_OBJECT ( gdbstub_cmd );
225 * Drag in objects that are always required, but not dragged in via
226 * symbol dependencies.
229 REQUIRE_OBJECT ( device );
230 REQUIRE_OBJECT ( embedded );