Bug 192319

Summary: [patch] net-p2p/transmission-gtk fails to build after update security/openssl
Product: Ports & Packages Reporter: Ivan Klymenko <fidaj>
Component: Individual Port(s)Assignee: Chris Rees <crees>
Status: Closed FIXED    
Severity: Affects Only Me CC: cjpm, marino
Priority: ---    
Version: Latest   
Hardware: amd64   
OS: Any   
Attachments:
Description Flags
Makefile fix patch
none
patch.diff none

Description Ivan Klymenko 2014-08-01 21:39:54 UTC
security/openssl build with options:
OPTIONS_FILE_SET+=SHARED
OPTIONS_FILE_SET+=THREADS
OPTIONS_FILE_UNSET+=I386
OPTIONS_FILE_SET+=SSE2
OPTIONS_FILE_SET+=ASM
OPTIONS_FILE_UNSET+=PADLOCK
OPTIONS_FILE_SET+=ZLIB
OPTIONS_FILE_SET+=SCTP
OPTIONS_FILE_SET+=MD2
OPTIONS_FILE_UNSET+=RC5
OPTIONS_FILE_UNSET+=RFC3779
OPTIONS_FILE_UNSET+=GMP
OPTIONS_FILE_SET+=DOCS
OPTIONS_FILE_SET+=EC

build cc string|flags:
-I.. -I../include  -fPIC -DOPENSSL_PIC -DZLIB_SHARED -DZLIB -DOPENSSL_THREADS -pthread -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DTERMIOS -O3 -DMD32_REG_T=int -Wall -O2 -pipe -march=native  -fstack-protector -fno-strict-aliasing -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM

portmaster net-p2p/transmission-gtk ends with the following message:
...
  CC       hig.o
2 warnings generated.
  CC       icons.o
  CC       main.o
  CC       makemeta-ui.o
  CC       msgwin.o
  CC       notify.o
  CC       open-dialog.o
  CC       relocate.o
  CC       stats.o
  CC       torrent-cell-renderer.o
  CC       transmission-resources.o
  CC       tr-core.o
  CC       tr-icon.o
  CC       tr-prefs.o
  CC       tr-window.o
  CC       util.o
  ITMRG  transmission-gtk.desktop
  CCLD     transmission-gtk
/usr/bin/ld: �: invalid DSO for symbol `BN_new' definition
/usr/local/lib/libcrypto.so.8: could not read symbols: Bad value
cc: error: linker command failed with exit code 1 (use -v to see invocation)
gmake[5]: *** [transmission-gtk] Ошибка 1
gmake[5]: *** Ожидание завершения заданий...
gmake[5]: Выход из каталога `/media/da0s1/obj/usr/ports/net-p2p/transmission-gtk/work/transmission-2.84/gtk'
gmake[4]: *** [all-recursive] Ошибка 1
gmake[4]: Выход из каталога `/media/da0s1/obj/usr/ports/net-p2p/transmission-gtk/work/transmission-2.84/gtk'
gmake[3]: *** [all] Ошибка 2
gmake[3]: Выход из каталога `/media/da0s1/obj/usr/ports/net-p2p/transmission-gtk/work/transmission-2.84/gtk'
gmake[2]: *** [all-recursive] Ошибка 1
gmake[2]: Выход из каталога `/media/da0s1/obj/usr/ports/net-p2p/transmission-gtk/work/transmission-2.84'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/net-p2p/transmission-gtk
*** Error code 1

Stop.
make: stopped in /usr/ports/net-p2p/transmission-gtk

===>>> make build failed for net-p2p/transmission-gtk
===>>> Aborting update


===>>> You can restart from the point of failure with this command line:
       portmaster <flags> net-p2p/transmission-gtk 

with port options:
OPTIONS_FILE_SET+=DOCS
OPTIONS_FILE_UNSET+=LITE
Comment 1 John Marino freebsd_committer freebsd_triage 2014-08-02 08:05:57 UTC
Over to maintainer
Comment 2 John Marino freebsd_committer freebsd_triage 2014-08-03 08:16:39 UTC
I'm getting this too on DF, it needs -lcrypto in LDFLAGS I think
Comment 3 Ivan Klymenko 2014-08-03 09:40:55 UTC
(In reply to John Marino from comment #2)
> I'm getting this too on DF, it needs -lcrypto in LDFLAGS I think

You're right - your solution eliminates this problem.

In addition, I found that the option <--enable-inotify> is not valid 
as a result of such changes are necessary here

--- Makefile.orig	2014-08-03 11:30:44.000000000 +0300
+++ Makefile	2014-08-03 12:35:53.000000000 +0300
@@ -20,11 +20,12 @@
 USE_GNOME=	gtk30 intlhack
 USES=		gettext pathfix desktop-file-utils
 INSTALLS_ICONS=	yes
+LDFLAGS+=	-lcrypto -linotify
 
 EXTRA_CONF_ARGS=--disable-cli \
 		--disable-daemon \
 		--with-gtk \
-		--enable-inotify \
+		--with-inotify \
 		--disable-mac \
 		--enable-nls
Comment 4 John Marino freebsd_committer freebsd_triage 2014-08-03 09:45:04 UTC
Thanks Ivan.  I'll confirm and then commit it under the "just fix it" blanket.
Comment 5 Ivan Klymenko 2014-08-03 09:45:44 UTC
Created attachment 145293 [details]
Makefile fix patch
Comment 6 John Marino freebsd_committer freebsd_triage 2014-08-03 10:05:35 UTC
this isn't the correct solution.  transmission-gtk is a slave port and this doesn't fix the other slaves (or master).

And it might be conditional if lssl isn't always compiled in.
Comment 7 commit-hook freebsd_committer freebsd_triage 2014-08-03 16:07:17 UTC
A commit references this bug:

Author: marino
Date: Sun Aug  3 16:06:59 UTC 2014
New revision: 363920
URL: http://svnweb.freebsd.org/changeset/ports/363920

Log:
  Fix transmission-cli,-gtk on some platforms after openssl update

  At least on some releases, transmission-cli and transmission-gtk now
  need -lcypto in LDFLAGS to build.  Additionally transmission-gtk needed
  an update of the inotify configure argument.  The latter requires a
  revbump because it seems possible that it could have been built with
  the bad argument somewhere.

  PR:		192319
  Submitted by:	Ivan Klymenko
  Approved by:	"Just Fix It" blanket, but maintainer was in copy on PR

Changes:
  head/net-p2p/transmission-cli/Makefile
  head/net-p2p/transmission-gtk/Makefile
Comment 8 John Marino freebsd_committer freebsd_triage 2014-08-03 16:12:40 UTC
Should be fixed now.
Comment 9 Ivan Klymenko 2014-08-03 16:26:18 UTC
(In reply to John Marino from comment #8)
> Should be fixed now.

Thanks.

but I have 2 more suspected
- As necessary to remove from net-p2p/transmission-qt4/Makefile the string <LDFLAGS+=       -lcrypto> because it is already in net-p2p/transmission-cli/Makefile
- You probably forgot to add to the client port -linotify, because make -C /usr/ports/net-p2p/transmission-gtk configure error:
...
checking for posix_fadvise... yes
checking sys/inotify.h usability... yes
checking sys/inotify.h presence... yes
checking for sys/inotify.h... yes
checking for inotify_init... no
configure: error: "inotify not found!"
===>  Script "configure" failed unexpectedly.
Please report the problem to crees@FreeBSD.org [maintainer] and attach the
"/media/da0s1/obj/usr/ports/net-p2p/transmission-gtk/work/transmission-2.84/config.log"
including the output of the failure of your make command. Also, it might be
a good idea to provide an overview of all packages installed on your system
(e.g. a /usr/local/sbin/pkg-static info -g -Ea).
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/net-p2p/transmission-gtk
*** Error code 1

Stop.
make: stopped in /usr/ports/net-p2p/transmission-gtk
Comment 10 John Marino freebsd_committer freebsd_triage 2014-08-03 17:59:41 UTC
(In reply to Ivan Klymenko from comment #9)
> but I have 2 more suspected
> - As necessary to remove from net-p2p/transmission-qt4/Makefile the string
> <LDFLAGS+=       -lcrypto> because it is already in
> net-p2p/transmission-cli/Makefile

Okay, thanks.


> - You probably forgot to add to the client port -linotify, because make -C
> /usr/ports/net-p2p/transmission-gtk configure error:

I did, thanks for the reminder.
Comment 11 Ivan Klymenko 2014-08-03 18:03:43 UTC
(In reply to John Marino from comment #10)
> (In reply to Ivan Klymenko from comment #9)
> > but I have 2 more suspected
> > - As necessary to remove from net-p2p/transmission-qt4/Makefile the string
> > <LDFLAGS+=       -lcrypto> because it is already in
> > net-p2p/transmission-cli/Makefile
> 
> Okay, thanks.
> 
> 
> > - You probably forgot to add to the client port -linotify, because make -C
> > /usr/ports/net-p2p/transmission-gtk configure error:
> 
> I did, thanks for the reminder.

Thanks.
Comment 12 commit-hook freebsd_committer freebsd_triage 2014-08-03 18:06:26 UTC
A commit references this bug:

Author: marino
Date: Sun Aug  3 18:05:29 UTC 2014
New revision: 363928
URL: http://svnweb.freebsd.org/changeset/ports/363928

Log:
  transmission-* cleanup

  I missed the -linotify LDFLAG on the transmission-gtk port.  It was also
  pointed out by the submitter than transmission-qt4 now has a duplicate
  -lcrypto LDFLAG so let's remove that.

  PR:		192319
  Submitted by:	Ivan Klymenko

Changes:
  head/net-p2p/transmission-gtk/Makefile
  head/net-p2p/transmission-qt4/Makefile
Comment 13 Carlos J Puga Medina 2014-08-04 00:27:39 UTC
Created attachment 145323 [details]
patch.diff

- net-p2p/transmission-gtk depends on devel/libinotify
Comment 14 commit-hook freebsd_committer freebsd_triage 2014-08-04 06:20:12 UTC
A commit references this bug:

Author: marino
Date: Mon Aug  4 06:19:37 UTC 2014
New revision: 363966
URL: http://svnweb.freebsd.org/changeset/ports/363966

Log:
  net-p2p/transmission-gtk: complete the -inotify fix with LIB_DEPENDS+=

  In a previous commit, the inotify configuration was fixed, but we
  neglected to guarantee the library was available.  This adds libinotify
  to the LIB_DEPENDS list, an action that requires a revbump.

  PR:		192319
  Suggested by:	Carlos JPM

Changes:
  head/net-p2p/transmission-gtk/Makefile