Git Managing Ports

FreeBSD 13.4

I've been using Git to update the ports tree via a Cron job for quite some time now which has worked nicely until the last 3 days.

2 days ago I had to rebuild the ports tree following this topic ...


after make index reported this error ...

Code:
make_index: Circular dependency loop found: glib-2.82.4_1,2 depends upon itself.

It ran fine for 1 day after rebuilding the ports but now the same error has occurred again.

Any help appreciated.
 
The building of the INDEX file fails from time to time. You don't actually need it, but it'll make processing versions much quicker.
 
Update your ports tree, then try again. It's often caused by updates to individual ports breaking INDEX. It could also be caused by enabling certain conflicting OPTIONS, which then creates an unintended circular dependency, portA depends on portB, and portB depends on portA.
 
It seems to be this causing the problem ...


but how do I specify the -Dintrospection=disabled when installing Glib20
 
I've no practical experience with this but, by the looks of it selecting the bootstrap flavor (instead of the default) does disable "Dintrospection", glib20/Makefile (local file: /usr/ports/devel/glib20/Makefile):
Code:
.if ${FLAVOR:U} == bootstrap
MESON_ARGS+=	-Dintrospection=disabled -Ddocumentation=false -Dman-pages=disabled
OPTIONS_DEFINE=
PREFIX=		${LOCALBASE}/glib-bootstrap
PLIST_SUB+=	PORTDOCS='@comment ' NLS='@comment ' MANPAGES='@comment '
.else
BINARY_ALIAS+=	g-ir-scanner=${LOCALBASE}/gobject-introspection-bootstrap/bin/g-ir-scanner
MESON_ARGS+=	-Dintrospection=enabled
.endif

.if ${FLAVOR:U} == default
post-extract:
	${CP} -r ${LOCALBASE}/gobject-introspection-bootstrap/libdata/pkgconfig ${PKGCONFIG_LINKDIR}
	${CP} ${LOCALBASE}/glib-bootstrap/libdata/pkgconfig/* ${PKGCONFIG_LINKDIR}
.endif
 
I think I'm barking up the wrong tree here. I've removed the contents of /usr/ports/ and then ran git clone https://git.freebsd.org/ports.git /usr/ports. Once it completes I then ran cd /usr/ports && make index.

It's after it tries to create the INDEX it fails with
Code:
make_index: Circular dependency loop found: glib-2.82.4_1,2 depends upon itself.

leaving me with an unusable INDEX file.
 
I tested building the INDEX on a test machine, and it only complained about not finding perl at the end. Didn't have an issue with circular dependencies. Which made me wonder, what's in /etc/make.conf?

Code:
root@fbsd-test:/usr/ports # make index
Generating INDEX-14 - please wait..--- describe.accessibility ---
--- describe.arabic ---
--- describe.archivers ---
--- describe.astro ---
--- describe.audio ---
--- describe.benchmarks ---
--- describe.biology ---
--- describe.cad ---
--- describe.chinese ---
--- describe.comms ---
--- describe.converters ---
--- describe.databases ---
--- describe.deskutils ---
--- describe.devel ---
--- describe.dns ---
--- describe.editors ---
--- describe.emulators ---
--- describe.finance ---
--- describe.french ---
--- describe.filesystems ---
--- describe.ftp ---
--- describe.games ---
--- describe.german ---
--- describe.graphics ---
--- describe.hebrew ---
--- describe.hungarian ---
--- describe.irc ---
--- describe.japanese ---
--- describe.java ---
--- describe.korean ---
--- describe.lang ---
--- describe.mail ---
--- describe.math ---
--- describe.misc ---
--- describe.multimedia ---
--- describe.net ---
--- describe.net-im ---
--- describe.net-mgmt ---
--- describe.net-p2p ---
--- describe.news ---
--- describe.polish ---
--- describe.ports-mgmt ---
--- describe.portuguese ---
--- describe.print ---
--- describe.russian ---
--- describe.science ---
--- describe.security ---
--- describe.shells ---
--- describe.sysutils ---
--- describe.textproc ---
--- describe.ukrainian ---
--- describe.vietnamese ---
--- describe.www ---
--- describe.x11 ---
--- describe.x11-clocks ---
--- describe.x11-drivers ---
--- describe.x11-fm ---
--- describe.x11-fonts ---
--- describe.x11-servers ---
--- describe.x11-themes ---
--- describe.x11-toolkits ---
--- describe.x11-wm ---
/bin/sh: perl: not found
 Done.root@fbsd-test:/usr/ports #
 
etc/make.conf

Code:
SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
SENDMAIL_LDADD=/usr/local/lib/libsasl2.so

# SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
# SENDMAIL_LDFLAGS=-L/usr/local/lib
# SENDMAIL_LDADD=-lsasl2
 
Hmm, those should have no impact on anything in the ports tree. The only other obvious difference appears to be 13.4 vs. 14.2 (my test machine is 14.2-RELEASE). You can just skip building INDEX, as I said before, nothing actually needs that file to exist. It's only useful to speed up a pkg version -vI for example. It's been quite a while since I last built one.
 
Hello, same problem.

root@sa:/usr/ports # make index
Generating INDEX-13 - please wait..--- describe.accessibility ---
--- describe.arabic ---
--- describe.archivers ---
--- describe.astro ---
--- describe.audio ---
--- describe.benchmarks ---
--- describe.biology ---
--- describe.cad ---
--- describe.chinese ---
--- describe.comms ---
--- describe.converters ---
--- describe.databases ---
--- describe.deskutils ---
--- describe.devel ---
--- describe.dns ---
--- describe.editors ---
--- describe.emulators ---
--- describe.finance ---
--- describe.french ---
--- describe.filesystems ---
--- describe.ftp ---
--- describe.games ---
--- describe.german ---
--- describe.graphics ---
--- describe.hebrew ---
--- describe.hungarian ---
--- describe.irc ---
--- describe.japanese ---
--- describe.java ---
--- describe.korean ---
--- describe.lang ---
--- describe.mail ---
--- describe.math ---
--- describe.misc ---
--- describe.multimedia ---
--- describe.net ---
--- describe.net-im ---
--- describe.net-mgmt ---
--- describe.net-p2p ---
--- describe.news ---
--- describe.polish ---
--- describe.ports-mgmt ---
--- describe.portuguese ---
--- describe.print ---
--- describe.russian ---
--- describe.science ---
--- describe.security ---
--- describe.shells ---
--- describe.sysutils ---
--- describe.textproc ---
--- describe.ukrainian ---
--- describe.vietnamese ---
--- describe.www ---
--- describe.x11 ---
--- describe.x11-clocks ---
--- describe.x11-drivers ---
--- describe.x11-fm ---
--- describe.x11-fonts ---
--- describe.x11-servers ---
--- describe.x11-themes ---
--- describe.x11-toolkits ---
--- describe.x11-wm ---
make_index: Circular dependency loop found: glib-2.82.4_1,2 depends upon itself.

Done.root@sa:/usr/ports #
my system make.conf
CPUTYPE?=nocona
MAKE_JOBS_NUMBER=6
NO_GAMES=true
NO_INET6=true
NO_BLUETOOTH=true
NO_SHAREDOCS=true
OPTIONS_UNSET=DOCS X11 IPV6 BLUETOOTH GAMES SMB CUPS EXAMPLES
My version system FreeBSD 13.4-RELEASE-p4 amd64.

I do it this way.
root@sa:/usr/ports # make fetchindex
/usr/bin/env fetch -am -o /usr/ports/INDEX-13.xz https://download.freebsd.org/ports/index/INDEX-13.xz
/usr/ports/INDEX-13.xz 1864 kB 1173 kBps 02s
root@sa:/usr/ports # pkg version -v | grep glib
glib-2.82.4_1,2 = up-to-date with index
glib-bootstrap-2.82.4_1,2 = up-to-date with index
How to fix?
I updated the ports.
 
Command make fetchindex downloads an INDEX-NN file. Command make index will re-create file INDEX-NN based on the contents of your ports tree and /etc/make.conf, see man ports for details. The error may be gone after make fetchindex and if that isn't the case you may want to download a fresh copy of the ports tree.
 
I make fetchindex
Command make fetchindex downloads an INDEX-NN file. Command make index will re-create file INDEX-NN based on the contents of your ports tree and /etc/make.conf, see man ports for details. The error may be gone after make fetchindex and if that isn't the case you may want to download a fresh copy of the ports tree.
I did make fetchindex and updated the software on the server.
After that I decided to try to form a local index make index again, the error (make_index: Circular dependency loop found: glib-2.82.4_1,2 depends upon itself.) still appeared.
 
I'm going a bit off topic.
Before RELEASE-14.1 went EOL, I didn't download the index because version control (via pkg version -l '<') always gave me out of date kernel driver ports (drm-kmod, virtualbox-ose-additions), while generating index locally never get out of date that ports. Now I continue to generate the index file locally (without errors), so I don't know if this behavior still persists.

About the thread topic, I had this error once while generating the index, but that was many years ago, when most of the time I didn't know what I was doing in FreeBSD.
 
Code:
     The database of available packages and versions to compare against the
     installed packages may be chosen by specifying one of -P, -R or -I or by
     setting VERSION_SOURCE in pkg.conf(5).  If not specified then the ports
     index file will be used if it exists (-I).  Otherwise, should a ports
     tree exist that will be used to compare versions (-P).  Failing either of
     those two choices, the repository catalogue will be used (-R).
pkg-version(8)
 
Well I've no idea why but all is well this morning after the 8th attempt of running these ...

Emptied /usr/ports/ and then git clone https://git.freebsd.org/ports.git /usr/ports. Once it completes I then ran cd /usr/ports && make index
 
First: OMG.. I feel kinda fuzzy to be refenced like that in the OP.. it was also reason for me to keep out of this because.. stuff.

Second: I agree with SirDice above and ... this doesn't help you but running it on 14.2 has no issues.

BUT.. you mentioned 13.5. I so happen to have such a setup which I 'abuse' for testing binary packages and, well, just mess around. I'm going to give this a try as well (not too soon though, Sunday evening, not 100% clear minded, gf in tow... soon!).
 
Back
Top