Date: Thu, 7 Nov 2002 14:36:58 +0100 (CET) From: Philipp Mergenthaler <philipp.mergenthaler@stud.uni-karlsruhe.de> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/45030: lang/pm3-base broken in -current because of stdio-changes Message-ID: <200211071336.gA7DawP0043646@i609a.hadiko.de>
next in thread | raw e-mail | index | archive | help
>Number: 45030 >Category: ports >Synopsis: lang/pm3-base broken in -current because of stdio-changes >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Nov 07 05:40:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Philipp Mergenthaler >Release: FreeBSD 5.0-CURRENT i386 >Organization: University of Karlsruhe, Germany >Environment: System: FreeBSD i609a.hadiko.de 5.0-CURRENT FreeBSD 5.0-CURRENT #598: Mon Nov 4 15:07:53 CET 2002 p@i609a.hadiko.de:/usr/obj/usr/src/sys/I609 i386 >Description: Building this port breaks because one of its files has a reference to __sF, which, in -current, is now static. >How-To-Repeat: Build the port on a current -current (see "last full run" on bento): [...] ---------- building m3bundle in language/modula3/m3tools ---------- /usr/ports/lang/pm3-base/work/pm3-1.1.15/src/../boot-FreeBSD4/m3build/FreeBSD4/m3build -T /usr/ports/lang/pm3-base/work/pm3-1.1.15/src/../m3config/src -F /usr/ports/lang/pm3-base/work/pm3-1.1.15/src/../FreeBSD4/config.tmpl -DUSE_M3DOC= mkdir FreeBSD4 --- building in FreeBSD4 --- new source -> compiling ../src/m3bundle.m3 -> linking m3bundle /usr/local/lib/m3/pkg/m3core/FreeBSD4/libm3core.so: undefined reference to `__sF' [...] >Fix: The patch is good enough that pm3-base builds and cvsup works. However, I don't know enough about Modula and its compiler to judge 1) whether it is correct and won't cause other problems. 2) whether it would be better to create a subdirectory FreeBSD5 instead of modifying a file in FreeBSD4. I did the latter since its just a one line-change. I've written this as EXTRA_PATCH because, AFAIK, Modula-3 doesn't have a compiler directive like #if. Since there wasn't a version bump when libc was changed, I used the last version bump before that (about two weeks earlier), ${OSVERSION} >= 500041 diff -ruN lang/pm3-base.old/Makefile lang/pm3-base/Makefile --- lang/pm3-base.old/Makefile Thu Nov 7 12:58:00 2002 +++ lang/pm3-base/Makefile Thu Nov 7 14:04:35 2002 @@ -68,6 +68,9 @@ WORDSIZE= 64 BOOTSTRAP= pm3-${PORTVERSION}-${TARGET}-boot.tar.bz2 .endif +.if ${OSVERSION} >= 500041 +EXTRA_PATCHES+=${PATCHDIR}/extra-patch-l3 +.endif .if !defined(TARGET) pre-fetch: diff -ruN lang/pm3-base.old/files/extra-patch-l3 lang/pm3-base/files/extra-patch-l3 --- lang/pm3-base.old/files/extra-patch-l3 Thu Jan 1 01:00:00 1970 +++ lang/pm3-base/files/extra-patch-l3 Thu Nov 7 10:04:27 2002 @@ -0,0 +1,11 @@ +--- libs/m3core/src/C/FreeBSD4/Cstdio.i3.orig Wed May 31 19:54:13 2000 ++++ libs/m3core/src/C/FreeBSD4/Cstdio.i3 Thu Nov 7 10:03:48 2002 +@@ -61,7 +61,7 @@ + + FILE_star = UNTRACED REF FILE; + +-<*EXTERNAL "__sF"*> VAR sF : ARRAY [0..NSTDBUF-1] OF FILE; ++ VAR sF : ARRAY [0..NSTDBUF-1] OF FILE; + VAR iF : ARRAY [0..NIOBRW-1] OF FILE_star; + + <*EXTERNAL fbsd_feof*> PROCEDURE feof (f: FILE_star): int; >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211071336.gA7DawP0043646>