Bug 192046 - [maintainer-update] graphics/nomacs: update to version 2.0.0
Summary: [maintainer-update] graphics/nomacs: update to version 2.0.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Rodrigo Osorio
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-22 21:33 UTC by Jens K. Loewe
Modified: 2014-12-11 23:10 UTC (History)
2 users (show)

See Also:


Attachments
Patch to 2.0.0 (3.49 KB, patch)
2014-07-22 21:34 UTC, Jens K. Loewe
mozilla: maintainer-approval-
Details | Diff
Patch to 2.0.0 (6.13 KB, patch)
2014-07-23 22:45 UTC, Jens K. Loewe
no flags Details | Diff
(update) (6.42 KB, patch)
2014-07-24 09:17 UTC, Jens K. Loewe
no flags Details | Diff
(update) (7.00 KB, patch)
2014-07-24 13:20 UTC, Jens K. Loewe
no flags Details | Diff
Proposed Unix.cmake patch (1.57 KB, patch)
2014-08-10 16:24 UTC, Raphael Kubo da Costa
no flags Details | Diff
hm.. (7.15 KB, patch)
2014-08-18 19:02 UTC, Jens K. Loewe
no flags Details | Diff
Patch to update nomacs to 2.2.0 (9.21 KB, patch)
2014-12-05 12:51 UTC, Rodrigo Osorio
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jens K. Loewe 2014-07-22 21:33:19 UTC
A new version of nomacs has been released, obviously making the CMakeLists patch (or parts of it) redundant. Update attached.
Comment 1 Jens K. Loewe 2014-07-22 21:34:01 UTC
Created attachment 144893 [details]
Patch to 2.0.0
Comment 2 Raphael Kubo da Costa freebsd_committer 2014-07-22 21:52:05 UTC
The update failed to build here at the configuration stage:

-- checking for module 'opencv>=2.1.0'
--   package 'opencv>=2.1.0' not found
CMake Error at cmake/Unix.cmake:47 (find_package):
  By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "OpenCV", but
  CMake did not find one.

  Could not find a package configuration file provided by "OpenCV" (requested
  version 2.1.0) with any of the following names:

    OpenCVConfig.cmake
    opencv-config.cmake

  Add the installation prefix of "OpenCV" to CMAKE_PREFIX_PATH or set
  "OpenCV_DIR" to a directory containing one of the above files.  If "OpenCV"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:49 (include)


-- Configuring incomplete, errors occurred!
Comment 3 Jens K. Loewe 2014-07-23 22:45:32 UTC
Thanks. So much about my "obviously..." statement.
Comment 4 Jens K. Loewe 2014-07-23 22:45:50 UTC
Created attachment 144922 [details]
Patch to 2.0.0
Comment 5 Raphael Kubo da Costa freebsd_committer 2014-07-24 09:00:16 UTC
-- Found OpenCVCore: /usr/local/lib/libopencv_core.so;/usr/local/lib/libopencv_imgproc.so  
CMake Error at cmake/Unix.cmake:55 (message):
  OpenCV is mandotory when enabling RAW.  You have to enable ENABLE_OPENCV
Call Stack (most recent call first):
  CMakeLists.txt:49 (include)


-- Configuring incomplete, errors occurred!
See also "/wrkdirs/usr/ports/graphics/nomacs/work/nomacs-2.0.0/CMakeFiles/CMakeOutput.log".
*** Error code 1
Comment 6 Jens K. Loewe 2014-07-24 09:17:42 UTC
Created attachment 144934 [details]
(update)
Comment 7 Raphael Kubo da Costa freebsd_committer 2014-07-24 09:32:51 UTC
Erm, are you even testing your patch before submitting it? :-)

===>  Performing in-source build
/bin/mkdir -p /wrkdirs/usr/ports/graphics/nomacs/work/nomacs-2.0.0
Parse error in command line argument: -DENABLE_OPENCV
Should be: VAR:type=value
CMake Error: No cmake script provided.
CMake Error: Problem processing arguments. Aborting.

Please try your update in redports (or locally with Poudriere), otherwise we risk being in this cycle of me remotely trying your patch forever.
Comment 8 Jens K. Loewe 2014-07-24 10:02:59 UTC
I do, but I sometimes don't just check all options. Redports is building what I'd assume to be a "working patch"...
(Forgot about Redports actually existing, I had an account there. Time to reenable it.)
Comment 9 Jens K. Loewe 2014-07-24 13:20:04 UTC
Created attachment 144941 [details]
(update)
Comment 10 Jens K. Loewe 2014-07-24 13:20:27 UTC
redports doesn't seem to use libraries where applicable, does it? At least it spits C++ errors (not finding LibRaw) although it seems to include it.

I'm officially stupid now.
Comment 11 Raphael Kubo da Costa freebsd_committer 2014-08-10 16:24:37 UTC
Created attachment 145612 [details]
Proposed Unix.cmake patch

OK, I finally had some time to look at this. The LibRaw problems come from the way you've patched cmake/Unix.cmake -- you've changed the add_definitions() call and now CMake passes -DENABLE_OPENCV instead of -DWITH_OPENCV to the compiler, but the rest of the code still checks for WITH_OPENCV. This means you're making the build system enable OpenCV support while the code is built with it disabled.

This attachment contains a less intrusive patch to Unix.cmake that fixes the build issues. Now you have to fix the port's plist, but that should be easy.

Last but not least, it looks like the most recent version of Nomacs is now 2.0.2, you might want to upgrade to that one instead.
Comment 12 Jens K. Loewe 2014-08-10 17:28:59 UTC
> OK, I finally had some time to look at this. The LibRaw problems come from
> the way you've patched cmake/Unix.cmake -- you've changed the
> add_definitions() call and now CMake passes -DENABLE_OPENCV instead of
> -DWITH_OPENCV to the compiler, but the rest of the code still checks for
> WITH_OPENCV. This means you're making the build system enable OpenCV support
> while the code is built with it disabled.

Oops! :-/ Sorry.

> Now you have to fix the port's plist, but that should be easy.

In fact, currently some of the dependencies fail to build for me, so I actually can't make a new plist right now:

qt-everywhere-opensource-src-4.8.6/src/xmlpatterns leads to:
> c++: error: unable to execute command: Killed
> c++: error: clang frontend command failed due to signal (use -v to see invocation)

Hm.

> Last but not least, it looks like the most recent version of Nomacs is now
> 2.0.2, you might want to upgrade to that one instead.

Yes, thank you.
Comment 13 Jens K. Loewe 2014-08-18 19:02:44 UTC
Created attachment 145999 [details]
hm..
Comment 14 Jens K. Loewe 2014-08-18 19:02:54 UTC
Well, it still fails to find exiv2 now. I'm lost. :/
Comment 15 John Marino freebsd_committer 2014-08-19 12:58:25 UTC
this isn't patch ready apparently, even now.  Moving to "in-discussion" while it's getting fixed.
Comment 16 Rodrigo Osorio freebsd_committer 2014-12-02 12:43:51 UTC
cherry picking
Comment 17 Rodrigo Osorio freebsd_committer 2014-12-05 12:51:57 UTC
Created attachment 150223 [details]
Patch to update nomacs to 2.2.0
Comment 18 Rodrigo Osorio freebsd_committer 2014-12-05 12:59:14 UTC
Hi all,

I submit a patch to update nomacs to 2.2.0 (the latest version).
I did a quick test of the built package with success ( just show few pictures, activate panels, ...)

Remarks : 
 - I didn't found a jpeg support neither in the makefile or the code

Please test it and give me a feedback asap

BTW, I need maintainer approval to commit a final patch.

http://www.bebik.net/poudriere/2014-12-05_09h37m33s/logs/nomacs-2.2.0.log
Comment 19 Jens K. Loewe 2014-12-05 21:32:10 UTC
(In reply to Rodrigo Osorio from comment #18)

> BTW, I need maintainer approval to commit a final patch.

While I'm in the process of writing my thesis (sorry - completely out of business unless it's done), I'm happy to see anyone contributing to finally making things work here. :-)

Regards.
Comment 20 commit-hook freebsd_committer 2014-12-08 12:48:45 UTC
A commit references this bug:

Author: rodrigo
Date: Mon Dec  8 12:48:22 UTC 2014
New revision: 374261
URL: https://svnweb.freebsd.org/changeset/ports/374261

Log:
  Upgrade to release 2.2.0

  PR:		ports/192046
  Submitted by:	rodrigo

Changes:
  head/graphics/nomacs/Makefile
  head/graphics/nomacs/distinfo
  head/graphics/nomacs/files/patch-CMakeLists.txt
  head/graphics/nomacs/files/patch-cmake_Unix.cmake
  head/graphics/nomacs/files/patch-cmake_UnixBuildTarget.cmake
  head/graphics/nomacs/pkg-plist
Comment 21 Rodrigo Osorio freebsd_committer 2014-12-08 12:49:41 UTC
committed, thanks
Comment 22 Antoine Brodin freebsd_committer 2014-12-08 18:05:54 UTC
Re-open,  this fails to build on 10.1 and head
Comment 23 commit-hook freebsd_committer 2014-12-08 23:06:49 UTC
A commit references this bug:

Author: rakuco
Date: Mon Dec  8 23:05:57 UTC 2014
New revision: 374340
URL: https://svnweb.freebsd.org/changeset/ports/374340

Log:
  Fix problems introduced in r374261.

  * Fix the plist.
  * Add patch to properly look for and link against pthreads, required by the
    bundled webp copy used by the port (this fixes the build on FreeBSD >=
    10). Ideally, we should just use webp from ports instead.

  PR:		192046

Changes:
  head/graphics/nomacs/Makefile
  head/graphics/nomacs/files/patch-cmake_Unix.cmake
  head/graphics/nomacs/files/patch-cmake_UnixBuildTarget.cmake
  head/graphics/nomacs/pkg-plist
Comment 24 Raphael Kubo da Costa freebsd_committer 2014-12-08 23:07:31 UTC
My commit should fix the build problems, and also the plist. Rodrigo, did you run `make check-plist' before committing? Those plist errors were quite easy to spot...
Comment 25 Rodrigo Osorio freebsd_committer 2014-12-08 23:28:17 UTC
I did a poudriere build in 10.0-RELEASE 

http://www.bebik.net/poudriere/latest/logs/nomacs-2.2.0.log
Comment 26 Rodrigo Osorio freebsd_committer 2014-12-08 23:33:17 UTC
In fact I did a full test, build, package, install and run,
see some pics without issue in a 10-RELEASE.

You can make the changes if you think you have a fix but be careful
doing changes if you didn't run the app you build. 


regards
Comment 27 Rodrigo Osorio freebsd_committer 2014-12-09 14:49:01 UTC
looks good to me, thanks
Comment 28 Raphael Kubo da Costa freebsd_committer 2014-12-11 23:10:14 UTC
(In reply to Rodrigo Osorio from comment #25)
> I did a poudriere build in 10.0-RELEASE 
> 
> http://www.bebik.net/poudriere/latest/logs/nomacs-2.2.0.log

When the log was available, it did not include the stage-qa and check-plist stages. Did you run either 'poudriere bulk -t' or 'poudriere testport'?