Bug 247743 - lang/swi-pl: Update to 8.2.1 + reenable freebsd 32 bit
Summary: lang/swi-pl: Update to 8.2.1 + reenable freebsd 32 bit
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Wen Heping
URL: https://www.swi-prolog.org/ChangeLog?...
Keywords:
Depends on:
Blocks:
 
Reported: 2020-07-03 16:26 UTC by Nikolaj Thygesen
Modified: 2020-08-26 04:04 UTC (History)
3 users (show)

See Also:


Attachments
Diff (2.89 KB, patch)
2020-07-03 16:26 UTC, Nikolaj Thygesen
no flags Details | Diff
New diff incl. update to 8.2.1 (8.71 KB, patch)
2020-07-06 15:19 UTC, Nikolaj Thygesen
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Nikolaj Thygesen 2020-07-03 16:26:24 UTC
Created attachment 216177 [details]
Diff

This patch should reenable freebsd 32 bit.
Originally there were issues with __atomic_fetch_add, but I can no longer find this referenced in the code!?
Comment 1 Li-Wen Hsu freebsd_committer 2020-07-03 18:04:18 UTC
I hit this error when building 12.1-i386 in poudriere: https://gist.github.com/43b4a3fe496e04f35325159742fa7080
Comment 2 Nikolaj Thygesen 2020-07-06 15:19:04 UTC
Created attachment 216254 [details]
New diff incl. update to 8.2.1

I'll try again to enable i386 by using the old __sync calls when required until we might get support for libatomic under clang. If this doesn't work I have only one more shot left, and after that I'll revert to (optionally) using gcc for i386, since gcc supposedly has support for libatomic.

At the same time, the newer 8.2.1 was released, which is also part of this diff.
Comment 3 Wen Heping freebsd_committer 2020-08-02 23:18:05 UTC
(In reply to Nikolaj Thygesen from comment #2)
With USE_GCC, the build still failed with:
 undefined reference to `__atomic_compare_exchange_8'

wen
Comment 4 Wen Heping freebsd_committer 2020-08-02 23:20:15 UTC
BTW.  I would like repocopy swi-pl --> swi-pl-devel and update it to 8.3.4, would 
you maintain it ?

wen
Comment 5 dewayne 2020-08-26 04:04:01 UTC
(In reply to Nikolaj Thygesen from comment #0)
I've just rebuilt swi-pl on both amd64 (using clang and also with gcc9) and i386 using just clang.  I upgraded by simply

# sed -i '' -e "s|8.2.0|8.2.1|g" Makefile pkg-plist
# make clean package deinstall install 

I checked the expected files at 
https://svnweb.freebsd.org/ports?view=revision&revision=540903
and everything is as it should be, (ie only 
patch-packages_clib_cmake_FindLibUUID.cmake in files/, which is interesting as I haven't been able to get uuid(X) to work but its a low priority.)


So I now have:
# swipl
Welcome to SWI-Prolog (64 bits, version 8.2.1)
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
Please run ?- license. for legal details.

For online help and background, visit https://www.swi-prolog.org
For built-in help, use ?- help(Topic). or ?- apropos(Word).

?- shell('uname -prsKU').
FreeBSD 12.1-STABLE amd64 1201518 1201518

-----
# swipl
Welcome to SWI-Prolog (32 bits, version 8.2.1)
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
Please run ?- license. for legal details.

For online help and background, visit https://www.swi-prolog.org
For built-in help, use ?- help(Topic). or ?- apropos(Word).

?- shell('uname -prsKU').
FreeBSD 12.1-STABLE i386 1201518 1201518

-----

Please note that I've modified my Makefile to provide a very minimal non-X and non-gpl codebase.
 
My ongoing thanks to Nikolaj for your maintainership (and upgrade from 7.6.4) :)