Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Mar 2007 10:03:54 -0700 (PDT)
From:      "Eric P. Scott" <eps+pbug0703@ana.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/110525: palm/palm-db-tools: attempt to fix amd64 build
Message-ID:  <200703191703.l2JH3s73016398@anna.ana.com>
Resent-Message-ID: <200703191710.l2JHA3Gb011080@freefall.freebsd.org>

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

>Number:         110525
>Category:       ports
>Synopsis:       palm/palm-db-tools: attempt to fix amd64 build
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Mar 19 17:10:03 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Eric P. Scott
>Release:        FreeBSD 6.2-RELEASE-p2 i386
>Organization:
ana-systems, Inc.
>Environment:
System: FreeBSD sixofone 6.2-RELEASE-p2 FreeBSD 6.2-RELEASE-p2 #0: Tue Feb 27 22:41:06 UTC 2007 root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC i386
>Description:
Incorrect CXXFLAGS cause shared library link to fail on amd64.
There are three "simple" approaches to fixing this:

1. Do not build or install a shared library.  This is a solution
of last resort.

2. Enable libtool.  This fixes the shared library problem, but
the first executable gets compiled suboptimally, and the make
fails for the second executable.

3. (Chosen) Patch the Makefile.in files to compile position-
independent code for the shared objects.  There are a couple of
ways to do this; one possibility appears below.

I don't have access to an amd64 system running FreeBSD, so I
haven't actually tested this.
>How-To-Repeat:
>Fix:
--- palm/palm-db-tools/Makefile.orig	Wed Feb 28 16:56:45 2007
+++ palm/palm-db-tools/Makefile
@@ -24,4 +24,13 @@
 		bin/csv2pdb \
 		bin/pdb2csv
 
+post-patch:
+	@${REINPLACE_CMD} -e "s|-shared|& -fPIC|" \
+		${WRKSRC}/flatfile/Makefile.in
+	@cd ${WRKSRC} && \
+		${REINPLACE_CMD} -e "s|-Wno-deprecated|& -fPIC -DPIC|" \
+		libflatfile/Makefile.in \
+		libpalm/Makefile.in \
+		libsupport/Makefile.in
+
 .include <bsd.port.mk>
>Release-Note:
>Audit-Trail:
>Unformatted:



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