Bug 192363

Summary: Review Request: GTS - Gnu Triangulated Surface Library
Product: [Fedora] Fedora Reporter: Ed Hill <ed>
Component: Package ReviewAssignee: Ralf Corsepius <rc040203>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: jonathan.underwood, paul
Target Milestone: ---Flags: gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-05-22 19:10:49 UTC Type: ---
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: 163779    
Attachments:
Description Flags
patch to address Makefile.am applying bogus INCLUDES none

Description Ed Hill 2006-05-19 02:04:42 UTC
Spec URL: http://mitgcm.org/eh3/fedora_misc/gts.spec
SRPM URL: http://mitgcm.org/eh3/fedora_misc/gts-0.7.6-1.src.rpm
Description: 
GTS provides a set of useful functions to deal with 3D surfaces meshed
with interconnected triangles including collision detection,
multiresolution models, constrained Delaunay triangulations and robust
set operations (union, intersection, differences).

Comment 1 Ralf Corsepius 2006-05-19 03:42:27 UTC
I've been packaging gts for many years, so ...

NEEDSWORK:

- Shipping static libs
Add --disable-static to %configure

- Bogus "Provides: gts-devel" at the beginning of the spec.

- Some of the binaries' names are too general and likely to conflict with other
packages:
/usr/bin/delaunay
/usr/bin/happrox
/usr/bin/transform
I propose to rename them into gts<name>

- Mispackaged file:
 /usr/share/gts/gts.m4
This file is an autoconf support macro and belongs into /usr/share/aclocal

- The html docs contained in gts-*.rpm are devel docs.
They should be packaged into the gts-devel-*.rpm.

Comment 2 Ed Hill 2006-05-19 11:59:30 UTC
Hi Ralf, thank you for all the helpful comments!  Here are the updated files
that incorporate all of your fixes:

  http://mitgcm.org/eh3/fedora_misc/gts-0.7.6-2.src.rpm
  http://mitgcm.org/eh3/fedora_misc/gts.spec

Comment 3 Ralf Corsepius 2006-05-19 12:42:53 UTC
OK, now to the nasty parts (Gts's sources are quite dirty ;) ):

1. gts-config is buggy:

Compare this (buggy):
$ ./gts-config --cflags
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include
$ ./gts-config --libs
-L/usr/lib -lgts -lglib-2.0 -lm

to this:
$ pkg-config --cflags gts
-pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
$ pkg-config --libs gts
-pthread -Wl,--export-dynamic -lgts -lgthread-2.0 -lgmodule-2.0 -ldl -lglib-2.0

I'd propose to patch gts-config to behave as a wrapper to the corresponding
calls to pkg-config, at least for --cflags and --libs, or to patch out the
-I/usr/include rsp. -L/usr/lib by brute force.

2. The package's Makefiles are broken.
They explictily pass -I$(includedir) through INCLUDES. This overrides the system
include path and can cause nasty side-effects.

3. Building the packages causes GCC to emit quite a significant number of
"punned pointer/strict-alignment warnings". These are likely to break the
package at run-time, esp. on 64bit platforms.

Also worth noting is the configure script playing tricks with CFLAGS. AFAIS,
they seem to be harmless at least on FC5/i386.

So, be prepared to watch PRs coming in ;)

I consider 1. to be a MUST-fix, 2. to be a "I recommend to fix it" and 3. headsup.

APPROVED, provided you fix 1. I am going to attach a patch to address issue 2.
to this PR.

[Besides this, this package is one of those packages applying the weird (IMO
sense-free) Drepper-style shared library names. As this package is an ordinary
library, I am not going to fret over this, this time.]


Comment 4 Ralf Corsepius 2006-05-19 12:45:12 UTC
Created attachment 129599 [details]
patch to address Makefile.am applying bogus INCLUDES

Comment 5 Ed Hill 2006-05-19 15:23:16 UTC
Hi Ralf, thank you again for all the help.  I'm new (*very* new) to gts 
and am hoping to learn about it and use it for some future projects.  You 
are obviously a lot more familiar with it.  Would you be interested in 
"owning" it in Extras?  I'd be glad to do that and would be equally happy 
to try and maintain it myself.  Either way is cool, I'd just like to have 
a usable version of it in Extras.

Comment 6 Ralf Corsepius 2006-05-19 15:48:06 UTC
(In reply to comment #5)
> You are obviously a lot more familiar with it.
Well, it's a dependency of other packages I package for local use.

>  Would you be interested in "owning" it in Extras?
Not really ;) I am not actively using it, just passively (You might have noticed
that I am packaging several 3D related packages).

It's just that I have an (unclean) gts-0.7.4.spec myself, which I didn't intend
to publish, because my interest in it is limited and because I feel, I already
maintain too many packages.

>  I'd be glad to do that and would be equally happy 
> to try and maintain it myself.  Either way is cool, I'd just like to have 
> a usable version of it in Extras.
Exactly, what I want. So, this again is a case, I am willing to co-maintain and
to team up, but I do not want to take the lead.



Comment 7 Ed Hill 2006-05-21 20:35:55 UTC
Hi Ralf, I've included your patch (comment #4), added one for gts-config,
and imported it into CVS.  Please let me know if you see any problems.  
I'll request builds on FC-4/5 and devel in day or two.

And co-maintainership is fine with me -- please feel free to make whatever 
changes you want to it in CVS at any time.

Comment 8 Ed Hill 2006-05-22 19:10:49 UTC
Successfully built on FC-4, FC-5, and devel.  Thanks again for the help!

Comment 9 Paul F. Johnson 2006-07-25 22:50:36 UTC
Can you post up a new srpm and spec file? I can get down to reviewing it
properly then.

Comment 10 Ralf Corsepius 2006-07-26 03:03:05 UTC
(In reply to comment #9)
> Can you post up a new srpm and spec file? I can get down to reviewing it
> properly then.
... this package's review had been completed long ago. 

Comment 11 Jonathan Underwood 2011-11-29 17:39:55 UTC
Package Change Request
======================
Package Name: gts
New Branches: el6
Owners: jgu
InitialCC:

Comment 12 Gwyn Ciesla 2011-11-29 17:47:00 UTC
Git done (by process-git-requests).