forked from pool/elilo
- elilo.efi
* update to elilo-3.16 to fix OBS download check. Essentially "white-space" changes, plus bumping version number, minus Debian idiosyncrasies. - elilo.spec * Remove date string from 'eliloalt'. * Avoid duplication of 'elilo.txt'. - elilo.pl * Support for 'UUID=' and 'LABEL=' to specify root file-system. - Update openSUSE to elilo-3.14 from SLE11. * Avoid crash caused by EFI memory map changes. (bnc#800035) OBS-URL: https://build.opensuse.org/package/show/Base:System/elilo?expand=0&rev=12
This commit is contained in:
parent
a2cc45afea
commit
3f8af3bf30
@ -1,44 +1,47 @@
|
||||
3 . 1 4 R E L E A S E N O T E S
|
||||
3 . 1 6 R E L E A S E N O T E S
|
||||
===================================
|
||||
|
||||
QUICK CHANGE SUMMARY
|
||||
====================
|
||||
* Fixes for newly emerging x86_64 UEFI-2 boxes where long standing old
|
||||
assumptions are borked.
|
||||
* Uptake of SUSE and community patches
|
||||
- add sysfs support for efi vars (formerly /proc/efi/vars)
|
||||
- fix strncpy overflow
|
||||
- fix bzimage alloc
|
||||
- cleanups
|
||||
- support longer command line
|
||||
- yet some more mac fixes
|
||||
- align elilo with latest kernel boot protocol format.
|
||||
- new memory management strategy for initrd and kernel image loading.
|
||||
* add text-mode command line option, force text-mode (bypass graphics probes).
|
||||
* replace error output on GOP handle failed, downgraded to normal
|
||||
print status with more informative output.
|
||||
* Fix ia32 build issue with new gcc due to stack protector enforcement.
|
||||
* Adds native x86x crossbuild functionality
|
||||
build 32bit or 64bit versions from either environment via
|
||||
make ARCH=ia32|x86_64 (the ARCH IS case sensitive).
|
||||
make by itself will default to the native host arch.
|
||||
* Add console reset call during initialization. thanks A. Steinmetz
|
||||
* simplify output of no GOP warning text so it no longer looks like an error.
|
||||
* MAJOR: Fixed Fault crash when EFI memory map changes from under elilo.
|
||||
(from an outside interrupt in this case). When the EFI Memory map
|
||||
changes after elilo has already built boot params to pass to the
|
||||
kernel the EFI call to ExitBootSvcs just prior to boot will fail
|
||||
because elilo has the old map key. This is valid EFI behavior, elilo
|
||||
retries to pick up the new memory map and key but had already freed
|
||||
the start params portion of boot params resulting in a NULL DEREF
|
||||
crash reset once it hands the now bogus boot params to the kernel on
|
||||
the 2nd successful call to exit efi and boot.
|
||||
Thanks to Jerry Hoemann @ HP for reporting this bug.
|
||||
* minor bugfix, fixed -m option broken. thanks Allan-lsk.
|
||||
|
||||
BUILD NOTES
|
||||
====================
|
||||
You will need the following toolchain to build elilo-3.14 from source
|
||||
the elilo build environment is optimized for Debian and Debian based distros.
|
||||
elilo-3.14 was built in the Debian Lenny (Ubuntu 10.04) build environment.
|
||||
elilo-3.16 was built in the squeeze+(ubuntu 11.x) build environments except
|
||||
for itanium which is unchanged to best support legacy enterprise configs.
|
||||
Toolchain versions for this release were:
|
||||
x86x(32 &64)
|
||||
* gnu-efi --> 3.0i-2ubuntu1
|
||||
* gcc ------> 4.4.3-1ubuntu1
|
||||
* binutils -> 2.20.1-3ubuntu7
|
||||
x86x(32 & 64bit versions)
|
||||
* gnu-efi --> 3.0i-3
|
||||
* gcc ------> 4:4.4.4-1ubuntu2
|
||||
* binutils -> 2.20.51.20100908-0ubuntu2
|
||||
ia64
|
||||
* gnu-efi --> 3.0e-2
|
||||
* gcc ------> 4.3.2-2
|
||||
* binutils -> 2.18.1~cvs20080103-7
|
||||
|
||||
* if you use a debian based (lenny)build environment you will have no problems
|
||||
* if you use a debian based build environment you will have no problems
|
||||
and setting it up is simple. you will be able to build elilo in 3 steps:
|
||||
1. apt-get install gnu-efi, gcc, binutils
|
||||
2. apt-get source elilo (or download elilo-3.14.tar.gz from SourceForge.)
|
||||
3. extract source tarball and cd ./elilo-3.14 and type $> make
|
||||
2. apt-get source elilo (or download elilo-3.16 source from SourceForge.)
|
||||
3. extract source tarball and cd to ./$your-elilo-source and type $> make
|
||||
|
||||
|
||||
** If you use the upstream toolchain tarballs(i.e. pre distro) you will need
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:93fb9f9ec22763c3071a19422b3a8073cd020e5d6cca5762a0ff35871f17a4b0
|
||||
size 219473
|
3
elilo-3.16-source.tar.xz
Normal file
3
elilo-3.16-source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4c0b247d96cfa9067e6728ebc95d511ffda9f47af4831c2ec7c19dfa2ea5f9a0
|
||||
size 147468
|
@ -7,7 +7,7 @@
|
||||
|
||||
--- a/x86_64/system.c
|
||||
+++ b/x86_64/system.c
|
||||
@@ -957,6 +957,11 @@ do_memmap:
|
||||
@@ -953,6 +953,11 @@ do_memmap:
|
||||
#endif
|
||||
if (e820_map_overflow && !e820_map_overflow_warned) {
|
||||
CHAR8 *aem = (CHAR8 *)"add_efi_memmap";
|
||||
@ -19,7 +19,7 @@
|
||||
e820_map_overflow_warned++;
|
||||
|
||||
#if DEBUG_CREATE_BOOT_PARAMS
|
||||
@@ -968,11 +973,26 @@ do_memmap:
|
||||
@@ -964,11 +969,26 @@ do_memmap:
|
||||
goto do_memmap;
|
||||
}
|
||||
|
||||
@ -121,14 +121,14 @@
|
||||
#endif /* __ELILO_SYSDEPS_X86_64_H__ */
|
||||
--- a/bootparams.c
|
||||
+++ b/bootparams.c
|
||||
@@ -96,21 +96,14 @@ create_boot_params(CHAR16 *args, memdesc
|
||||
@@ -93,21 +93,14 @@ create_boot_params(CHAR16 *args, memdesc
|
||||
*/
|
||||
Memset(bp, 0, BOOT_PARAM_MEMSIZE);
|
||||
|
||||
+ /*
|
||||
+ * Convert kernel command line args from UNICODE to ASCII
|
||||
+ * and put them where the kernel expects them:
|
||||
+ */
|
||||
+ */
|
||||
U2ascii(args, cp, cmdline_size);
|
||||
|
||||
if (sysdeps_create_boot_params(bp, cp, initrd, vmcode, cookie) == -1) return 0;
|
||||
|
@ -44,7 +44,7 @@
|
||||
|
||||
--- a/fs/netfs.c
|
||||
+++ b/fs/netfs.c
|
||||
@@ -522,7 +522,8 @@ netfs_open(netfs_interface_t *this, CHAR
|
||||
@@ -517,7 +517,8 @@ netfs_open(netfs_interface_t *this, CHAR
|
||||
netfs_fd_t *f;
|
||||
EFI_STATUS status;
|
||||
CHAR8 ascii_name[FILENAME_MAXLEN];
|
||||
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
elilo.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
--- a/elilo.c
|
||||
+++ b/elilo.c
|
||||
@@ -483,6 +483,9 @@ efi_main (EFI_HANDLE image, EFI_SYSTEM_T
|
||||
*/
|
||||
uefi_call_wrapper(BS->SetWatchdogTimer, 4, 0, 0x0, 0, NULL);
|
||||
|
||||
+ /* start a clean console */
|
||||
+ uefi_call_wrapper(systab->ConOut->Reset, 2, systab->ConOut, FALSE);
|
||||
+
|
||||
/* initialize memory allocator */
|
||||
if (alloc_init() == -1) return EFI_LOAD_ERROR;
|
||||
|
42
elilo-de-debianify.diff
Normal file
42
elilo-de-debianify.diff
Normal file
@ -0,0 +1,42 @@
|
||||
---
|
||||
Make.defaults | 5 +++--
|
||||
ia32/Makefile | 2 +-
|
||||
x86_64/Makefile | 2 +-
|
||||
3 files changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
--- a/Make.defaults
|
||||
+++ b/Make.defaults
|
||||
@@ -63,8 +63,9 @@ CDIR := $(shell if [ "$$PWD" != "" ];
|
||||
TOPDIR =
|
||||
ALLSUBDIRS = ia32 ia64 x86_64 fs choosers devschemes tools
|
||||
|
||||
-HOSTARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH | sed s,i[3456789]86,ia32, | sed s,amd64,x86_64, )
|
||||
-ARCH := $(shell dpkg-architecture -qDEB_BUILD_ARCH | sed s,i[3456789]86,ia32, | sed s,amd64,x86_64, )
|
||||
+HOSTARCH := $(shell if ! dpkg-architecture -qDEB_BUILD_ARCH 2>/dev/null; then \
|
||||
+ uname -m; fi | sed -e s,i[3456789]86,ia32, -e s,amd64,x86_64, )
|
||||
+ARCH := $(HOSTARCH)
|
||||
INCDIR = -I. -I$(TOPDIR) -I$(EFIINC) -I$(EFIINC)/$(ARCH) -I$(EFIINC)/protocol -I$(TOPDIR)/efi110
|
||||
CPPFLAGS = -DCONFIG_$(ARCH)
|
||||
|
||||
--- a/x86_64/Makefile
|
||||
+++ b/x86_64/Makefile
|
||||
@@ -43,7 +43,7 @@ all: $(TARGET)
|
||||
system.o: rmswitch.h
|
||||
|
||||
rmswitch.h: bin_to_h.c rmswitch.S
|
||||
- $(CC) -o bin_to_h $(SRCDIR)/bin_to_h.c
|
||||
+ $(CC) $(OPTIMFLAGS) -o bin_to_h $(SRCDIR)/bin_to_h.c
|
||||
$(AS) -o rmswitch.o $(SRCDIR)/rmswitch.S
|
||||
$(LD) -Ttext 0x0 -s --oformat binary -o rmswitch rmswitch.o
|
||||
./bin_to_h <rmswitch >rmswitch.h
|
||||
--- a/ia32/Makefile
|
||||
+++ b/ia32/Makefile
|
||||
@@ -42,7 +42,7 @@ all: $(TARGET)
|
||||
system.o: rmswitch.h
|
||||
|
||||
rmswitch.h: bin_to_h.c rmswitch.S
|
||||
- $(CC) -o bin_to_h $(SRCDIR)/bin_to_h.c
|
||||
+ $(CC) $(OPTIMFLAGS) -o bin_to_h $(SRCDIR)/bin_to_h.c
|
||||
$(AS) -o rmswitch.o $(SRCDIR)/rmswitch.S
|
||||
$(LD) -Ttext 0x0 -s --oformat binary -o rmswitch rmswitch.o
|
||||
./bin_to_h <rmswitch >rmswitch.h
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
x86_64/system.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/x86_64/system.c
|
||||
+++ b/x86_64/system.c
|
||||
@@ -641,9 +641,9 @@ sysdeps_create_boot_params(
|
||||
*/
|
||||
if (param_start != NULL) {
|
||||
CopyMem(bp, param_start, 0x2000);
|
||||
- free(param_start);
|
||||
- param_start = NULL;
|
||||
- param_size = 0;
|
||||
+ /* keeping param_start might lose some RAM,
|
||||
+ * but doesn't crash...
|
||||
+ */
|
||||
}
|
||||
/*
|
||||
* Save off our header revision information.
|
@ -1,9 +1,22 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 25 13:37:55 UTC 2013 - rw@suse.de
|
||||
|
||||
- elilo.efi
|
||||
* update to elilo-3.16 to fix OBS download check.
|
||||
Essentially "white-space" changes, plus bumping version number,
|
||||
minus Debian idiosyncrasies.
|
||||
- elilo.spec
|
||||
* Remove date string from 'eliloalt'.
|
||||
* Avoid duplication of 'elilo.txt'.
|
||||
- elilo.pl
|
||||
* Support for 'UUID=' and 'LABEL=' to specify root file-system.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 24 17:18:48 UTC 2013 - rw@suse.de
|
||||
|
||||
- elilo.spec
|
||||
* Add perl modules to 'PreReq'. (bnc#842183)
|
||||
- Update to elilo-3.14 from SLE11.
|
||||
- Update openSUSE to elilo-3.14 from SLE11.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 16 12:01:42 UTC 2013 - rw@suse.de
|
||||
@ -32,7 +45,7 @@ Fri Apr 19 13:28:08 UTC 2013 - rw@suse.com
|
||||
|
||||
- elilo.efi
|
||||
* Clear console on startup. (bnc#812799)
|
||||
* Avoid crash caused by EFI memory map changes.
|
||||
* Avoid crash caused by EFI memory map changes. (bnc#800035)
|
||||
- elilo.pl
|
||||
* Work around chainloading issue with XEN. (bnc#812109)
|
||||
|
||||
@ -153,7 +166,7 @@ Fri Jun 17 12:54:53 UTC 2011 - rw@suse.de
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 17 10:51:23 UTC 2010 - coolo@novell.com
|
||||
|
||||
- Update to elilo-3.12 from SLE11 to fix EFI boot (bnc#659368)
|
||||
- Update openSUSE to elilo-3.12 from SLE11 to fix EFI boot (bnc#659368)
|
||||
(see ChangeLog for a detailed log)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
38
elilo.pl
38
elilo.pl
@ -1,5 +1,5 @@
|
||||
#!/usr/bin/perl -w
|
||||
# $Id: elilo.pl,v 0.85 2013/08/15 17:38:03 rw Exp $
|
||||
# $Id: elilo.pl,v 0.86 2013/10/25 14:22:33 rw Exp $
|
||||
use strict;
|
||||
|
||||
my $C = $0; $C =~ s{^.*/}{};
|
||||
@ -57,7 +57,7 @@ EoD
|
||||
$| = 1;
|
||||
|
||||
sub Version() {
|
||||
my $v = q($Revision: 0.85 $ );
|
||||
my $v = q($Revision: 0.86 $ );
|
||||
$v =~ s/^\$ Rev.*:\ ([0-9.]+)\ \$\ /$1/x;
|
||||
$v .= " (part of elilo-$Edition)" if ( $Edition ne "\@EDITION\@" );
|
||||
print "$C version $v\n";
|
||||
@ -524,10 +524,19 @@ sub readLink($) {
|
||||
sub GconfProbeFSuuid($) {
|
||||
my( $dev) = @_;
|
||||
my $udir = "/dev/disk/by-uuid";
|
||||
my $ldir = "/dev/disk/by-label";
|
||||
my $uuid = "";
|
||||
my $tgt = "";
|
||||
|
||||
Info( 5, "GconfProbeFSuuid($dev): \n");
|
||||
if ( ! -b $dev ) {
|
||||
if ( $dev =~ m{^UUID=([0-9A-Fa-f-]+)$} ) {
|
||||
return ( (-b "$udir/$1") ? $1 : "" );
|
||||
} elsif ( $dev =~ m{^LABEL=([0-9A-Fa-f-]+)$} ) {
|
||||
$dev = readLink( "$ldir/$1");
|
||||
return ( "" ) unless ( defined( $dev) );
|
||||
}
|
||||
}
|
||||
while ( -l $dev ) {
|
||||
$_ = readLink( $dev);
|
||||
return ( "" ) unless ( defined( $_) );
|
||||
@ -553,23 +562,24 @@ sub GconfProbeFSuuid($) {
|
||||
return ( $uuid );
|
||||
}
|
||||
sub GconfFSuuid($) {
|
||||
my( $rdev) = @_;
|
||||
return ( "" ) unless ( $Sconf{SB} ) ;
|
||||
return ( $GconfFSuuid{$rdev} ) if ( exists( $GconfFSuuid{$rdev}) );
|
||||
my( $spec) = @_;
|
||||
return ( "" ) unless ( $Sconf{SB} );
|
||||
return ( $GconfFSuuid{$spec} ) if ( exists( $GconfFSuuid{$spec}) );
|
||||
|
||||
my $ruuid = "";
|
||||
my $uuid = "";
|
||||
my $cmd = "/usr/sbin/grub2-probe";
|
||||
if ( -x $cmd ) {
|
||||
chomp( $ruuid = qx{$cmd --device "$rdev" --target=fs_uuid}) if ( -x $cmd );
|
||||
my $dop = (-b $spec) ? "--device" : "";
|
||||
chomp( $uuid = qx{$cmd --target=fs_uuid $dop "$spec"});
|
||||
} else {
|
||||
$ruuid = GconfProbeFSuuid( $rdev);
|
||||
$uuid = GconfProbeFSuuid( $spec);
|
||||
}
|
||||
if ( ! $ruuid ) {
|
||||
Panic( 3, "couldn't determine fs_uuid -- skip Secure Boot (grub) config!\n");
|
||||
if ( ! defined( $uuid) || ! $uuid ) {
|
||||
Panic( 3, "couldn't determine fs_uuid -- skip SecureBoot/grub2 config!\n");
|
||||
$Sconf{SB} = "";
|
||||
}
|
||||
$GconfFSuuid{$rdev} = $ruuid;
|
||||
return ( $ruuid );
|
||||
$GconfFSuuid{$spec} = $uuid;
|
||||
return ( $uuid );
|
||||
}
|
||||
sub Gconf() {
|
||||
my @parts = ("pre", "Econf", "Xconf", "post");
|
||||
@ -621,7 +631,7 @@ sub Gconf() {
|
||||
$Gconf{$k} = $Econf{$lbl}{$k} if (exists( $Econf{$lbl}{$k}));
|
||||
}
|
||||
$Gconf{rootfsuuid} = GconfFSuuid( $Econf{$lbl}{root});
|
||||
#TODO: $Gconf{bootfsuuid} = GconfFSuuid( GconfFSdev( "/boot"));
|
||||
#TODO: $Gconf{bootfsuuid} = GconfFSuuid( "/boot");
|
||||
} elsif ( $ns eq "Xconf" ) {
|
||||
foreach my $k ( "vmm", "kernel", "cfg", "description") {
|
||||
$Gconf{$k} = $Xconf{$lbl}{$k} if (exists( $Xconf{$lbl}{$k}));
|
||||
@ -932,7 +942,7 @@ sub ebm($$$$$) {
|
||||
next unless ( hwpEqual( $hwp, $3) );
|
||||
if ( $file eq $4 ) {
|
||||
my $c = hex($1);
|
||||
# This effort below to elliminate holes in the boot entry list voids
|
||||
# This effort below to elliminate holes in the boot enry list voids
|
||||
# the attempt to order EBM entries by simply calling '--refresh-EBM'.
|
||||
# The full solution would require adding an interface to 'efibootmgr -o',
|
||||
# which is unfortunately not feasable this late in the release cycle.
|
||||
|
31
elilo.spec
31
elilo.spec
@ -29,18 +29,22 @@ Name: elilo
|
||||
Summary: EFI Linux Loader
|
||||
License: GPL-2.0+
|
||||
Group: System/Boot
|
||||
Version: 3.14
|
||||
Version: 3.16
|
||||
Release: 0
|
||||
ExclusiveArch: ia64 %ix86 x86_64
|
||||
PreReq: /usr/bin/perl perl(Pod::Usage) perl(Getopt::Long)
|
||||
# "perl" must be in place *before* any package's 'pre' or 'post' section
|
||||
# can (directly or indirectly) run '/sbin/elilo'! (bnc#842183)
|
||||
%ifarch ia64
|
||||
PreReq: perl(File::Compare)
|
||||
%endif
|
||||
Url: http://elilo.sourceforge.net/
|
||||
Source: http://dl.sourceforge.net/elilo/elilo-3.14-source.tar.gz
|
||||
#ource: http://downloads.sourceforge.net/elilo/elilo-3.16-all.tar.gz
|
||||
Source: elilo-%{version}-source.tar.xz
|
||||
Source1: elilo.pl
|
||||
Source2: debian.eliloalt.man8
|
||||
Source3: elilo.conf.man5
|
||||
Source4: 3.14-release-notes.txt
|
||||
Source4: http://downloads.sourceforge.net/elilo/%{version}-release-notes.txt
|
||||
Source9: rpmlintrc
|
||||
Patch0: elilo-ipv6.diff
|
||||
Patch1: elilo-max-conf.diff
|
||||
@ -48,8 +52,8 @@ Patch2: elilo-mac-conf.diff
|
||||
Patch3: elilo-auto-add_efi_memmap.diff
|
||||
Patch4: elilo-blocksize.diff
|
||||
Patch5: elilo-text-mode.diff
|
||||
Patch6: elilo-clean-console.diff
|
||||
Patch7: elilo-keep-start-params.diff
|
||||
Patch10: elilo-de-debianify.diff
|
||||
Patch11: eliloalt-no-date.diff
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
@ -57,22 +61,22 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
The EFI Linux boot loader.
|
||||
|
||||
%prep
|
||||
%setup -q -n elilo
|
||||
%setup -q -n %{name}-%{version}-source
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
|
||||
%build
|
||||
perl -pi -e 's{/usr/lib}{%{_libdir}}' Make.defaults
|
||||
##################################################################
|
||||
## DO NOT ADD RPM OPT FLAGS! THIS DOES NOT BUILD AGAINST GLIBC. ##
|
||||
##################################################################
|
||||
make OPTIMFLAGS="-fno-strict-aliasing -fno-stack-protector"
|
||||
make OPTIMFLAGS="-fmessage-length=0"
|
||||
perl -pe 's{\@EDITION\@}{%{version}-%{release}};
|
||||
s{\@LIBDIR\@}{%{_libdir}};
|
||||
s{\@ARCH\@}{%{_target_cpu}};
|
||||
@ -92,10 +96,15 @@ install -D -p -m 644 elilo.8 $RPM_BUILD_ROOT/usr/share/man/man8/elilo.8
|
||||
install -D -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT/usr/share/man/man8/eliloalt.8
|
||||
install -D -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT/usr/share/man/man5/elilo.conf.5
|
||||
install -p -m 644 %{SOURCE4} RELEASE-NOTES
|
||||
diff -q docs/README.txt docs/elilo.txt && rm -f docs/README.txt
|
||||
|
||||
%post
|
||||
#/sbin/elilo -v || :
|
||||
echo "Please run /sbin/elilo!"
|
||||
if [ -r /etc/sysconfig/bootloader ]; then
|
||||
. /etc/sysconfig/bootloader
|
||||
if [ "$LOADER_TYPE" = "elilo" -a -r /etc/elilo.conf ]; then
|
||||
/sbin/elilo -v || :
|
||||
fi
|
||||
fi
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
|
21
eliloalt-no-date.diff
Normal file
21
eliloalt-no-date.diff
Normal file
@ -0,0 +1,21 @@
|
||||
---
|
||||
tools/eliloalt.c | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/tools/eliloalt.c
|
||||
+++ b/tools/eliloalt.c
|
||||
@@ -282,7 +282,13 @@ main(int argc, char **argv)
|
||||
switch(c) {
|
||||
case 0: continue; /* fast path for options */
|
||||
case 1:
|
||||
- printf("Version %s Date: %s\n", ELILOALT_VERSION, __DATE__);
|
||||
+ printf("Version %s\n", ELILOALT_VERSION);
|
||||
+ /* Don't use __DATE__ here, as it causes
|
||||
+ * excessive rebuilds, which seems very
|
||||
+ * wasteful for a tool that did not change
|
||||
+ * in a very long time, and probably won't
|
||||
+ * any more...
|
||||
+ */
|
||||
exit(0);
|
||||
case 2:
|
||||
case 'h':
|
Loading…
Reference in New Issue
Block a user