Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Jan 2010 16:34:22 GMT
From:      Edmund Sumbar <esumbar@ualberta.ca>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/142472: [patch] port biology/crimap exits immediately on amd64
Message-ID:  <201001081634.o08GYMOc037232@www.freebsd.org>
Resent-Message-ID: <201001081640.o08Ge1nJ016122@freefall.freebsd.org>

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

>Number:         142472
>Category:       ports
>Synopsis:       [patch] port biology/crimap exits immediately on amd64
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jan 08 16:40:01 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Edmund Sumbar
>Release:        7.2-RELEASE-p4
>Organization:
University of Alberta
>Environment:
FreeBSD hurl.aict.ualberta.ca 7.2-RELEASE-p4 FreeBSD 7.2-RELEASE-p4 #0: Fri Oct  2 08:22:32 UTC 2009     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
When installed from ports on an amd64 architecture, biology/crimap exits immediately with the following message.

Your compiler uses a different size for integers; see documentation
for changes that will have to be made in the source code

The documentation referred to is http://linkage.rockefeller.edu/soft/crimap/tech6.html. Although the document addresses the case where an int is 16 bits while a long is 32 bits, on amd64/GCC, the difference is that an int is 32 bits and a long is 64 bits.

The message is printed by the program after comparing the size of an ALLOC to the size of an INT. Both ALLOC and INT are typdef'ed in defs.h.
>How-To-Repeat:
Running crimap without arguments on amd64 will cause the program to terminate immediately.
>Fix:
Change the typedef of INT from int to long in file defs.h. A patch is included.

Patch attached with submission follows:

--- defs.h.orig	2010-01-07 20:52:51.000000000 -0700
+++ defs.h	2010-01-07 20:53:04.000000000 -0700
@@ -17,7 +17,7 @@
 typedef short SHORT;
 typedef long ID;
 typedef long LINDEX;
-typedef int INT;
+typedef long INT;
 
 struct loci_orders{
      SHORT num_loci;



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001081634.o08GYMOc037232>