mirror of
https://git.FreeBSD.org/ports.git
synced 2024-10-19 19:59:43 +00:00
Make gcc 4 happy. Thanks for the patch from Jeremie.
PR: 120876 Submitted by: Jeremie Le Hen
This commit is contained in:
parent
43fe6fe175
commit
f23b659145
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=209774
90
net/etherboot/files/patch-gcc40
Normal file
90
net/etherboot/files/patch-gcc40
Normal file
@ -0,0 +1,90 @@
|
||||
>Submitter-Id: current-users
|
||||
>Originator: Jeremie Le Hen
|
||||
>Organization:
|
||||
>Confidential: no
|
||||
>Synopsis: [patch] net/etherboot doesn't compile with gcc4
|
||||
>Severity: non-critical
|
||||
>Priority: low
|
||||
>Category: ports
|
||||
>Class: sw-bug
|
||||
>Release: FreeBSD 7.0 i386
|
||||
>Environment:
|
||||
System: FreeBSD 7.0
|
||||
|
||||
>Description:
|
||||
GCC 4 is far more nit-picking than its ancestor.
|
||||
>How-To-Repeat:
|
||||
Simply try to compile net/etherboot on RELENG_7 or CURRENT.
|
||||
>Fix:
|
||||
Drop the following three patchs into the files/ directory.
|
||||
|
||||
--- patch-gcc40-1 begins here ---
|
||||
--- arch/i386/firmware/pcbios/basemem.c.old 2008-02-20 11:24:39.000000000 +0100
|
||||
+++ arch/i386/firmware/pcbios/basemem.c 2008-02-20 11:24:49.000000000 +0100
|
||||
@@ -93,6 +93,7 @@
|
||||
uint16_t size_kb = ( size + remainder + 1023 ) >> 10;
|
||||
free_base_memory_block_t *free_block =
|
||||
( free_base_memory_block_t * ) ( ptr - remainder );
|
||||
+ unsigned char *fbaddr;
|
||||
|
||||
if ( ( ptr == NULL ) || ( size == 0 ) ) { return; }
|
||||
|
||||
@@ -125,7 +126,9 @@
|
||||
free_block->magic = FREE_BLOCK_MAGIC;
|
||||
free_block->size_kb = size_kb;
|
||||
/* Move up by 1 kB */
|
||||
- (void *)free_block += ( 1 << 10 );
|
||||
+ fbaddr = (void *)free_block;
|
||||
+ fbaddr += ( 1 << 10 );
|
||||
+ free_block = (void *)fbaddr;
|
||||
size_kb--;
|
||||
}
|
||||
|
||||
--- patch-gcc40-1 ends here ---
|
||||
|
||||
--- patch-gcc40-2 begins here ---
|
||||
--- drivers/net/natsemi.c.old 2008-02-20 11:29:11.000000000 +0100
|
||||
+++ drivers/net/natsemi.c 2008-02-20 11:32:13.000000000 +0100
|
||||
@@ -602,7 +602,7 @@
|
||||
const char *p) /* Packet */
|
||||
{
|
||||
u32 to, nstype;
|
||||
- u32 tx_status;
|
||||
+ volatile u32 tx_status;
|
||||
|
||||
/* Stop the transmitter */
|
||||
outl(TxOff, ioaddr + ChipCmd);
|
||||
@@ -641,7 +641,7 @@
|
||||
|
||||
to = currticks() + TX_TIMEOUT;
|
||||
|
||||
- while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to))
|
||||
+ while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to))
|
||||
/* wait */ ;
|
||||
|
||||
if (currticks() >= to) {
|
||||
--- patch-gcc40-2 ends here ---
|
||||
|
||||
--- patch-gcc40-3 begins here ---
|
||||
--- drivers/net/sis900.c.old 2008-02-20 11:33:10.000000000 +0100
|
||||
+++ drivers/net/sis900.c 2008-02-20 11:33:54.000000000 +0100
|
||||
@@ -1083,7 +1083,7 @@
|
||||
const char *p) /* Packet */
|
||||
{
|
||||
u32 to, nstype;
|
||||
- u32 tx_status;
|
||||
+ volatile u32 tx_status;
|
||||
|
||||
/* Stop the transmitter */
|
||||
outl(TxDIS | inl(ioaddr + cr), ioaddr + cr);
|
||||
@@ -1122,7 +1122,7 @@
|
||||
|
||||
to = currticks() + TX_TIMEOUT;
|
||||
|
||||
- while ((((volatile u32) tx_status=txd.cmdsts) & OWN) && (currticks() < to))
|
||||
+ while (((tx_status=txd.cmdsts) & OWN) && (currticks() < to))
|
||||
/* wait */ ;
|
||||
|
||||
if (currticks() >= to) {
|
||||
--- patch-gcc40-3 ends here ---
|
||||
|
Loading…
Reference in New Issue
Block a user