Build errors in Python packages with compiled extensions

2020-12-22 Thread Christian Ullrich

Hello,

I have started to notice poudriere builds of Python ports with compiled 
extensions failing:

[00:00:11] /usr/bin/strip 
/wrkdirs/usr/ports/devel/py-cffi/work-py38/stage/usr/local/lib/python3.8/site-packages/_cffi_backend.so
[00:00:11] strip: open 
/wrkdirs/usr/ports/devel/py-cffi/work-py38/stage/usr/local/lib/python3.8/site-packages/_cffi_backend.so
 failed: No such file or directory

The reason is that setuptools puts a version tag (aka cache tag) into the .so's 
name; in this case it is actually _cffi_backend.cpython-38.so . The strip 
command, on the other hand, is in the port Makefile's post-install target and 
has the file name as above, without the version.

This tag is to be available in Uses/python.mk as $PYMAGICTAG, e.g. "cpython-38".

I'm not sure whether I'm not doing something wrong that causes the tag to end 
up in the .so file names. The last update to devel/py-setuptools was a while 
ago (to 44.0 in January 2020), and someone would probably have noticed since. 
On the other hand, this _is_ poudriere, so the build environments are pretty 
well isolated.

Anyone know what is going on?


--
Christian
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Last flavorless revision?

2017-12-02 Thread Christian Ullrich

* Steve Kargl wrote:


On Fri, Dec 01, 2017 at 01:42:27PM -0700, Adam Weinberger wrote:

On 1 Dec, 2017, at 13:07, Steve Kargl  wrote:

ports/UPDATING does not seem to include an entry noting
the last subversion revision prior to the flipping on
flavors.  Is revision 455205 the penultimate revision?


https://svnweb.freebsd.org



?


He means, "I could just write 'No, 455205 is the first one with FLAVORS 
support in it, if you don't count the brief interlude from 450663 until 
450939 when introducing it exposed the lack of communication between 
ports collection and ports tools maintainers for the first time', but 
since that would be entirely too helpful, instead I'll just post a link 
to the SVN web interface which boasts all the charm and usability of the 
late 1990s and let you figure it out for yourself."


HTH,

--
Christian

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: poudriere, python ports, and flavors oh my?

2017-12-02 Thread Christian Ullrich

* Henrik Hudson wrote:


So, I must be missing something. I have a poudriere jail specific
make.conf like this:



#Python
DEFAULT_VERSIONS+= python=3.6 python2=2.7 python3=3.6


Same here, and this happens:

# cat /usr/local/etc/poudriere.d/py3-make.conf
DEFAULT_VERSIONS+=  python=3.6
# poudriere version
3.2.2
# poudriere testport -j stable -z py3 databases/py-psycopg2
[...]
[00:00:02] Building 2 packages using 2 builders
[00:00:02] Starting/Cloning builders
[00:00:02] Hit CTRL+t at any time to see build progress and stats
[00:00:02] [01] [00:00:00] Building lang/python27 | python27-2.7.14_1
[00:00:02] [01] [00:00:00] Finished lang/python27 | python27-2.7.14_1: 
Ignored: Blacklisted
[00:00:02] [01] [00:00:00] Skipping devel/py-setuptools@py27 | 
py27-setuptools-36.5.0: Dependent port lang/python27 | python27-2.7.14_1 
ignored

[00:00:02] Stopping 2 builders
[00:00:03] Error: Depends failed to build
[00:00:03] Failed ports:
[00:00:03] Skipped ports: devel/py-setuptools@py27
[00:00:03] Cleaning up
[00:00:03] Unmounting file systems

lang/python27 is blacklisted for set py3 to prevent exactly this kind of 
disaster. If I remove it from the blacklist, still _only_ py27-flavored 
packages are built.


This looks like the introduction of flavors disconnected the Python 
ports from DEFAULT_VERSIONS.


What is the purpose behind this, and how do I get poudriere to build 
py36-flavored packages now _without_ adding "@py36" to each and every 
Python port in the list I feed to bulk?


There is the claim in UPDATING that "People using Poudriere 3.2+ [...] 
do not have to do anything." Unless, it appears, they use any Python 
version other than 2.7, since adding flavor suffixes to port lists is 
not "not anything".


My current setup is to have two sets, one with default 2.7, the other 
with default 3.6, resulting in two separate pkg repos, and when I need a 
Python 3.6 package, I take it from that repo. It may be that this method 
is now obsolete, but I would have expected this to be mentioned somewhere.


--
Christian
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: MariaDB 10.1 includes sqlite3??

2017-02-13 Thread Christian Ullrich

* scratch65...@att.net wrote:


Does anyone have a clue as to why sqlite3 is now being installed
with MariaDB 10.1?  The mariadb site doesn't mention it, as far


Because you have set your ports options in such a way that the MariaDB 
port depends on something (that depends on something)* that in turn 
depends on SQLite. databases/mariadb101-server itself does not have, nor 
can it be configured to have, a dependency on databases/sqlite3.


Installing this one port brings in 41 more as dependencies (on my system 
as of right now), so there are plenty of chances for something to use 
SQLite.


Also, since your question is not clear on whether you mean SQLite is 
installed as part of the port or separately, the port does not install 
any files that might indicate the presence of an internal copy of SQLite.


--
Christian

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


poudriere and ports looking for specific files

2017-02-13 Thread Christian Ullrich

Hello,

I have a problem getting some ports to build correctly in a poudriere 
environment, when their Makefile determines dependencies by looking for 
specific files. The following example is from dns/samba-nsupdate:



# Try to find appropriate GSSAPI libs
.if defined(KRB5_HOME) && exists(${KRB5_HOME}/lib/libgssapi_krb5.so)
CONFIGURE_ARGS+=--with-gssapi="${KRB5_HOME}"
.elif defined(HEIMDAL_HOME) && exists(${HEIMDAL_HOME}/lib/libgssapi.so)
CONFIGURE_ARGS+=--with-gssapi="${HEIMDAL_HOME}"
.elif exists(/usr/lib/libkrb5.so) && exists(/usr/bin/krb5-config)
CONFIGURE_ARGS+=--with-gssapi="/usr"
.else
LIB_DEPENDS+=   libkrb5.so:security/heimdal
CONFIGURE_ARGS+=--with-gssapi="${LOCALBASE}"
.endif


I want to build with MIT Kerberos from ports, which is what the first 
.if block is looking for. Since poudriere always presents a pristine 
file system to ports, this check does not find the library, and 
eventually the port falls back to depending on Heimdal instead.


There are quite a few ports that contain logic like this, enabling a 
dependency based on whether it is installed already. They should 
probably be changed to use OPTIONS instead to declare the dependency 
rather than passively guess at it, but for right now, they don't.


Does poudriere not support this at all?

Thanks!

--
Christian
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: ec2-eu-west-1.portsnap.freebsd.org is not up to date

2016-09-05 Thread Christian Ullrich

* Walter Schwarzenfeld wrote:


... and none of them work.


... since early Sunday; six of the seven are working and returning a 
"latest" timestamp of 2016-09-04T05:17:49Z. So no updates for ~35 hours.


The "snapshot" timestamp is just after midnight UTC on Sunday, but that 
is probably just something that happens once per day.


Is cperciva@ still in charge of portsnap? The latest information I can 
find is years old.


--
Christian
___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Why doesn't graphics/gd build with webp?

2016-07-21 Thread Christian Ullrich

Hello all,

the latest update to graphics/gd added a BROKEN flag if webp support is 
enabled, for reasons of "circular dependencies". I've looked through all 
options I can find, but there is no sign of any direct or indirect 
dependency of graphics/webp on graphics/gd.


What's going on?

Thanks,

--
Christian

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Re: Installing multi-version ports with portmaster

2016-02-18 Thread Christian Ullrich

* Walter Schwarzenfeld wrote:

> DEFAULT_VERSIONS=python=2.7 python2=2.7 python3=3.5

Not really, no.

[root@i9b ~]# portmaster -vd databases/py-psycopg2

===>>> Currently installed version: py35-psycopg2-2.6.1_1
===>>> Port directory: /usr/ports/databases/py-psycopg2

[...]

===> Cleaning for py35-psycopg2-2.6.1_1
===>>> Waiting on fetch & checksum for databases/py-psycopg2 <<<===
/!\ WARNING /!\
Your requested default python version 2.7 is different from the
installed default python interpreter version 3.5

... and then it proceeds to reinstall for 3.5. If I give it 
PYTHON_VERSION=python2.7 explicitly, it still _replaces_ the 3.5 port 
with the 2.7 one.


[root@i9b ~]# pkg info -og py\*-psycopg2
py27-psycopg2-2.6.1_1 databases/py-psycopg2
py35-psycopg2-2.6.1_1 databases/py-psycopg2

Can't portmaster deal with shared-origin ports?

--
Christian




___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Installing multi-version ports with portmaster

2016-02-17 Thread Christian Ullrich

Hello,

how can I use portmaster to install multiple versions of a port, such as 
databases/py-psycopg2?


My default Python version is set to 3.5, but I need psycopg2 for both 
versions. When I have py35-psycopg2 installed and do


portmaster -m PYTHON_VERSION=python2.7 databases/py-psycopg2

, it replaces the 3.5 version with the 2.7 one, and vice versa. Running 
"make PYTHON_VERSION=python2.7 install" in the port directory works, but 
isn't there a way to make portmaster keep the other port?


Thanks,

--
Christian

___
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"


Commit request, bug 195081

2014-12-27 Thread Christian Ullrich

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=195081

This bug has had a patch ready and approved by the maintainer for nearly 
three weeks now. Could a committer please take a look at it?


The issue fixed by the patch is fairly annoying and I'd like to have the 
patched version available.


Thank you, and happy new year,

--
Christian

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


RE: Commit request, bug 195081

2014-12-27 Thread Christian Ullrich
* From: Kubilay Kocak [mailto:koobs.free...@gmail.com] On Behalf Of Kubilay

 On 27/12/2014 9:56 PM, Christian Ullrich wrote:

  This bug has had a patch ready and approved by the maintainer for nearly
  three weeks now. Could a committer please take a look at it?

 Hi Christian, can you please attach the patch to the issue please
 (rather than in a comment).

Done. Sorry, I'm not up to speed on Bugzilla etiquette.

-- 
Christian
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org