Bug 209996

Summary: sysutils/slurm-wlm: upgrade to 15.08.12 and fix dependency issue
Product: Ports & Packages Reporter: Joseph Mingrone <jrm>
Component: Individual Port(s)Assignee: Dmitry Marakasov <amdmi3>
Status: Closed FIXED    
Severity: Affects Some People Keywords: easy, patch
Priority: --- Flags: jrm: maintainer-feedback+
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
svn patch to upgrade sysutils/slurm-wlm to 15.08.12
jrm: maintainer-approval+
svn patch to fix linking issues jrm: maintainer-approval+

Description Joseph Mingrone freebsd_committer freebsd_triage 2016-06-03 14:29:18 UTC
Created attachment 170979 [details]
svn patch to upgrade sysutils/slurm-wlm to 15.08.12

portlint: OK
testport: OK (poudriere: 9.3-RELEASE-p39, i386,  default options) [1]
testport: OK (poudriere: 9.3-RELEASE-p39, amd64, default options) [2]
testport: OK (poudriere: 10.3-RELEASE,    i386,  default options) [3]
testport: OK (poudriere: 10.3-RELEASE,    amd64, default options) [4]

[1]
http://pkg.awarnach.mathstat.dal.ca/data/9i386-default/2016-06-03_11h13m24s/logs/slurm-wlm-15.08.12.log

[2]
http://pkg.awarnach.mathstat.dal.ca/data/9amd64-default/2016-06-03_11h15m25s/logs/slurm-wlm-15.08.12.log

[3]
http://pkg.awarnach.mathstat.dal.ca/data/10i386-default/2016-06-03_11h19m00s/logs/slurm-wlm-15.08.12.log

[4]
http://pkg.awarnach.mathstat.dal.ca/data/10amd64-default/2016-06-03_11h23m02s/logs/slurm-wlm-15.08.12.log
Comment 1 Dmitry Marakasov freebsd_committer freebsd_triage 2016-06-03 19:31:22 UTC
- It's better to place each dependency on a separate line, otherwise it's easy to miss.
- Fixed two more bogus variable names
Comment 2 commit-hook freebsd_committer freebsd_triage 2016-06-03 19:31:26 UTC
A commit references this bug:

Author: amdmi3
Date: Fri Jun  3 19:31:13 UTC 2016
New revision: 416333
URL: https://svnweb.freebsd.org/changeset/ports/416333

Log:
  - Update to 15.08.12
  - Fix dependencies

  PR:		209996
  Submitted by:	jrm@ftfl.ca (maintainer)

Changes:
  head/sysutils/slurm-wlm/Makefile
  head/sysutils/slurm-wlm/distinfo
Comment 3 Joseph Mingrone freebsd_committer freebsd_triage 2016-06-03 21:14:18 UTC
Created attachment 170992 [details]
svn patch to fix linking issues

Thanks for your sharp eyes detecting those variable issues.

I did more testing in poudriere and saw the errors below.  This patch corrects those issues and bumps PORTREVISION.  It also modernizes the MYSQL option (MYSQL_USES=mysql).

Error: /usr/local/bin/sview is linked to /usr/local/lib/libcairo.so.2 from graphics/cairo but it is not declared as a dependency
Warning: you need USE_GNOME+=cairo
Error: /usr/local/bin/sview is linked to /usr/local/lib/libgdk_pixbuf-2.0.so.0 from graphics/gdk-pixbuf2 but it is not declared as a dependency
Warning: you need USE_GNOME+=gdkpixbuf2
Error: /usr/local/bin/sview is linked to /usr/local/lib/libfontconfig.so.1 from x11-fonts/fontconfig but it is not declared as a dependency
Warning: you need LIB_DEPENDS+=libfontconfig.so:x11-fonts/fontconfig
Error: /usr/local/bin/sview is linked to /usr/local/lib/libfreetype.so.6 from print/freetype2 but it is not declared as a dependency
Warning: you need LIB_DEPENDS+=libfreetype.so:print/freetype2
Error: /usr/local/bin/sview is linked to /usr/local/lib/libintl.so.8 from devel/gettext-runtime but it is not declared as a dependency
Warning: you need USES+=gettext
Comment 4 Dmitry Marakasov freebsd_committer freebsd_triage 2016-06-06 15:41:34 UTC
These are bogus, please ignore them. See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209813

However, while I see depends for GTK2 and MYSQL, I don't see anything which tells configure to actually enable/disable these (like _CONFIGURE_WITH). This may lead to ghost dependencies (e.g. when port is built with GTK2 disabled, though gtk2 is installed on the system, configure detects and enables it -> we get uncounted dependency and the port breaks when gtk2 is removed). If that's true, it requires fixing.
Comment 5 Joseph Mingrone freebsd_committer freebsd_triage 2016-06-06 15:54:46 UTC
Ok, thanks.

I had a long conversation with upstream about this exact topic.  For many of the plugins they don't have an explicit on/off autoconf switch, but rely on auto detection.  So, *if* GTK is installed, then the build sview (GUI interface).  I explained why this is not ideal, especially for package building, and it sounds like they are open to fixing this.
Comment 6 Dmitry Marakasov freebsd_committer freebsd_triage 2016-06-07 16:18:48 UTC
Good. For the time being though, it would be nice to provide a workaround. configure scripts are usually hackable, for example something like

post-patch-GTK2-off:
    @${REINPLACE_CMD} -e 's|ac_gtk_test="yes"|ac_gtk_test="no"|' ${WRKSRC}/configure

may work. Same for ac_have_mysql, or --with-mysql_config=/nonexistent