Bug 240546 - comms/gnuradio: Fails to build: ephem/__init__.py - not found
Summary: comms/gnuradio: Fails to build: ephem/__init__.py - not found
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: Diane Bruce
URL:
Keywords:
Depends on: 240735
Blocks: 240534
  Show dependency treegraph
 
Reported: 2019-09-12 21:53 UTC by Walter Schwarzenfeld
Modified: 2019-12-20 10:19 UTC (History)
4 users (show)

See Also:
koobs: maintainer-feedback+
koobs: merge-quarterly+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Walter Schwarzenfeld freebsd_triage 2019-09-12 21:53:36 UTC
Gnuradio fails to buld with:

===>   gnuradio-3.8.0.0_1 depends on file: /usr/local/lib/python2.7/site-packages/ephem/__init__.py - not found
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/comms/gnuradio
*** Error code 1
Comment 1 Walter Schwarzenfeld freebsd_triage 2019-09-12 21:56:59 UTC
Maybe, it is a FLAVOR problem with pyephem.
Comment 2 Diane Bruce freebsd_committer 2019-09-13 12:06:18 UTC
(In reply to Walter Schwarzenfeld from comment #1)

Agreed. It certainly does not show up in poudriere.
Comment 3 Diane Bruce freebsd_committer 2019-09-17 19:50:04 UTC
I am going to need more from you. What version OS? Does a pkg install gnuradio work for you? Build log? This is not showing up in poudriere...
Comment 4 Walter Schwarzenfeld freebsd_triage 2019-09-18 09:02:01 UTC
Last try was on 11.3.   In the meantime I have upgraded to 12.0 and have not tried again. I tried to build it with the port on 11.3

pkg install gnuradio:
pkg: No packages available to install matching 'gnuradio' have been found in the repositories.#

(The next days I have no time to try it again, maybe next week).
Comment 5 Walter Schwarzenfeld freebsd_triage 2019-09-18 09:11:23 UTC
BUILD_DEPENDS=  ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
                ${PYNUMPY} \
                ${PYTHON_SITELIBDIR}/yaml/__init__.py:devel/py-yaml@${PY_FLAVOR} \
                ${PYTHON_SITELIBDIR}/gi/__init__.py:devel/py-gobject3@${PY_FLAVOR} \
                ${PYTHON_SITELIBDIR}/cairo/__init__.py:graphics/py-cairo@${PY_FLAVOR} \
         ==>       ${PYTHON_SITELIBDIR}/ephem/__init__.py:astro/pyephem@${PY_FLAVOR} \
                ${PYTHON_SITELIBDIR}/mako/__init__.py:textproc/py-mako@${PY_FLAVOR} \
                ${PYTHON_SITELIBDIR}/six.py:devel/py-six@${PY_FLAVOR} \
                ${PYTHON_SITELIBDIR}/click/__init__.py:devel/py-click@${PY_FLAVOR} \
                ${PYTHON_SITELIBDIR}/click_plugins/__init__.py:devel/py-click-plugins

it is this line  in BUILD_DEPENDS

maybe, the problem is python
I have DEFAULT_VERSION+=python3=3.6
Comment 6 Walter Schwarzenfeld freebsd_triage 2019-09-18 09:14:22 UTC
It stops after scanning Makefile and exits before configure. So build.log makes no sense.
Comment 7 Walter Schwarzenfeld freebsd_triage 2019-09-19 20:30:39 UTC
Same result on 12.0:

===>  Staging for py27-pyephem-3.7.7.0,1
===>   py27-pyephem-3.7.7.0,1 depends on package: py27-setuptools>0 - found
===>   py27-pyephem-3.7.7.0,1 depends on file: /usr/local/bin/python2.7 - found
===>   Generating temporary packing list
running install
running build
running install_egg_info
running egg_info
writing requirements to pyephem.egg-info/requires.txt
writing pyephem.egg-info/PKG-INFO
writing top-level names to pyephem.egg-info/top_level.txt
writing dependency_links to pyephem.egg-info/dependency_links.txt
reading manifest file 'pyephem.egg-info/SOURCES.txt'
writing manifest file 'pyephem.egg-info/SOURCES.txt'
Copying pyephem.egg-info to /ram/usr/ports/astro/pyephem/work-py27/stage/usr/local/lib/python2.7/site-packages/pyephem-3.7.7.0-py2.7.egg-info
running install_scripts
writing list of installed files to '/ram/usr/ports/astro/pyephem/work-py27/.PLIST.pymodtmp'
====> Compressing man pages (compress-man)
===>  Installing for py27-pyephem-3.7.7.0,1
===>  Checking if py27-pyephem is already installed
===>   Registering installation for py27-pyephem-3.7.7.0,1 as automatic
Installing py27-pyephem-3.7.7.0,1...
===>   gnuradio-3.8.0.0_1 depends on file: /usr/local/lib/python2.7/site-packages/ephem/__init__.py - not found
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/comms/gnuradio
*** Error code 1
Comment 8 Walter Schwarzenfeld freebsd_triage 2019-09-19 20:40:54 UTC
Added maintainer of pyephem to CC list.
Comment 9 Diane Bruce freebsd_committer 2019-09-21 18:33:37 UTC
(In reply to Walter Schwarzenfeld from comment #8)

see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240735
Comment 10 Yuri Victorovich freebsd_committer 2019-12-01 21:20:04 UTC
astro/pyephem has been discontinued and is merely a stub.
astro/ephem should be created instead.
https://pypi.org/project/ephem/
Comment 11 Kubilay Kocak freebsd_committer freebsd_triage 2019-12-15 08:52:19 UTC
While investigating all dependents of pyephem for bug 240735  to see what module/package they were actually trying to import, and hunting for (py)ephem's use in gnuradio, I couldn't find any references to {py}ephem in the current source source. Further, the only reference to pyephem I found via a github search is the following commit, dated 2008:

https://github.com/gnuradio/gnuradio/commit/13b15589f0b98fbd13fa42c31dcfbe2674dd562c

My guess is that the dependency on pyephem/ephem is spurious, without evidence to the contrary

Nevertheless, this issue will be resolved when the pyephem port is updated to depend on the new py-ephem port, which should land shortly. Follow bug 240735 for those updates

For the gnuradio port, I would highly recommend:

- Going through all the current dependencies and verifying that theyre actually required
- Updating all Python dependencies to use packagename *_DEPENDS format, rather than file based (foo/__init__.py) format.
Comment 12 Kubilay Kocak freebsd_committer freebsd_triage 2019-12-15 08:53:21 UTC
This wont need a port revision bump or merge, since it breaks the build (and not just at runtime, where a portrevision bump would be required)
Comment 13 Diane Bruce freebsd_committer 2019-12-15 22:24:40 UTC
(In reply to Kubilay Kocak from comment #11)

You are right. It must be a zombie dependency from gnuradio 3.7 (I'll have to check). Checking https://www.gnuradio.org/doc/doxygen/build_guide.html I see no mention of ephem. A poudriere run without ephem ran fine. I'll double check then commit.
Comment 14 commit-hook freebsd_committer 2019-12-16 17:22:40 UTC
A commit references this bug:

Author: db
Date: Mon Dec 16 17:22:09 UTC 2019
New revision: 520276
URL: https://svnweb.freebsd.org/changeset/ports/520276

Log:
  - According to @koobs the dependency on pyephem/ephem is spurious hence removed.
  - When gnuradio was first imported into the tree, UHD (Ettus) was pretty much the only
    viable high speed device for it. This is no longer true so default option removed.
  - Noted plist problem with removed UHD corrected.

  PR:		ports/240546
  Reported by:	w.schwarzenfeld@utanet.at
  MFH:		2019Q4

Changes:
  head/comms/gnuradio/Makefile
  head/comms/gnuradio/pkg-plist
Comment 15 commit-hook freebsd_committer 2019-12-17 22:08:08 UTC
A commit references this bug:

Author: db
Date: Tue Dec 17 22:07:29 UTC 2019
New revision: 520354
URL: https://svnweb.freebsd.org/changeset/ports/520354

Log:
  MFH: r520276

  - According to @koobs the dependency on pyephem/ephem is spurious hence removed.
  - When gnuradio was first imported into the tree, UHD (Ettus) was pretty much the only
    viable high speed device for it. This is no longer true so default option removed.
  - Noted plist problem with removed UHD corrected.

  PR:		ports/240546
  Reported by:	w.schwarzenfeld@utanet.at

  Approved by:	portmgr (joneum)

Changes:
_U  branches/2019Q4/
  branches/2019Q4/comms/gnuradio/pkg-plist
Comment 16 Kubilay Kocak freebsd_committer freebsd_triage 2019-12-20 10:18:57 UTC
This is resolved (independently from the dependency removal in ports r520276) as of ports r520494
Comment 17 Kubilay Kocak freebsd_committer freebsd_triage 2019-12-20 10:19:27 UTC
^Triage: Track merge to quarterly (of dependency removal)