Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 603656 - net-misc/freerdp-2.0.0_pre20161219 USE=libressl fails to compile against dev-libs/libressl-2.5.0 - undefined reference to `HMAC_CTX_new'
Summary: net-misc/freerdp-2.0.0_pre20161219 USE=libressl fails to compile against dev-...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Mike Gilbert
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-12-24 20:06 UTC by jospezial
Modified: 2017-03-20 20:58 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,290.25 KB, text/x-log)
2016-12-24 20:06 UTC, jospezial
Details
build.log (build.log,290.25 KB, text/plain)
2016-12-24 20:22 UTC, jospezial
Details
LibreSSL patch. (freerdp-libressl.patch,4.34 KB, patch)
2016-12-25 02:29 UTC, Aric Belsito
Details | Diff
LibreSSL Patch (v2) (freerdp-libressl.patch,4.99 KB, patch)
2016-12-25 02:32 UTC, Aric Belsito
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description jospezial 2016-12-24 20:06:44 UTC
Created attachment 457336 [details]
build.log

[ 37%] Built target winpr-tools
make -f winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/build.make winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/depend
make[2]: Entering directory '/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build'
cd /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/FreeRDP-8d0809cf26868fc5ff651850a32724650597747f /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/FreeRDP-8d0809cf26868fc5ff651850a32724650597747f/winpr/tools/makecert-cli /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/DependInfo.cmake
Dependee "/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/DependInfo.cmake" is newer than depender "/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/depend.internal".
Dependee "/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/depend.internal".
Scanning dependencies of target winpr-makecert
make[2]: Leaving directory '/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build'
make -f winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/build.make winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/build
make[2]: Entering directory '/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build'
[ 37%] Building C object winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/main.c.o
cd /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli && /usr/bin/x86_64-pc-linux-gnu-gcc  -DFREERDP_EXPORTS -DHAVE_CONFIG_H -DWINPR_EXPORTS -DWITH_OPENSSL -I/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build -I/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/include -I/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/FreeRDP-8d0809cf26868fc5ff651850a32724650597747f/include -I/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/FreeRDP-8d0809cf26868fc5ff651850a32724650597747f/winpr/include -I/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/include   -DNDEBUG -march=native -O2 -pipe -fPIC -Wall -Wno-unused-result -Wno-unused-but-set-variable -Wno-deprecated-declarations -fvisibility=hidden -Wimplicit-function-declaration -Wredundant-decls -g -msse2 -DWINPR_EXPORTS -fPIE   -o CMakeFiles/winpr-makecert.dir/main.c.o -c /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/FreeRDP-8d0809cf26868fc5ff651850a32724650597747f/winpr/tools/makecert-cli/main.c
[ 38%] Linking C executable winpr-makecert
cd /var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools/makecert-cli && /usr/bin/cmake -E cmake_link_script CMakeFiles/winpr-makecert.dir/link.txt --verbose=1
/usr/bin/x86_64-pc-linux-gnu-gcc  -march=native -O2 -pipe -fPIC -Wall -Wno-unused-result -Wno-unused-but-set-variable -Wno-deprecated-declarations -fvisibility=hidden -Wimplicit-function-declaration -Wredundant-decls -g -msse2 -DWINPR_EXPORTS  -Wl,-O1 -Wl,--as-needed CMakeFiles/winpr-makecert.dir/main.c.o  -o winpr-makecert -Wl,-rpath,/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/tools:/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/libwinpr: -rdynamic ../libwinpr-tools.so.2.0.0 -Wl,-rpath-link,/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/libwinpr 
/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/libwinpr/libwinpr.so.2: undefined reference to `HMAC_CTX_new'
/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/libwinpr/libwinpr.so.2: undefined reference to `EVP_MD_CTX_free'
/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/libwinpr/libwinpr.so.2: undefined reference to `EVP_MD_CTX_new'
/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build/winpr/libwinpr/libwinpr.so.2: undefined reference to `HMAC_CTX_free'
collect2: error: ld returned 1 exit status
make[2]: *** [winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/build.make:96: winpr/tools/makecert-cli/winpr-makecert] Error 1
make[2]: Leaving directory '/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build'
make[1]: *** [CMakeFiles/Makefile2:1124: winpr/tools/makecert-cli/CMakeFiles/winpr-makecert.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/portage/net-misc/freerdp-2.0.0_pre20161219/work/freerdp-2.0.0_pre20161219_build'
make: *** [Makefile:150: all] Error 2
 * ERROR: net-misc/freerdp-2.0.0_pre20161219::gentoo failed (compile phase):
 *   emake failed


=================================================================
                        Package Settings
=================================================================

dev-libs/libressl-2.5.0::overlay_jl was built with the following:
USE="asm -static-libs" ABI_X86="32 64 -x32"


net-misc/freerdp-2.0.0_pre20160722::gentoo was built with the following:
USE="X alsa client cups ffmpeg gstreamer jpeg libressl pulseaudio usb xinerama xv -debug -doc -libav (-neon) -server -smartcard -systemd -test -wayland" ABI_X86="64" CPU_FLAGS_X86="sse2"

freerdp-2.0.0_pre20160722 compiles without problems.
Comment 1 jospezial 2016-12-24 20:22:21 UTC
Created attachment 457340 [details]
build.log

The wrong auto-detect is annoying.
Comment 2 Mike Gilbert gentoo-dev 2016-12-24 23:42:27 UTC
Please report this upstream.

https://github.com/FreeRDP/FreeRDP/issues
Comment 3 Aric Belsito 2016-12-25 02:29:03 UTC
Created attachment 457346 [details, diff]
LibreSSL patch.

I was able to make a patch that should theoretically work, but while libwinpr now links correctly, during the build of libfreerdp, "-DWITH_OPENSSL" is not passed to the commandline, so the build fails anyway. I can't find any issues that mention this so far -- I guess everyone is building this package with OpenSSL-1.1.0?
Comment 4 Aric Belsito 2016-12-25 02:32:37 UTC
Created attachment 457348 [details, diff]
LibreSSL Patch (v2)

Whoops nevermind, I was just building with the wrong version of the patch :P
Comment 5 jospezial 2016-12-25 04:09:55 UTC
(In reply to Aric Belsito from comment #4)
> Created attachment 457348 [details, diff] [details, diff]
> LibreSSL Patch (v2)
> 
> Whoops nevermind, I was just building with the wrong version of the patch :P

Patch works.
Comment 6 Mike Gilbert gentoo-dev 2016-12-27 19:47:04 UTC
(In reply to Aric Belsito from comment #4)

Thanks. Please submit this upstream, and I will be happy to backport it.
Comment 7 Aric Belsito 2017-03-17 05:45:33 UTC
I totally forgot about this and I'll submit the patch upstream now.

Need to figure out a better way to use the Bugzilla..
Comment 8 Aric Belsito 2017-03-20 16:06:30 UTC
Done. Patch was merged.

https://github.com/FreeRDP/FreeRDP/commit/70ab61c8e6083080093fc42e8e7172969864e2bd
Comment 9 Mike Gilbert gentoo-dev 2017-03-20 20:58:57 UTC
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=419c9cbad4248fdf0fd043341026a60f423d561b

commit 419c9cbad4248fdf0fd043341026a60f423d561b
Author: Mike Gilbert <floppym@gentoo.org>
Date:   Mon Mar 20 16:57:54 2017 -0400

    net-misc/freerdp: fix build with libressl

    Thanks to Aric Belsito for the patch.

    Bug: https://bugs.gentoo.org/603656
    Package-Manager: Portage-2.3.5_p2, Repoman-2.3.2_p32

 net-misc/freerdp/files/freerdp-libressl.patch     | 148 ++++++++++++++++++++++
 net-misc/freerdp/freerdp-2.0.0_pre20161219.ebuild |   6 +-
 2 files changed, 153 insertions(+), 1 deletion(-)