Bug 222570

Summary: databases/grass6: fails to build on amd64 with lang/gcc7 or later
Product: Ports & Packages Reporter: Jan Beich <jbeich>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed FIXED    
Severity: Affects Only Me CC: emaste, gerald, lbartoletti
Priority: --- Flags: gerald: maintainer-feedback+
Version: Latest   
Hardware: amd64   
OS: Any   
Bug Depends on:    
Bug Blocks: 222542    

Description Jan Beich freebsd_committer freebsd_triage 2017-09-24 19:08:23 UTC
$ echo "DEFAULT_VERSIONS += gcc=7" >>${__MAKE_CONF:-/etc/make.conf}
$ make
[...]
gmake[6]: Entering directory 'lib/python/ctypes'
GISRC=dist.amd64/demolocation/.grassrc64 GISBASE=dist.amd64-portbld-freebsd11.1 PATH="dist.amd64/bin:$PATH" PYTHONPATH="dist.amd64/etc/python:$PYTHONPATH" LD_LIBRARY_PATH="dist.amd64/bin:dist.amd64/lib::" LC_ALL=C ./ctypesgen.py --cpp "gcc7 -E -I/usr/include -DLIBICONV_PLUG -I/usr/local/include -I/usr/local/include  -I/usr/local/include     -DPACKAGE=\""grasslibs"\" -DPACKAGE=\""grasslibs"\"  -Idist.amd64/include" -lgrass_datetime.6.4.6   dist.amd64/include/grass/datetime.h dist.amd64/include/grass/P_datetime.h -o date.py
Status: Preprocessing /tmp/tmp8xU5au.h
Status: gcc7 -E -I/usr/include -DLIBICONV_PLUG -I/usr/local/include -I/usr/local/include  -I/usr/local/include     -DPACKAGE="grasslibs" -DPACKAGE="grasslibs"  -Idist.amd64/include -U __GNUC__ -D __GNUCLIKE_BUILTIN_STDARG -dD "-Dinline=" "-D__inline__=" "-D__extension__=" "-D_Bool=uint8_t" "-D__const=const" "-D__asm__(x)=" "-D__asm(x)=" "-DCTYPESGEN=1" /tmp/tmp8xU5au.h
Traceback (most recent call last):
  File "./ctypesgen.py", line 134, in <module>
    descriptions=ctypesgencore.parser.parse(options.headers,options)
  File "lib/python/ctypes/ctypesgencore/parser/__init__.py", line 21, in parse
    parser.parse()
  File "lib/python/ctypes/ctypesgencore/parser/datacollectingparser.py", line 69, in parse
    ctypesparser.CtypesParser.parse(self,fname,None)
  File "lib/python/ctypes/ctypesgencore/parser/cparser.py", line 113, in parse
    self.preprocessor_parser.parse(filename)
  File "lib/python/ctypes/ctypesgencore/parser/preprocessor.py", line 201, in parse
    token = self.lexer.token()
  File "lib/python/ctypes/ctypesgencore/parser/preprocessor.py", line 51, in token
    result = lex.Lexer.token(self)
  File "lib/python/ctypes/ctypesgencore/parser/lex.py", line 297, in token
    newtok = func(tok)
  File "lib/python/ctypes/ctypesgencore/parser/pplexer.py", line 226, in t_ANY_int
    g1 = str(long(g1,8))
ValueError: invalid literal for long() with base r8: '08420217248550443400745280086994171'

build log: http://sprunge.us/VUKU
Comment 1 Jan Beich freebsd_committer freebsd_triage 2017-09-24 19:23:31 UTC
FWIW, grass7 builds fine with gcc7: http://sprunge.us/RFdf
Comment 3 Loïc Bartoletti freebsd_committer freebsd_triage 2017-10-26 04:54:49 UTC
Hello,

My 2 cents, I suspect a problem with the patch applying this "-D __GNUCLIKE_BUILTIN_STDARG".

Anyway, Grass6 have also gets and is at end of life.

I'm looking at patching it or deleting ports in favor of grass7.

Regards.
Comment 4 Gerald Pfeifer freebsd_committer freebsd_triage 2017-11-18 13:02:37 UTC
(In reply to lbartoletti from comment #3)
> Anyway, Grass6 have also gets and is at end of life.
>
> I'm looking at patching it or deleting ports in favor of grass7.

lbartoletti@, do you have an update for us?  This has been open for
nearly two months and is blocking the update to GCC 7.

Based on your comment I'll initiate deprecation, but you can revert
that if you'd like to fix instead.
Comment 5 Loïc Bartoletti freebsd_committer freebsd_triage 2017-11-18 18:49:17 UTC
Hi,

Since grass6 will no longer be supported, for the profit of grass7, I think it's easier to remove grass6 from the ports and move databases/grass7 to databases/grass.
Comment 6 commit-hook freebsd_committer freebsd_triage 2017-11-18 22:53:03 UTC
A commit references this bug:

Author: gerald
Date: Sat Nov 18 22:52:25 UTC 2017
New revision: 454466
URL: https://svnweb.freebsd.org/changeset/ports/454466

Log:
  Remove databases/grass6 in favor of the existing databases/grass7.

  PR:		222570
  Approved by:	lbartoletti@tuxfamily.org (maintainer)

Changes:
  head/MOVED
  head/databases/Makefile
  head/databases/grass6/
Comment 7 Gerald Pfeifer freebsd_committer freebsd_triage 2017-11-18 22:56:06 UTC
Thank you!  I made this change, removing grass6 in favor of grass7
and adding an entry in MOVED.

This allows us to close this report.

I'd recommend to keep grass7 as is instead of renaming (again), but
if you prefer otherwise can make this change. Just drop me a note.