Bug 149218 - shells/bash is missing dependency on libiconv if WITHOUT_NLS is set
Summary: shells/bash is missing dependency on libiconv if WITHOUT_NLS is set
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Emanuel Haupt
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-08-03 03:30 UTC by Yar Tikhiy
Modified: 2010-08-06 09:50 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yar Tikhiy freebsd_committer freebsd_triage 2010-08-03 03:30:05 UTC
The shells/bash port is missing an explicit dependency on libiconv -- see its Makefile.  If it's built with all defaults, libiconv is pulled in indirectly through gettext.  However, if NLS support is turned off for bash, libiconv isn't pulled in at all and bash fails to link unless libiconv was installed for other ports.

Otherwise, if libiconv is already there and so bash installs OK, libiconv's +REQUIRED_BY doesn't list bash, which can break a recursive port upgrade later.

Fix: 

Expressly list a dependency on libiconv in ports/shells/bash/Makefile:

USE_ICONV=      yes
How-To-Repeat: # portsnap fetch update
# cd /usr/ports/shells/bash
# make install WITHOUT_NLS=1
[...]
rm -f bash
cc -L./builtins -L./lib/readline -L./lib/readline -L./lib/glob  -L./lib/tilde  -L./lib/sh -L/usr/local/lib    -O2 -pipe -fno-strict-aliasing -o bash shell.o eval.o y.tab.o general.o make_cmd.o print_cmd.o   dispose_cmd.o execute_cmd.o variables.o copy_cmd.o error.o  expr.o flags.o jobs.o subst.o hashcmd.o hashlib.o mailcheck.o  trap.o input.o unwind_prot.o pathexp.o sig.o test.o version.o  alias.o array.o arrayfunc.o assoc.o braces.o bracecomp.o bashhist.o  bashline.o  list.o stringlib.o locale.o findcmd.o redir.o  pcomplete.o pcomplib.o syntax.o xmalloc.o  -lbuiltins -lglob -lsh -lreadline -lhistory -ltermcap  -ltilde   -liconv
/usr/bin/ld: cannot find -liconv
*** Error code 1

Stop in /usr/ports/shells/bash/work/bash-4.1.
*** Error code 1

Stop in /usr/ports/shells/bash.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2010-08-03 03:30:16 UTC
Responsible Changed
From-To: freebsd-ports-bugs->obrien

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 dfilter service freebsd_committer freebsd_triage 2010-08-06 09:49:01 UTC
ehaupt      2010-08-06 08:48:46 UTC

  FreeBSD ports repository

  Modified files:
    shells/bash          Makefile 
  Log:
  - Depend on libiconv in order to fix package installation
  - Bump PORTREVISION
  
  PR:             147747, 148329, 149218
  Submitted by:   Alex Goncharov <alex-goncharov@comcast.net>,
                  Garrett Wollman <wollman@khavrinen.csail.mit.edu>
                  yar
  Approved by:    obrien (maintainer timeout; > 50 days)
  
  Revision  Changes    Path
  1.123     +2 -1      ports/shells/bash/Makefile
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 3 Emanuel Haupt freebsd_committer freebsd_triage 2010-08-06 09:49:29 UTC
Responsible Changed
From-To: obrien->ehaupt

I will take care of it.
Comment 4 Emanuel Haupt freebsd_committer freebsd_triage 2010-08-06 09:50:02 UTC
State Changed
From-To: open->closed

Committed, thanks!