Bug 226661 - lang/smlnj: Use current SIGFPE signal codes
Summary: lang/smlnj: Use current SIGFPE signal codes
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks: 226579
  Show dependency treegraph
 
Reported: 2018-03-16 18:51 UTC by John Baldwin
Modified: 2018-03-19 17:36 UTC (History)
1 user (show)

See Also:
joemann: maintainer-feedback+


Attachments
sigfpe.patch (1.40 KB, text/plain)
2018-03-16 18:51 UTC, John Baldwin
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description John Baldwin freebsd_committer freebsd_triage 2018-03-16 18:51:49 UTC
Created attachment 191557 [details]
sigfpe.patch

I have a pending patch for src/ that removes deprecated signal code values (first deprecated in 1999).  FreeBSD adopted standard siginfo codes consistent with POSIX starting in 7.0 release.  The src change can be found here:

https://reviews.freebsd.org/D14637

During an exa-run, smlnj failed to build as it is still using the older constants.  The attached patch changes it to use the modern constants instead.  Both old and new constants have the same value, so this should not be a runtime change.
Comment 1 Johannes 5 2018-03-17 20:32:00 UTC
(In reply to John Baldwin from comment #0)
> sigfpe.patch
> I have a pending patch for src/ that removes deprecated signal code
> values (first deprecated in 1999). [...]
> The src change can be found here:
> https://reviews.freebsd.org/D14637

Thank you for noticing and fixing this issue with lang/smlnj.

> FreeBSD adopted standard siginfo codes consistent with POSIX starting
> in 7.0 release. [...]
> The attached patch changes it to use the modern
> constants instead. Both old and new constants have the same value, so
> this should not be a runtime change.

Then I can't see a reason, why this port should block the cleanup of
src any further. (The FPE_*_TRAP macros should be removed upstream as
well. Hopefully, I'll remember to report this after an update of the
port to 110.82. There's a patch for this update [1], but it's not tested
on i386, hence not yet submitted:-(

> During an exa-run, smlnj failed to build as it is still using the
> older constants. [...]

I assume, that your sigfpe.patch makes the port compile on -CURRENT,
right? I briefly checked it on 11.1-STABLE amd64, and it continues to
compile and work, as expected.

So I suggest that you commit your patch to lang/smlnj and unblock
226579. If there's anything else I should do, please let me know.

Thanx!
Johannes

[1] <ftp://offshore.free.de/pub/patch/smlnj.patch.20180105>
Comment 2 John Baldwin freebsd_committer freebsd_triage 2018-03-19 16:56:39 UTC
Thanks, you are correct that this is only needed for current once my src/ patch is committed.  I just wanted your review / approval before committing to your port.  If you could upstream the patch that is even better, thanks!
Comment 3 commit-hook freebsd_committer freebsd_triage 2018-03-19 17:33:52 UTC
A commit references this bug:

Author: jhb
Date: Mon Mar 19 17:33:04 UTC 2018
New revision: 465024
URL: https://svnweb.freebsd.org/changeset/ports/465024

Log:
  Use current signal code constants for SIGFPE rather than deprecated ones.

  PR:		226661
  Reviewed by:	joemann@beefree.free.de (maintainer)
  Approved by:	brooks

Changes:
  head/lang/smlnj/files/do-patch-base_runtime_mach-dep_signal-sysdep.h