Date: Wed, 17 Feb 2021 01:36:15 +0000 (UTC) From: Kyle Evans <kevans@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r565472 - in head/sysutils/memtest86+: . files Message-ID: <202102170136.11H1aFtD076398@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kevans Date: Wed Feb 17 01:36:14 2021 New Revision: 565472 URL: https://svnweb.freebsd.org/changeset/ports/565472 Log: sysutils/memtest86+: remove dependency on gcc48 This is one of three ports still explicitly dependent on lang/gcc48. The problems that were preventing the upgrade were as follows: - The __OUT*/__IN* macros in io.h were declaring the produced functions as extern, yielding multiple "definitions." They're inline asm, so just give them static linkage. - reboot was declared inline with non-static linkage, thus leaving it in a weird state where it wasn't visible within the same CU or another CU. Drop the inline for now; if it really needs to be inlined, it can be moved into a header and declared `static inline`. I made these changes, then discovered there's a 5.31b that's still in testing. I checked the archive for that and was delighted to discover these changes had already actually been made there, too, so let's consider this a backport. PR: 253303 Approved by: avg (maintainer) MFH: 2021Q1 Added: head/sysutils/memtest86+/files/patch-io.h (contents, props changed) head/sysutils/memtest86+/files/patch-lib.c (contents, props changed) Modified: head/sysutils/memtest86+/Makefile Modified: head/sysutils/memtest86+/Makefile ============================================================================== --- head/sysutils/memtest86+/Makefile Wed Feb 17 00:52:20 2021 (r565471) +++ head/sysutils/memtest86+/Makefile Wed Feb 17 01:36:14 2021 (r565472) @@ -2,7 +2,7 @@ PORTNAME= memtest86+ PORTVERSION= 5.01 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= sysutils MASTER_SITES= http://www.memtest.org/download/${PORTVERSION}/ @@ -17,7 +17,7 @@ USES= gmake ALL_TARGET= all PORTDOCS= * -USE_GCC= 4.8:build +USE_GCC= yes:build # Please provide absolute path below (cannot be root) BOOT_DIR?= /boot/opt Added: head/sysutils/memtest86+/files/patch-io.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/memtest86+/files/patch-io.h Wed Feb 17 01:36:14 2021 (r565472) @@ -0,0 +1,29 @@ +--- io.h.orig 2013-08-10 02:01:58 UTC ++++ io.h +@@ -31,7 +31,7 @@ + */ + + #define __OUT1(s,x) \ +-extern inline void __out##s(unsigned x value, unsigned short port) { ++static inline void __out##s(unsigned x value, unsigned short port) { + + #define __OUT2(s,s1,s2) \ + __asm__ __volatile__ ("out" #s " %" s1 "0,%" s2 "1" +@@ -43,7 +43,7 @@ __OUT1(s##_p,x) __OUT2(s,s1,"w") : : "a" (value), "d" + __OUT1(s##c_p,x) __OUT2(s,s1,"") : : "a" (value), "id" (port)); SLOW_DOWN_IO; } + + #define __IN1(s) \ +-extern inline RETURN_TYPE __in##s(unsigned short port) { RETURN_TYPE _v; ++static inline RETURN_TYPE __in##s(unsigned short port) { RETURN_TYPE _v; + + #define __IN2(s,s1,s2) \ + __asm__ __volatile__ ("in" #s " %" s2 "1,%" s1 "0" +@@ -55,7 +55,7 @@ __IN1(s##_p) __IN2(s,s1,"w") : "=a" (_v) : "d" (port) + __IN1(s##c_p) __IN2(s,s1,"") : "=a" (_v) : "id" (port) ,##i ); SLOW_DOWN_IO; return _v; } + + #define __OUTS(s) \ +-extern inline void outs##s(unsigned short port, const void * addr, unsigned long count) \ ++static inline void outs##s(unsigned short port, const void * addr, unsigned long count) \ + { __asm__ __volatile__ ("cld ; rep ; outs" #s \ + : "=S" (addr), "=c" (count) : "d" (port),"0" (addr),"1" (count)); } + Added: head/sysutils/memtest86+/files/patch-lib.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/memtest86+/files/patch-lib.c Wed Feb 17 01:36:14 2021 (r565472) @@ -0,0 +1,18 @@ +--- lib.c.orig 2021-02-06 17:28:48 UTC ++++ lib.c +@@ -33,7 +33,7 @@ struct ascii_map_str { + int keycode; + }; + +-inline void reboot(void) ++void reboot(void) + { + + /* tell the BIOS to do a cold start */ +@@ -1196,4 +1196,4 @@ void get_list(int x, int y, int len, char *buf) + return; + } + } +-} +\ No newline at end of file ++}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202102170136.11H1aFtD076398>