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"
11 * Build ID string calculations
16 #define XSTR(s) STR(s)
20 #include "config/.buildserial.h"
21 #define BUILD_SERIAL_STR " #" XSTR(BUILD_SERIAL_NUM)
23 #define BUILD_SERIAL_STR ""
27 #define BUILD_ID_STR " " BUILD_ID
29 #define BUILD_ID_STR ""
32 #if defined(BUILD_ID) || defined(BUILD_SERIAL)
33 #define BUILD_STRING " [build" BUILD_ID_STR BUILD_SERIAL_STR "]"
35 #define BUILD_STRING ""
39 * Drag in all requested console types
41 * CONSOLE_DUAL sets both CONSOLE_FIRMWARE and CONSOLE_SERIAL for
42 * legacy compatibility.
47 #undef CONSOLE_FIRMWARE
48 #define CONSOLE_FIRMWARE 1
50 #define CONSOLE_SERIAL 1
53 #ifdef CONSOLE_FIRMWARE
54 REQUIRE_OBJECT ( bios_console );
57 REQUIRE_OBJECT ( serial_console );
59 #ifdef CONSOLE_DIRECT_VGA
60 REQUIRE_OBJECT ( video_subr );
63 REQUIRE_OBJECT ( btext );
66 REQUIRE_OBJECT ( pc_kbd );
69 REQUIRE_OBJECT ( syslog );
73 * Drag in all requested timers
76 REQUIRE_OBJECT ( timer_bios );
79 REQUIRE_OBJECT ( timer_rdtsc );
83 * Drag in all requested network protocols
87 REQUIRE_OBJECT ( ipv4 );
91 * Drag in all requested download protocols
94 #ifdef DOWNLOAD_PROTO_TFTP
95 REQUIRE_OBJECT ( tftp );
97 #ifdef DOWNLOAD_PROTO_NFS
98 REQUIRE_OBJECT ( nfs );
100 #ifdef DOWNLOAD_PROTO_HTTP
101 REQUIRE_OBJECT ( http );
103 #ifdef DOWNLOAD_PROTO_HTTPS
104 REQUIRE_OBJECT ( https );
106 #ifdef DOWNLOAD_PROTO_FTP
107 REQUIRE_OBJECT ( ftp );
109 #ifdef DOWNLOAD_PROTO_TFTM
110 REQUIRE_OBJECT ( tftm );
112 #ifdef DOWNLOAD_PROTO_SLAM
113 REQUIRE_OBJECT ( slam );
117 * Drag in all requested resolvers
121 REQUIRE_OBJECT ( dns );
124 REQUIRE_OBJECT ( nmb );
128 * Drag in all requested image formats
132 REQUIRE_OBJECT ( nbi );
135 REQUIRE_OBJECT ( elfboot );
138 REQUIRE_OBJECT ( freebsd );
140 #ifdef IMAGE_MULTIBOOT
141 REQUIRE_OBJECT ( multiboot );
144 REQUIRE_OBJECT ( aout );
147 REQUIRE_OBJECT ( wince );
150 REQUIRE_OBJECT ( pxe_image );
153 REQUIRE_OBJECT ( script );
156 REQUIRE_OBJECT ( bzimage );
158 #ifdef IMAGE_ELTORITO
159 REQUIRE_OBJECT ( eltorito );
162 REQUIRE_OBJECT ( comboot );
163 REQUIRE_OBJECT ( com32 );
164 REQUIRE_OBJECT ( comboot_call );
165 REQUIRE_OBJECT ( com32_call );
166 REQUIRE_OBJECT ( com32_wrapper );
167 REQUIRE_OBJECT ( comboot_resolv );
171 * Drag in all requested commands
175 REQUIRE_OBJECT ( autoboot_cmd );
178 REQUIRE_OBJECT ( nvo_cmd );
181 REQUIRE_OBJECT ( config_cmd );
184 REQUIRE_OBJECT ( ifmgmt_cmd );
187 REQUIRE_OBJECT ( route_cmd );
190 REQUIRE_OBJECT ( image_cmd );
193 REQUIRE_OBJECT ( dhcp_cmd );
196 REQUIRE_OBJECT ( sanboot_cmd );
200 * Drag in miscellaneous objects
204 REQUIRE_OBJECT ( nulltrap );
207 REQUIRE_OBJECT ( gdbidt );
208 REQUIRE_OBJECT ( gdbserial );
209 REQUIRE_OBJECT ( gdbstub_cmd );
212 REQUIRE_OBJECT ( gdbidt );
213 REQUIRE_OBJECT ( gdbudp );
214 REQUIRE_OBJECT ( gdbstub_cmd );
218 * Drag in objects that are always required, but not dragged in via
219 * symbol dependencies.
222 REQUIRE_OBJECT ( device );