Opened 7 years ago

Closed 6 years ago

#45377 closed update (fixed)

lensfun @0.2.8 update to 0.3.0

Reported by: help@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: dbevans (David B. Evans), Schamschula (Marius Schamschula)
Port: lensfun

Description

Lensfun 0.3.0 is out with a lot of additions to the database and various other enhancements. Update will require some changes to Portfile because current Portfile uses configure script which was dropped, cmake is the only build option now. But maybe this switch will actually simplify things.

Attachments (3)

lensfun-Portfile.patch (3.5 KB) - added by help@… 6 years ago.
Portfile-lensfun.diff (3.5 KB) - added by Schamschula (Marius Schamschula) 6 years ago.
patch-lensfun-0.3.0-revised.diff (7.1 KB) - added by dbevans (David B. Evans) 6 years ago.
Proposed patch revised by devans

Download all attachments as: .zip

Change History (26)

comment:1 Changed 7 years ago by mf2k (Frank Schima)

Cc: julians37@… removed
Owner: changed from macports-tickets@… to julians37@…

comment:2 Changed 6 years ago by dbevans (David B. Evans)

Cc: devans@… added

Note also that with the demise of berlios.de, the project is now hosted on sourceforge at http://lensfun.sourceforge.net/. Old homepage, master_sites, livecheck url are all dead now.

Changed 6 years ago by help@…

Attachment: lensfun-Portfile.patch added

comment:3 Changed 6 years ago by help@…

I've uploaded my take on updating Portfile, but I'm not very experienced with Portfile writing, so someone should review it.

comment:4 Changed 6 years ago by Schamschula (Marius Schamschula)

Cc: mschamschula@… added

Cc Me!

comment:5 in reply to:  3 ; Changed 6 years ago by Schamschula (Marius Schamschula)

Replying to help@…:

I've uploaded my take on updating Portfile, but I'm not very experienced with Portfile writing, so someone should review it.

I came up with nearly the same solution as you, but I don't think the port:libpng port:zlib but rather port:gettext are needed as depends_lib. otool -L only shows libglib-2.0.0.dylib and libintl.8.dylib.

Last edited 6 years ago by Schamschula (Marius Schamschula) (previous) (diff)

comment:6 Changed 6 years ago by Schamschula (Marius Schamschula)

Added cmake build dependency.

comment:7 Changed 6 years ago by Schamschula (Marius Schamschula)

Reverted. cmake is a dependency of the cmake port group.

comment:8 Changed 6 years ago by Schamschula (Marius Schamschula)

Changed depends_build to depends_build-append.

Fixes issue of depends_build overwriting cmake port group settings.

Last edited 6 years ago by Schamschula (Marius Schamschula) (previous) (diff)

Changed 6 years ago by Schamschula (Marius Schamschula)

Attachment: Portfile-lensfun.diff added

comment:9 Changed 6 years ago by Schamschula (Marius Schamschula)

Reverted depends_lib from port:glib2 to path:lib/pkgconfig/glib-2.0.pc:glib2.

comment:10 in reply to:  9 ; Changed 6 years ago by help@…

Don't see an option to delete/obsolete my attachment, so I'll just leave it as a comment: mschamschula's version of patch should be used, not mine.

Replying to mschamschula@…:

Reverted depends_lib from port:glib2 to path:lib/pkgconfig/glib-2.0.pc:glib2.

What's the difference here? glib2 port can miss this file?

comment:11 in reply to:  5 Changed 6 years ago by help@…

Replying to mschamschula@…:

Replying to help@…:

I've uploaded my take on updating Portfile, but I'm not very experienced with Portfile writing, so someone should review it.

I came up with nearly the same solution as you, but I don't think the port:libpng port:zlib but rather port:gettext are needed as depends_lib. otool -L only shows libglib-2.0.0.dylib and libintl.8.dylib.

I copied dependencies from Gentoo ebuild, liblensfun indeed doesn't depend on these ports, libauxfun does, but it's not built by default. I'm not sure if it's needed, so I would leave it disabled.

comment:12 in reply to:  10 Changed 6 years ago by larryv (Lawrence Velázquez)

Replying to help@…:

Replying to mschamschula@…:

Reverted depends_lib from port:glib2 to path:lib/pkgconfig/glib-2.0.pc:glib2.

What's the difference here? glib2 port can miss this file?

We want ports that require GLib to be able to use either glib2 or glib2-devel. The “path:lib/pkgconfig/glib-2.0.pc:glib2” depspec means that the presence of the file ${prefix}/lib/pkgconfig/glib-2.0.pc satisfies the dependency, otherwise install port glib2. So a user with glib2-devel installed would not have to install glib2.

comment:13 Changed 6 years ago by Ionic (Mihai Moldovan)

What's the takeaway here, Marius? Does it work for you? Have you tested building in trace mode yet? The maintainer unfortunately doesn't seem to be too interested.

comment:14 Changed 6 years ago by mf2k (Frank Schima)

Keywords: haspatch added
Owner: changed from julians37@… to macports-tickets@…

This port no longer has a maintainer. See #45838.

comment:15 Changed 6 years ago by mf2k (Frank Schima)

When I tried building with this patch in trace mode, I see this:

$ sudo port -t install lensfun
--->  Computing dependencies for lensfun
--->  Fetching archive for lensfun
--->  Attempting to fetch lensfun-0.3.0_0.darwin_13.x86_64.tbz2 from http://packages.macports.org/lensfun
--->  Attempting to fetch lensfun-0.3.0_0.darwin_13.x86_64.tbz2 from http://nue.de.packages.macports.org/macports/packages/lensfun
--->  Attempting to fetch lensfun-0.3.0_0.darwin_13.x86_64.tbz2 from http://lil.fr.packages.macports.org/lensfun
--->  Fetching distfiles for lensfun
--->  Verifying checksums for lensfun
--->  Extracting lensfun
--->  Configuring lensfun
Warning: The following existing files were hidden from the build system by trace mode:
  /opt
  /opt/local/bin/gmake
  /opt/local/bin/install_name_tool
--->  Building lensfun
Warning: The following existing file was hidden from the build system by trace mode:
  /opt
--->  Staging lensfun into destroot
Warning: The following existing files were hidden from the build system by trace mode:
  /opt
  /var/root/.CFUserTextEncoding
--->  Installing lensfun @0.3.0_0
--->  Activating lensfun @0.3.0_0

I'm not sure if that's a problem though.

comment:16 in reply to:  15 Changed 6 years ago by Schamschula (Marius Schamschula)

Replying to mf2k@…:

When I tried building with this patch in trace mode, I see this:

$ sudo port -t install lensfun
--->  Computing dependencies for lensfun
--->  Fetching archive for lensfun
--->  Attempting to fetch lensfun-0.3.0_0.darwin_13.x86_64.tbz2 from http://packages.macports.org/lensfun
--->  Attempting to fetch lensfun-0.3.0_0.darwin_13.x86_64.tbz2 from http://nue.de.packages.macports.org/macports/packages/lensfun
--->  Attempting to fetch lensfun-0.3.0_0.darwin_13.x86_64.tbz2 from http://lil.fr.packages.macports.org/lensfun
--->  Fetching distfiles for lensfun
--->  Verifying checksums for lensfun
--->  Extracting lensfun
--->  Configuring lensfun
Warning: The following existing files were hidden from the build system by trace mode:
  /opt
  /opt/local/bin/gmake
  /opt/local/bin/install_name_tool
--->  Building lensfun
Warning: The following existing file was hidden from the build system by trace mode:
  /opt
--->  Staging lensfun into destroot
Warning: The following existing files were hidden from the build system by trace mode:
  /opt
  /var/root/.CFUserTextEncoding
--->  Installing lensfun @0.3.0_0
--->  Activating lensfun @0.3.0_0

I'm not sure if that's a problem though.

That doesn't seem to be a problem.

comment:17 Changed 6 years ago by dbevans (David B. Evans)

With some encouragement from Frank (mf2k) I'm assuming maintainership of the port, openmaintainer. see r133587. I maintain a couple of other ports that depend on this one (ufraw in particular) so it makes sense.

I've done some testing and the suggested patches are on the right path but there's a few more things to iron out before committing the update

  • the port now installs two python3 scripts so some additional configuration to use python34 is required
  • the new library is not ABI compatible with the existing version so at a minimum dependent ports need to be revbumped
  • ufraw works OK after rebuilding, but hugin-app fails to recognize the new version during configure. Working on this.
  • digikam remains to be tested and darktable doesn't build with either version.

Hope to have an upgraded port ready to commit late tommorrow or over the weekend at the latest.

Last edited 6 years ago by dbevans (David B. Evans) (previous) (diff)

comment:18 Changed 6 years ago by help@…

I assume you mean darktable from ports. It's heavily outdated and should be either dropped or upgraded too.

comment:19 in reply to:  18 Changed 6 years ago by dbevans (David B. Evans)

Replying to help@…:

I assume you mean darktable from ports. It's heavily outdated and should be either dropped or upgraded too.

Yes, I mean, at the very least, determining the difficultly of updating darktable and ensuring any lensfun 0.3.0 issues are addressed. It's broken now so I won't hold up committing lensfun because of it.

Last edited 6 years ago by dbevans (David B. Evans) (previous) (diff)

Changed 6 years ago by dbevans (David B. Evans)

Proposed patch revised by devans

comment:20 Changed 6 years ago by dbevans (David B. Evans)

Patch attached for my working version of this upgrade. Builds and tests successfully with ufraw (including gimp plugin) and gegl. Working on hugin-app issues (after upgrade to version 2014.0.0 as described in #46721) and digikam.

This should be pretty close to final so give it a try and let me know if you have any suggestions.

comment:21 Changed 6 years ago by dbevans (David B. Evans)

See #46721 comment #6 regarding fix for building hugin-app 2014.0.0 with lensfun 0.3.0.

comment:22 Changed 6 years ago by dbevans (David B. Evans)

Current version of digikam builds against lensfun 0.3.0 with minor patching (lensfun API changes). For darktable status, see #43286.

Last edited 6 years ago by dbevans (David B. Evans) (previous) (diff)

comment:23 Changed 6 years ago by dbevans (David B. Evans)

Resolution: fixed
Status: newclosed

lensfun update to version 0.3.0 committed in r133613.
Dependents ufraw gegl digikam updated as necessary.
hugin-app update tracked in #46721.
darktable update tracked in #43286.

Note: See TracTickets for help on using tickets.