2
0
mirror of https://github.com/xcat2/xNBA.git synced 2024-12-13 23:01:31 +00:00
Commit Graph

88 Commits

Author SHA1 Message Date
Michael Brown
1c67623e37 [build] Enable building with the Intel C compiler (icc) 2009-03-26 07:27:19 +00:00
Michael Brown
f95c919741 [release] Update version to 0.9.7+ post release 2009-03-02 02:29:20 +00:00
Michael Brown
e103495563 [release] Update version to 0.9.7 for release 2009-03-02 02:23:42 +00:00
Michael Brown
ba1016f378 [dhcp] Include gPXE version number within DHCP request 2009-01-08 08:39:05 +00:00
Michael Brown
fb72336fe6 [efi] Add efirom utility and .efirom image format 2009-01-08 02:19:18 +00:00
Michael Brown
314779eb36 [efi] Use elf2efi utility in place of efilink
elf2efi converts a suitable ELF executable (containing relocation
information, and with appropriate virtual addresses) into an EFI
executable.  It is less tightly coupled with the gPXE build process
and, in particular, does not require the use of a hand-crafted PE
image header in efiprefix.S.

elf2efi correctly handles .bss sections, which significantly reduces
the size of the gPXE EFI executable.
2009-01-07 22:59:05 +00:00
Michael Brown
29480dd715 [efi] Use EFI-native mechanism for accessing SMBIOS table
EFI provides a copy of the SMBIOS table accessible via the EFI system
table, which we should use instead of manually scanning through the
F000:0000 segment.
2008-12-04 23:19:12 +00:00
Marty Connor
708e6e0613 [release] Update version to 0.9.6+ post release 2008-11-23 17:01:17 -05:00
Marty Connor
74b7bc0954 [release] Update version to 0.9.6 for release 2008-11-23 16:44:45 -05:00
Michael Brown
81d92c6d34 [efi] Add EFI image format and basic runtime environment
We have EFI APIs for CPU I/O, PCI I/O, timers, console I/O, user
access and user memory allocation.

EFI executables are created using the vanilla GNU toolchain, with the
EXE header handcrafted in assembly and relocations generated by a
custom efilink utility.
2008-10-13 10:24:14 +01:00
Michael Brown
e817a347fb [makefile] Split config.h out into config/*.h and kill off mkconfig.pl 2008-10-08 02:17:32 +01:00
Michael Brown
a2588547f9 [makefile] Add support for multiple build platforms
Allow for the build CPU architecture and platform to be specified as part
of the make command goals.  For example:

  make bin/rtl8139.rom      # Standard i386 PC-BIOS build

  make bin-efi/rtl8139.efi  # i386 EFI build

The generic syntax is "bin[-[arch-]platform]", with the default
architecture being "i386" (regardless of the host architecture) and the
default platform being "pcbios".

Non-path targets such as "srcs" can be specified using e.g.

  make bin-efi srcs

Note that this changeset is merely Makefile restructuring to allow the
build architecture and platform to be determined by the make command
goals, and to export these to compiled code via the ARCH and PLATFORM
defines.  It doesn't actually introduce any new build platforms.
2008-10-08 02:17:25 +01:00
Michael Brown
f0b942ef42 [makefile] Kill off arch/$(ARCH)/Config
The arch/i386/Config file has long been marked as deprecated.  Move all
the pertinent bits to arch/i386/Makefile instead and remove
arch/i386/Config.
2008-10-07 22:46:43 +01:00
H. Peter Anvin
e899f100ca [makefile] Quote argument to sed containing []
[] are shell metacharacters, and they can get confused by files in the
local directory.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 21:54:41 +01:00
H. Peter Anvin
e8b6077566 [makefile] Avoid using ?=
?= in a Makefile means that that variable can be overridden by the
environment.  This is confusing to users, especially with a generic
name like "ARCH".

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-09-30 21:53:34 +01:00
Michael Brown
3ad348e55a [phantom] Add support for NetXen Phantom NICs 2008-07-04 19:38:14 -07:00
H. Peter Anvin
25450dc59c [Config] remove src/Config
Remove src/Config as it has no more users, and conflicts with
src/config on case-deficient filesystems.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2008-06-30 12:26:13 -07:00
Marty Connor
fe3162ab1c [Makefile] Add $(BIN)/undionly.kpxe as default build target 2008-06-09 08:44:11 -04:00
Michael Brown
c899bdc5a8 [Makefile] Remove obsolete SRCDIRS 2008-05-23 02:35:20 +01:00
Michael Brown
74fd544101 Added the embedded pxelinux payload patch from hpa. 2008-01-08 15:51:36 +00:00
Marty Connor
a9b8197f64 Unconditionally set utility program variables in Makefile to allow CROSS_COMPILE to work.
stappers and xl0 pointed out that gnu make sets some variables, so ?=
is ineffective in some cases where we use it.. Cross-compilation
requires that some variables can be overridden in the
src/$(ARCH)/Config file, so include that file _after_ utility program
variables are set.
2008-01-02 14:07:52 -05:00
Michael Brown
3ab571006e Yet another attempt to autodetect an appropriate "echo -e". 2007-12-07 14:25:02 -06:00
Michael Brown
a8bddfe153 Another (hopefully more robust) attempt to find a usable substitute
for "echo -e" on the host system.
2007-12-08 00:50:57 +00:00
Michael Brown
cf895a8c7c Avoid Makefile syntax that requires make >= 3.81. 2007-12-07 04:14:06 +00:00
Michael Brown
3b58fc0baf Try to fix echo-detection to work on all systems that provide any
suitable "echo -e" substitute.
2007-12-07 03:35:32 +00:00
Marty Connor
8ce93f0876 Fix typo. 2007-11-18 11:12:54 -05:00
Marty Connor
e21391d7b5 Add e1000 directory to build, since the driver compiles cleanly. 2007-11-18 10:57:20 -05:00
Marty Connor
2b8f77aca1 Add src/drivers/net/e1000 as home of new e1000 driver 2007-11-18 10:28:25 -05:00
Michael Brown
982e4dd101 Separated out to a clean new drivers/infiniband directory. 2007-09-18 06:06:55 +01:00
Michael Brown
5f6439c828 Merge branch 'master' into 3leaf-rewrite 2007-09-11 15:42:17 +01:00
Michael Brown
6f799db5bd Use "/bin/echo -e" instead of shell builtin echo; some shells don't
implement the -e option.

(Thanks to Jim McQuillan for this suggestion.)
2007-09-08 23:38:17 +01:00
Michael Brown
b42c5905cb Very quick and very dirty hack to get the Mellanox code building
inside gPXE.
2007-08-18 18:04:18 +01:00
Michael Brown
5cda460f19 Build the all-driver images by default, and print instructions for usage. 2007-08-09 20:17:35 -07:00
Holger Lubitz
91a8ae1216 include more changes for x86_64 2007-08-02 01:55:48 +01:00
Michael Brown
4ce8d61a5c Import various libgcc functions from syslinux.
Experimentation reveals that gcc ignores -mrtd for the implicit
arithmetic functions (e.g. __udivdi3), but not for the implicit
memcpy() and memset() functions.  Mark the implicit arithmetic
functions with __attribute__((cdecl)) to compensate for this.

(Note: we cannot mark with with __cdecl, because we define __cdecl to
incorporate regparm(0) as well.)
2007-07-30 02:43:43 +01:00
Michael Brown
ed9ba18ec6 Allow -Werror to be temporarily disabled using "make NO_WERROR=1" 2007-07-24 14:01:14 +01:00
Michael Brown
b188311edd We can finally enable -Werror :) 2007-07-24 12:43:11 +01:00
Marty Connor
63c9131eeb Add NIC to targets that are always made.
Even though it is only currently used for rom-o-matic.net code,
it is good to make sure it gets built, and that the parsing code
is working.
2007-07-22 20:41:53 -04:00
Michael Brown
38dbe14bbe Kill off redundant references to the .zprefixes. 2007-07-16 17:26:07 +01:00
Michael Brown
048bbeeebc Compressed ROM images now work. 2007-07-16 16:58:38 +01:00
Michael Brown
37fa9a8706 Split the objcopy stage out of final image preparation to a separate
bin/%.bin target.
2007-07-16 13:41:27 +01:00
Michael Brown
c482fc90fb Revert "no need for depending on build library ("blib")"
This reverts commit 9dc2515d7e.

I want "make" to actually build something.
2007-07-16 13:06:58 +01:00
Holger Lubitz
bfc4737751 Update Makefile for compilation on ARCH=x86_64 2007-07-09 03:31:14 +01:00
Michael Brown
405be071de Pad ROM images to 512 bytes, not powers of two 2007-07-05 23:36:45 +01:00
Marty Connor
969642dca6 Add warning about formats that are not working until we fix them 2007-03-02 16:25:42 +00:00
Michael Brown
6ce5c97981 Made most of the build much quieter 2007-01-31 11:06:36 +00:00
Michael Brown
bd873525ff Add matrixssl directory 2007-01-26 04:36:50 +00:00
Michael Brown
7cdc6529bb Build external axtls code 2007-01-26 02:03:34 +00:00
Michael Brown
37f1b12587 Allow truly arbitrary debug levels to be specified via DEBUG= 2007-01-18 19:00:09 +00:00
Michael Brown
10980c12ee Add image directory back in 2007-01-11 14:43:15 +00:00