Page MenuHomeFreeBSD

[NEW PORT] devel/universal-ctags: Fork of Exuberant Ctags to generate index/tag files
ClosedPublic

Authored by ultima on Aug 6 2017, 3:29 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 19, 12:30 PM
Unknown Object (File)
Thu, Apr 11, 12:34 AM
Unknown Object (File)
Feb 18 2024, 7:03 AM
Unknown Object (File)
Feb 14 2024, 12:44 PM
Unknown Object (File)
Feb 2 2024, 3:52 PM
Unknown Object (File)
Jan 15 2024, 4:33 PM
Unknown Object (File)
Jan 7 2024, 8:18 PM
Unknown Object (File)
Dec 21 2023, 4:50 AM
Subscribers

Details

Summary

universal-ctags has the objective of continuing the development from what
existed in the Sourceforge area. Github exuberant-ctags repository was
started by Reza Jelveh and was later moved to the universal-ctags organization.

The goal of the project is preparing and maintaining common/unified space
where people interested in making ctags better can work together.

WWW: https://ctags.io/

PR\: 220952
Submitted by\: <dereks@lifeofadishwasher.com> (maintainer)
Reviewed by\: lifanov (mentor), matthew (mentor), koobs
Approved by\: lifanov (mentor), matthew (mentor)
Differential Revision\: https://reviews.freebsd.org/DXXXXX

Test Plan

portlint:
looks fine.

poudriere:
103i386
103amd64
110i386
110amd64
12i386
12amd64

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

devel/universal-ctags/Makefile
27–37 ↗(On Diff #31637)

This looks like you are using some auto-magic detection for auto-activating the features. This is something that we try very hard to not do. I'm sure there are --with-xml or --enable-json configure flags that you can use.

Added the double negative option helper

Fix my incorrect diff upload

devel/universal-ctags/Makefile
27–37 ↗(On Diff #31637)

I'm not sure if there are, I'll do some checking in a bit.

Added option triggers, also added more options with the same defaults

The non-default ASPELL option that I added seems to fail to build because it cant find apell. Should I remove this option or keep it because its a valid option of the port?

The non-default ASPELL option that I added seems to fail to build because it cant find apell. Should I remove this option or keep it because its a valid option of the port?

I'm not sure I get what you are saying, according to configure.ac there is a --enable/disable-aspell available. Or are you talking about something else ?

In D11893#247245, @mat wrote:

The non-default ASPELL option that I added seems to fail to build because it cant find apell. Should I remove this option or keep it because its a valid option of the port?

I'm not sure I get what you are saying, according to configure.ac there is a --enable/disable-aspell available. Or are you talking about something else ?

Yeah, I forgot to provide a link to the error. 110amd64

Basically when the ASPELL option is enabled, cmake can't seem to find ASPELL so the build fails. My question is if I should leave this option in even though it fails, it is non default option.

In D11893#247245, @mat wrote:

The non-default ASPELL option that I added seems to fail to build because it cant find apell. Should I remove this option or keep it because its a valid option of the port?

I'm not sure I get what you are saying, according to configure.ac there is a --enable/disable-aspell available. Or are you talking about something else ?

Yeah, I forgot to provide a link to the error. 110amd64

Basically when the ASPELL option is enabled, cmake can't seem to find ASPELL so the build fails. My question is if I should leave this option in even though it fails, it is non default option.

Looking at config.log when the ASPELL option is enabled, it seems our aspell does not install a .pc file. Adding this fixes the issue:

--- devel/universal-ctags/Makefile
+++ devel/universal-ctags/Makefile
@@ -24,6 +24,8 @@ OPTIONS_DEFAULT=              ICONV JSON LIBXML2 MANPAGES YAML
 JSON_DESC=                     JSON output support

 ASPELL_CONFIGURE_ENABLE=       aspell
+# textproc/aspell does not install a aspell.pc file, so add this here:
+ASPELL_CONFIGURE_ENV=          ASPELL_LIBS="-L${LOCALBASE}/lib -laspell" ASPELL_CFLAGS="-I${LOCALBASE}/include"
 ASPELL_LIB_DEPENDS=            libaspell.so:textproc/aspell

 DEBUG_CONFIGURE_ENABLE=                debugging
devel/universal-ctags/Makefile
5 ↗(On Diff #31740)

As this is an artificial version based on the commit in GH_TAGNAME, it should be:

PORTVERSION=   g20170718

So that if upstream does a release one day, PORTEPOCH is not needed.

Added suggestions, retested and everything builds properly now

In D11893#247339, @mat wrote:
In D11893#247245, @mat wrote:

The non-default ASPELL option that I added seems to fail to build because it cant find apell. Should I remove this option or keep it because its a valid option of the port?

I'm not sure I get what you are saying, according to configure.ac there is a --enable/disable-aspell available. Or are you talking about something else ?

Yeah, I forgot to provide a link to the error. 110amd64

Basically when the ASPELL option is enabled, cmake can't seem to find ASPELL so the build fails. My question is if I should leave this option in even though it fails, it is non default option.

Looking at config.log when the ASPELL option is enabled, it seems our aspell does not install a .pc file. Adding this fixes the issue:

--- devel/universal-ctags/Makefile
+++ devel/universal-ctags/Makefile
@@ -24,6 +24,8 @@ OPTIONS_DEFAULT=              ICONV JSON LIBXML2 MANPAGES YAML
 JSON_DESC=                     JSON output support

 ASPELL_CONFIGURE_ENABLE=       aspell
+# textproc/aspell does not install a aspell.pc file, so add this here:
+ASPELL_CONFIGURE_ENV=          ASPELL_LIBS="-L${LOCALBASE}/lib -laspell" ASPELL_CFLAGS="-I${LOCALBASE}/include"
 ASPELL_LIB_DEPENDS=            libaspell.so:textproc/aspell

 DEBUG_CONFIGURE_ENABLE=                debugging

Thanks, that did fix the error. Will remember to check this next time.

matthew requested changes to this revision.Aug 8 2017, 10:16 PM

Problems with the distinfo file? Looks like it needs updating after setting PORTVERSION

=======================<phase: fetch          >============================
===>  License GPLv2 accepted by the user
===>   universal-ctags-g20170718 depends on file: /usr/local/sbin/pkg - found
=> universal-ctags-ctags-g20170718-5567535e_GH0.tar.gz is not in /usr/ports/devel/universal-ctags/distinfo.
=> Either /usr/ports/devel/universal-ctags/distinfo is out of date, or
=> universal-ctags-ctags-g20170718-5567535e_GH0.tar.gz is spelled incorrectly.
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/universal-ctags
build of devel/universal-ctags | universal-ctags-g20170718 ended at Tue Aug  8 23:08:38 BST 2017
build time: 00:00:01
!!! build failure encountered !!!
This revision now requires changes to proceed.Aug 8 2017, 10:16 PM
ultima edited edge metadata.
  • Updated distfile

Thanks for catching that.

In D11893#247339, @mat wrote:
In D11893#247245, @mat wrote:

The non-default ASPELL option that I added seems to fail to build because it cant find apell. Should I remove this option or keep it because its a valid option of the port?

I'm not sure I get what you are saying, according to configure.ac there is a --enable/disable-aspell available. Or are you talking about something else ?

Yeah, I forgot to provide a link to the error. 110amd64

Basically when the ASPELL option is enabled, cmake can't seem to find ASPELL so the build fails. My question is if I should leave this option in even though it fails, it is non default option.

Looking at config.log when the ASPELL option is enabled, it seems our aspell does not install a .pc file. Adding this fixes the issue:

--- devel/universal-ctags/Makefile
+++ devel/universal-ctags/Makefile
@@ -24,6 +24,8 @@ OPTIONS_DEFAULT=              ICONV JSON LIBXML2 MANPAGES YAML
 JSON_DESC=                     JSON output support

 ASPELL_CONFIGURE_ENABLE=       aspell
+# textproc/aspell does not install a aspell.pc file, so add this here:
+ASPELL_CONFIGURE_ENV=          ASPELL_LIBS="-L${LOCALBASE}/lib -laspell" ASPELL_CFLAGS="-I${LOCALBASE}/include"
 ASPELL_LIB_DEPENDS=            libaspell.so:textproc/aspell

 DEBUG_CONFIGURE_ENABLE=                debugging

Thanks, that did fix the error. Will remember to check this next time.

Another question crossed my mind about this, would an alternative way being add localbase to ASPELL_USES be an acceptable solution for missing .pc? I know it wouldn't add the "-laspell", but not sure how important adding that is.

This revision is now accepted and ready to land.Aug 9 2017, 10:05 AM
This revision was automatically updated to reflect the committed changes.

Another question crossed my mind about this, would an alternative way being add localbase to ASPELL_USES be an acceptable solution for missing .pc? I know it wouldn't add the "-laspell", but not sure how important adding that is.

Nevermind, ran a test and answered my own question. It is similar but the -laspell seems crucial. I wish I knew what command was being used for configure so I can look at the manpage.

Another question crossed my mind about this, would an alternative way being add localbase to ASPELL_USES be an acceptable solution for missing .pc? I know it wouldn't add the "-laspell", but not sure how important adding that is.

Nevermind, ran a test and answered my own question. It is similar but the -laspell seems crucial. I wish I knew what command was being used for configure so I can look at the manpage.

In an ideal world, using USES=localbase is not needed. But, the configure script needs both ASPELL_LIBS and ASPELL_CFLAGS to be non empty in order to decide that aspell is here and working.