Bug 246910 - emulators/virtualbox-ose fails to build using poudriere on 12.1 Stable amd64 with error: called object type 'int' is not a function or function pointer
Summary: emulators/virtualbox-ose fails to build using poudriere on 12.1 Stable amd64 ...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Virtualbox Team (Nobody)
URL:
Keywords:
: 246999 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-06-01 13:25 UTC by Robert Cina
Modified: 2020-08-17 06:43 UTC (History)
8 users (show)

See Also:
bugzilla: maintainer-feedback? (vbox)


Attachments
Support gSoap 2.8.103 soap_socket_errno change (1.04 KB, patch)
2020-06-01 14:02 UTC, Derek Schrock
kevans: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Cina 2020-06-01 13:25:22 UTC
The port emulators/virtualbox-ose fails to build for me using poudriere with 12.1 Stable with the error: called object type 'int' is not a function or function pointer.

Below is the full error I am receiving and I have also attached the build log:

kBuild: Compiling vboxwebsrv - /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/src/VBox/Main/webservice/vboxweb.cpp
kBuild: Compiling vboxwebsrv - /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/webservice/methodmaps.cpp
kBuild: Compiling vboxwebsrv - /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/webservice/soapServer.cpp
kBuild: Compiling vboxwebsrv - /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/webservice/vboxweb-wsdl.c
kBuild: Compiling webtest - /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/src/VBox/Main/webservice/webtest.cpp
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/src/VBox/Main/webservice/vboxweb.cpp:947:38: error: called object type 'int' is not a function or function pointer
                if (soap_socket_errno(soap.master) == SOAP_EINTR)
                    ~~~~~~~~~~~~~~~~~^
1 error generated.
kmk: *** [/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/vboxwebsrv/vboxweb.o] Error 1
The failing command:
@c++ -c -O2 -g -pipe -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wno-language-extension-token  -Wno-gnu-folding-constant -Wno-gnu-anonymous-struct  -Wno-string-plus-int -Wno-nested-anon-types -Wno-variadic-macros -Wno-long-long -Wno-variadic-macros   -Wshadow -fshort-wchar -fexceptions -frtti -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fvisibility-inlines-hidden -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT   -Wno-shadow  -m64 -Wno-misleading-indentation -I/usr/local/lib/gsoap -I/usr/local/share/gsoap/import -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/webservice -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/src/VBox/Main/webservice -I/usr/local/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/bin/sdk/bindings/xpcom/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/bin/sdk/bindings/xpcom/include/xpcom -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/bin/sdk/bindings/xpcom/include/string -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/bin/sdk/bindings/xpcom/include/xpcom -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/bin/sdk/bindings/xpcom/include/nsprpub -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/bin/sdk/bindings/xpcom/include/ipcd -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/vboxwebsrv/dtrace -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_REM -DVBOX_WITH_RAW_MODE -DRT_OS_FREEBSD -D__FREEBSD__ -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/usr/local/share/virtualbox-ose\" -DRTPATH_APP_PRIVATE_ARCH=\"/usr/local/lib/virtualbox\" -DRTPATH_SHARED_LIBS=\"/usr/local/lib/virtualbox\" -DRTPATH_APP_DOCS=\"/usr/local/share/doc/virtualbox-ose\" -DIN_RING3 -DUNICODE -DNDEBUG=1 -DVBOX_WITH_XPCOM -DNDEBUG -DTRIMMED -DSOCKET_CLOSE_ON_EXEC -DWITH_OPENSSL -Wp,-MD,/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/vboxwebsrv/vboxweb.o.dep -Wp,-MT,/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/vboxwebsrv/vboxweb.o -Wp,-MP -o /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/out/freebsd.amd64/release/obj/vboxwebsrv/vboxweb.o /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.34/src/VBox/Main/webservice/vboxweb.cpp
kmk: *** Waiting for unfinished jobs....
kmk: *** Exiting with status 2
*** Error code 2

Stop.
make: stopped in /usr/ports/emulators/virtualbox-ose
=>> Cleaning up wrkdir
===>  Cleaning for virtualbox-ose-5.2.34_4
build of emulators/virtualbox-ose | virtualbox-ose-5.2.34_4 ended at Mon Jun  1 09:16:38 EDT 2020
build time: 00:09:50
!!! build failure encountered !!!
Comment 1 Derek Schrock 2020-06-01 14:02:34 UTC
Created attachment 215136 [details]
Support gSoap 2.8.103 soap_socket_errno change

Patch ${WRKSRC}/src/VBox/Main/webservice/vboxweb.cpp to use gSoap 2.8.103 soap_socket_errno macro.

Reported upstream here: https://www.virtualbox.org/ticket/19634
Comment 2 Kyle Evans freebsd_committer freebsd_triage 2020-06-01 14:09:32 UTC
Adding bofh@ since they committed the gsoap update -- any chance you can follow up with the fix to virtualbox to cope?
Comment 3 Muhammad Moinur Rahman freebsd_committer freebsd_triage 2020-06-06 20:45:21 UTC
So the question is do I have the rights to commit for vbox@ ?
Comment 4 Kyle Evans freebsd_committer freebsd_triage 2020-06-06 21:16:53 UTC
(In reply to Muhammad Moinur Rahman from comment #3)

Yes; the patch LGTM (replaces soap_socket_errno(foo) with soap_socket_errno), please proceed. :)
Comment 5 Muhammad Moinur Rahman freebsd_committer freebsd_triage 2020-06-06 21:20:48 UTC
Starting build testing. Hope to commit soon.
Comment 6 Samy Mahmoudi 2020-06-07 01:05:44 UTC
*** Bug 246999 has been marked as a duplicate of this bug. ***
Comment 7 commit-hook freebsd_committer freebsd_triage 2020-06-07 13:08:37 UTC
A commit references this bug:

Author: bofh
Date: Sun Jun  7 13:08:06 UTC 2020
New revision: 538153
URL: https://svnweb.freebsd.org/changeset/ports/538153

Log:
  emulators/virtualbox-ose: UNBREAK with gsoap 2.8.103

  - gSoap 2.8.103 macro soap_socket_errno changed from:
    soap_socket_errno(s) -> soap_socket_errno

  PR:		246910
  Submitted by:	dereks@lifeofadishwasher.com
  Reported by:	transitive@gmail.com

Changes:
  head/emulators/virtualbox-ose/Makefile
Comment 8 Philip Homburg 2020-06-09 10:32:09 UTC
Is it normal to commit a change and not bump the port's version number? This is confusing.
Comment 9 Kurt Jaeger freebsd_committer freebsd_triage 2020-06-09 11:14:22 UTC
(In reply to Philip Homburg from comment #8)
If it unbreaks a port, yes, the portversion bump can be ommitted.
Comment 10 Philip Homburg 2020-06-09 11:21:28 UTC
(In reply to Kurt Jaeger from comment #9)
Good to know. I normmaly wait for a version number bump to see if I should try again. I guess that's bad strategy then and I should try something else.
Comment 11 luna 2020-06-15 16:31:19 UTC
I just successfully installed virtualbox-ose after this commit was made without issues. Can we get a confirmation from OP that it works for them?
Comment 12 Samy Mahmoudi 2020-06-15 17:36:52 UTC
Before the unbreak of revision 538153, I noticed this Asm-related thing at the end of my log:

kBuild: Linking tstAsmStructsRC
FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1)
Target: i386-unknown-freebsd12.1

Is that normal to have such an i386-looking target under amd64 ?

Full Poudriere log:
http://logs.imp.ovh/virtualbox-ose-5.2.34_4.log
Comment 13 Robert Cina 2020-06-15 17:43:47 UTC
I'm the op and I can confirm that the port builds for me now.