Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 07 Oct 2000 15:20:22 +0100
From:      Konstantin Chuguev <Konstantin.Chuguev@dante.org.uk>
To:        Satoshi Asami <asami@FreeBSD.org>
Cc:        knu@FreeBSD.org, ports@FreeBSD.org
Subject:   Re: converters/iconv build problem on 3-stable
Message-ID:  <39DF3121.90338796@dante.org.uk>
References:  <200010062208.e96M8ig67103@silvia.hip.berkeley.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Satoshi Asami wrote:

> Hi Konstantin,
>
> It seems converters/iconv doesn't install a lot of files in 3-stable.
> The following will "fix" the packaging errors but I'm not sure if it
> is the right fix.
>

The problem is that bsd.lib.mk in FreeBSD-3 does not understand SYMLINKS
variable. All these files that are not installed are alternative names
(aliases) of charsets, which are currently implemented as symbolic links to
main charset names.

The SYMLINKS were introduced in bsd.lib.mk in revision 1.86:
date    99.03.23.03.06.25;      author bde;     state Exp;
log
@Removed all traces of LN_FLAGS.  It was only used to produce a link
/usr/sbin/sysctl -> ${DESTDIR}/sbin/sysctl in some versions of 2.2,
and this link was broken if DESTDIR was set.

Added a SYMLINKS macro.  This works the same as LINKS, except it
creates symlinks and the linked-to pathname may be relative.  This
is more flexible than LN_FLAGS, since it supports installing
symlinks independently of hard links.

Use `ln -f[s] ...' instead of `rm -f ...; ln [-s] ...' for LINKS and
SYMLINKS.  This is equivalent if the target is neither a directory nor
a symlink to a directory.

If I could find out which version of bsd.lib.mk is used at the moment of the
port installation, I would be able to make a conditional post-install target
in port's Makefile.
Do you have any suggestions how can I do that?

The second option can be getting rid of symbolic links and using a text
charset.aliases file instead. I like this more and I am going to use this in
iconv-2.0 (which will use platform-independent binary tables for CCS instead
of dynamically loaded modules and will be able to built both CCS tables and
CES shared modules into the library, thus allowing using static iconv.a
library as well).

As a solution, I can make iconv-1.2 using charset.aliases (perhaps in
/usr/local/lib/iconv/) instead of symlinks. Another problem appears in that
case though: I need 3 ports (iconv, iconv-extra and iconv-rfc1345) to share
the same aliases file and clean it properly after their deinstallation. I am
thinking about the way of doing this at the moment.

--
        Konstantin Chuguev





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?39DF3121.90338796>