Bug 1446957

Summary: netgen-mesher 5.3.1 fails to build with OCE 0.18
Product: [Fedora] Fedora Reporter: Richard Shaw <hobbes1069>
Component: netgen-mesherAssignee: Sandro Mani <manisandro>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: hobbes1069, manisandro
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: netgen-mesher-6.2-0.2.git94fd571.fc26 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-06-06 18:18:46 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1443962    
Attachments:
Description Flags
Log for failing build none

Description Richard Shaw 2017-04-30 21:26:27 UTC
Created attachment 1275330 [details]
Log for failing build

Description of problem:
netgen-mesher fails to build with OCE 0.18 on rawhide.

Version-Release number of selected component (if applicable):
netgen-mesher-5.3.1-13.fc26

Additional info:
make[3]: *** [Makefile:520: occgeom.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../../libsrc/occ -I../.. -I../../../libsrc/include -DOCCGEOMETRY -I/usr/include/oce -D_OCC64 -DHAVE_IOSTREAM -DHAVE_LIMITS -DHAVE_LIMITS_H -DHAVE_IOMANIP -I/usr/include -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -fopenmp -c ../../../libsrc/occ/occmeshsurf.cpp  -fPIC -DPIC -o .libs/occmeshsurf.o
../../../libsrc/occ/occmeshsurf.cpp: In member function 'void netgen::OCCSurface::GetNormalVector(const netgen::Point<3>&, const netgen::PointGeomInfo&, netgen::Vec<3>&) const':
../../../libsrc/occ/occmeshsurf.cpp:52:9: warning: unused variable 'vstep' [-Wunused-variable]
  double vstep = 0.01*(vmax-vmin);
         ^~~~~
../../../libsrc/occ/occmeshsurf.cpp: In member function 'void netgen::OCCSurface::DefineTangentialPlane(const netgen::Point<3>&, const netgen::PointGeomInfo&, const netgen::Point<3>&, const netgen::PointGeomInfo&)':
../../../libsrc/occ/occmeshsurf.cpp:221:9: warning: unused variable 'r' [-Wunused-variable]
  double r = temp.Length();
         ^

Comment 1 Sandro Mani 2017-05-02 10:09:53 UTC
netgen-6.2 builds with OCE-0.18, will have a package ready very soon.

Comment 2 Richard Shaw 2017-05-02 12:45:19 UTC
Ok, good. I did checkout their SF page but wasn't sure if 6.X beta was ready. I'd like to update rawhide of course and F26 is you're OK with that.

Comment 3 Sandro Mani 2017-05-02 12:51:48 UTC
They seem to have stopped releasing on SF and instead only do binary releases at [1]... So I just used a git snapshot tarball.

I now have netgen-mesher-6.2-0.1.git94fd571.fc27.src.rpm working, ready to build.

[1] https://ngsolve.org/downloads

Comment 4 Richard Shaw 2017-05-05 16:14:13 UTC
Do you have a SRPM handy? I'd like to finish doing test builds of all dependencies (FreeCAD, etc).

Comment 6 Richard Shaw 2017-05-08 20:32:04 UTC
Ok, I was able to rebuild FreeCAD which is what I was worried about but it seems there's a new dependency, tcl-togl? 

What were you thinking as far as timing for builds for rawhide and f26?

Comment 7 Sandro Mani 2017-05-08 21:06:03 UTC
Not new, just bumped from 1.7 to 2.1. Test build here: 
https://copr.fedorainfracloud.org/coprs/smani/OCE-0.18/builds/

Not sure what you mean by timing, but I'm ready to rebuild when you are ;) F26 is ok for me.

Comment 8 Richard Shaw 2017-05-10 12:53:39 UTC
(In reply to Sandro Mani from comment #7)
> Not new, just bumped from 1.7 to 2.1. Test build here: 
> https://copr.fedorainfracloud.org/coprs/smani/OCE-0.18/builds/

Ok, interesting, when I was doing my local mockchain builds it said it couldn't find the package and I had to download it from your COPR. Does it have a version requirement on it? Maybe that was the problem.

 
> Not sure what you mean by timing, but I'm ready to rebuild when you are ;)
> F26 is ok for me.

Ok, let's start with rawhide and make sure we don't break anything there first!

Looks like the order is:
tcl-togl
OCE
netgen-mesher
gmsh & smesh
FreeCAD

I'm sure that's not a complete list but I can't get to my Fedora machine from work right now to do a repoquery...

Comment 9 Sandro Mani 2017-05-10 12:58:07 UTC
$ sudo dnf repoquery --disablerepo=* --enablerepo=rawhide-source --whatrequires OCE-devel --alldeps
freecad-1:0.16-5.fc26.src
gmsh-0:2.16.0-2.fc26.src
netgen-mesher-0:5.3.1-13.fc26.src
root-0:6.08.06-3.fc27.src
smesh-0:6.6-3.fc26.src

So also root requires a rebuild, rest should be good.

Shall I already push (without build) the updates for gmsh, netgen-mesher? (I actually already accidentally pushed tcl-togl, but managed to cancel the build before it was too late ;))

Comment 10 Richard Shaw 2017-05-10 13:26:44 UTC
I'm going to update smesh to a new version so I'll take care of that one and I'm assuming you'll take care of gmsh as well...

Comment 11 Sandro Mani 2017-05-10 13:31:38 UTC
Ok!

Comment 12 Richard Shaw 2017-05-10 22:33:33 UTC
OCE build is complete. You should be able to build tcl-togl and netgen-mesher.

Comment 13 Sandro Mani 2017-05-11 11:45:12 UTC
Yep, done. Thanks!

Comment 14 Sandro Mani 2017-05-11 12:23:17 UTC
Just noticed that upstream stopped installing nglib.h which is needed by gmsh (so it will fail to build). Updated netgen-mesher build coming up, and I'll also take care of gmsh then.

Comment 15 Richard Shaw 2017-05-11 12:24:52 UTC
(In reply to Sandro Mani from comment #14)
> Just noticed that upstream stopped installing nglib.h which is needed by
> gmsh (so it will fail to build). Updated netgen-mesher build coming up, and
> I'll also take care of gmsh then.

Ok, I canceled my build... I'm not sure if FreeCAD uses the header. I'll have to check.

Comment 16 Richard Shaw 2017-05-11 12:39:14 UTC
Yes, freecad uses the same header so I'll hold off. I'm starting my F26 builds now. We'll need tcl-togl as well in the buildroot override.

Comment 17 Sandro Mani 2017-05-11 12:41:53 UTC
tcl-togl building now: https://koji.fedoraproject.org/koji/taskinfo?taskID=19495129

Don't know if this applies to freecad also, but I had to use -std=c++14 when building gmsh since it uses private netgen headers which use c++14 language features.

Comment 18 Richard Shaw 2017-05-11 12:44:42 UTC
Should be the default unless the project was overriding it...

https://gcc.gnu.org/projects/cxx-status.html#cxx14

Comment 19 Sandro Mani 2017-05-11 12:45:35 UTC
Which it was >.<

CMakeLists.txt:  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

Comment 20 Sandro Mani 2017-05-11 14:48:19 UTC
netgen-mesher-6.2-0.2.git94fd571.fc27 is now in f27-build, taking care of gmsh now.

Comment 21 Richard Shaw 2017-05-11 16:58:01 UTC
OCE is in the buildroot override for F26 now.

Comment 22 Richard Shaw 2017-05-13 20:01:56 UTC
Well other than root not building on rawhide due to a difference in the noarch doc package on s390x I think all the builds are complete. I'll ask on the list but my inclination at this point is to add an exclude arch for s390x for now.

Comment 23 Richard Shaw 2017-05-14 19:39:58 UTC
Root has been taken care of. Are you planning on building gmsh 3.0.2 for F26?

Comment 24 Sandro Mani 2017-05-15 11:27:51 UTC
Building now. I suppose we should coordinate one big mass-update?

Comment 25 Richard Shaw 2017-05-15 12:18:09 UTC
Yup, was already working on it :)

Comment 26 Sandro Mani 2017-05-15 12:20:11 UTC
Just noticed that my gmsh f26 build didn't start due an expired kerberos token... Building now, then I'll also need to rebuild getdp, and then I think we should be good?

Comment 27 Richard Shaw 2017-05-15 12:24:58 UTC
Ok, wasn't aware of getdp... I'll add it to the list. It would be really nice if someone would write a shell script around dnf repoquery to get dependencies recursively. With the old repoquery command I could do a "repoquery --provides <stuff> | xargs repoquery --whatrequires" and get everything based on library dependency, not just -devel based but stupid dnf repoquery doesn't have a quiet option and always outputs the last time the metadata was updated and breaks it.

Comment 28 Sandro Mani 2017-05-15 17:05:59 UTC
Ok, gmsh and getdp are built.

Comment 29 Fedora Update System 2017-05-15 18:29:57 UTC
getdp-2.11.0-3.fc26 root-6.08.06-3.fc26 freecad-0.16-6.fc26 gmsh-3.0.2-1.fc26 smesh-6.7.2-1.fc26 netgen-mesher-6.2-0.2.git94fd571.fc26 OCE-0.18.1-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-dec322f142

Comment 30 Richard Shaw 2017-05-15 19:33:34 UTC
It looks like tcl-togl made it onto another bodhi update? Do you want to keep it separate or do you want to cancel it so I can add it to my update?

Comment 31 Sandro Mani 2017-05-15 19:36:24 UTC
Yeah made a mistake there last week, unpshed immediately, but it is still there in unpushed state, and I can't see how to completely cancel it?

Comment 32 Sandro Mani 2017-05-15 21:36:39 UTC
I've repushed the update, can you give me a heads-up when you are pushing the OCE update to stable as to coordinate?

Comment 33 Fedora Update System 2017-05-16 06:09:52 UTC
OCE-0.18.1-1.fc26, freecad-0.16-6.fc26, getdp-2.11.0-3.fc26, gmsh-3.0.2-1.fc26, netgen-mesher-6.2-0.2.git94fd571.fc26, root-6.08.06-3.fc26, smesh-6.7.2-1.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-dec322f142

Comment 34 Richard Shaw 2017-05-16 12:09:34 UTC
(In reply to Sandro Mani from comment #32)
> I've repushed the update, can you give me a heads-up when you are pushing
> the OCE update to stable as to coordinate?

Yup, we'll handle it that way but we should ask on the devel list how an unpush is supposed to work because it seems broken.

Comment 35 Sandro Mani 2017-05-16 12:12:16 UTC
If I recall correctly it was always the case that an update is irreversible, an I suppose understandably so because it can mess up things pretty badly, say if you unpush, cancel and the push a different build with the same NVR. I suppose the solution here would have been to unpush, leave the update to rot, and the fire a build with a bumped version.

Comment 36 Richard Shaw 2017-05-16 12:14:42 UTC
I guess that's sense, but there should really be some kind of warning when you unpush so you understand the consequences...

Comment 37 Richard Shaw 2017-05-16 12:14:57 UTC
I guess that makes sense, but there should really be some kind of warning when you unpush so you understand the consequences...

Comment 38 Richard Shaw 2017-05-19 12:15:40 UTC
Just got the notification I can push to stable. Let me know when you're ready.

Comment 39 Sandro Mani 2017-05-19 12:25:07 UTC
Pushed, thanks.

Comment 40 Richard Shaw 2017-05-19 12:27:26 UTC
Pushed!

Comment 41 Fedora Update System 2017-06-09 18:58:21 UTC
OCE-0.18.1-1.fc26, freecad-0.16-6.fc26, getdp-2.11.0-3.fc26, gmsh-3.0.2-1.fc26, netgen-mesher-6.2-0.2.git94fd571.fc26, root-6.08.06-3.fc26, smesh-6.7.2-1.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.