Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Nov 2002 14:26:56 +0100 (CET)
From:      Stefan Farfeleder <e0026813@stud3.tuwien.ac.at>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        e0026813@stud3.tuwien.ac.at
Subject:   ports/45836: [FIX BENTO] lang/aleph on -current
Message-ID:  <20021129132656.54513796@frog.fafoe>

next in thread | raw e-mail | index | archive | help

>Number:         45836
>Category:       ports
>Synopsis:       [FIX BENTO] lang/aleph on -current
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Nov 29 05:30:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Stefan Farfeleder
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD frog.fafoe 5.0-CURRENT FreeBSD 5.0-CURRENT #3: Tue Nov 26 20:55:18 CET 2002 freebsd@frog.fafoe:/freebsd/current/obj/freebsd/current/src/sys/FROG i386


	
>Description:
Aleph currently fails to build on -current because the code assumes that time_t
has type long which is not true on -current.  The problem is fixed by assigning
the long value to a temporary time_t variable.
	
>How-To-Repeat:
portinstall aleph

<...>
c++ -Wall -Werror -MMD -fno-builtin  -fPIC -DPIC  -O -pipe -mcpu=pentiumpro    -D_THREAD_SAFE        -I. -I../acf -o cclk.o -c cclk.cxx
cclk.cxx: In function `aleph::s_tinfo* aleph::c_getlocal(long int)':
cclk.cxx:56: invalid conversion from `const long int*' to `const time_t*'
cclk.cxx: In function `aleph::s_tinfo* aleph::c_getutc(long int)':
cclk.cxx:75: invalid conversion from `const long int*' to `const time_t*'
gmake[3]: *** [cclk.o] Error 1
	
>Fix:

	

--- aleph.diff begins here ---
Index: files/patch-src::plt::lib::cclk.cxx
===================================================================
RCS file: files/patch-src::plt::lib::cclk.cxx
diff -N files/patch-src::plt::lib::cclk.cxx
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-src::plt::lib::cclk.cxx	29 Nov 2002 12:18:23 -0000
@@ -0,0 +1,22 @@
+--- src/plt/lib/cclk.cxx.orig	Fri Nov 29 13:10:11 2002
++++ src/plt/lib/cclk.cxx	Fri Nov 29 13:15:05 2002
+@@ -53,7 +53,8 @@
+   s_tinfo* c_getlocal (const long tclk) {
+     // extract time info
+     struct tm* tval;
+-    if ((tval = localtime (&tclk)) == NULL) return 0;
++    time_t t = tclk;
++    if (t != tclk || (tval = localtime (&t)) == NULL) return 0;
+     // fill in the data structure
+     s_tinfo* tinfo = new s_tinfo;
+     tinfo->d_secs = tval->tm_sec;
+@@ -72,7 +73,8 @@
+   s_tinfo* c_getutc (const long tclk) {
+     // extract time info
+     struct tm* tval;
+-    if ((tval = gmtime (&tclk)) == NULL) return 0;
++    time_t t = tclk;
++    if (t != tclk || (tval = gmtime (&t)) == NULL) return 0;
+     // fill in the data structure
+     s_tinfo* tinfo = new s_tinfo;
+     tinfo->d_secs = tval->tm_sec;
--- aleph.diff ends here ---


>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?20021129132656.54513796>