Bug 200101 - lang/racket : port builds during staging (this is wrong)
Summary: lang/racket : port builds during staging (this is wrong)
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: Jimmy Olgeni
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-10 14:38 UTC by John Marino
Modified: 2016-07-10 17:52 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Marino freebsd_committer freebsd_triage 2015-05-10 14:38:01 UTC
Jimmi, I've noticed this for, well, years.  You probably know it too.  Racket builds during the "stage" phase.  By definition, the building should be complete before stage starts.  Stage only does installation.

I'm guessing the actual vendor makefile is doing something wrong.  Can it be patched to split the target so building is done in "build" phase and the installation in "stage" phase?

It's not the only port that violates this, but they should all be fixed.  Racket is particularly obvious because it spends 1-2 hours in stage phase.
Comment 1 John Marino freebsd_committer freebsd_triage 2015-05-10 14:39:20 UTC
Oops, this got misassigned.  Fixing assignment.
Comment 2 Jimmy Olgeni freebsd_committer freebsd_triage 2015-05-11 10:42:58 UTC
That's "raco" building its stuff in place - it could easy or tricky, but the worst part is probably just the build times for testing. Let me have a look and see if I can move the raco build into the install stage where it belongs...
Comment 3 John Marino freebsd_committer freebsd_triage 2015-09-10 08:31:58 UTC
Did you get a chance to see if racket can be (easily) made to build during the build phase? (rather than build during the install phase)
Comment 4 Jimmy Olgeni freebsd_committer freebsd_triage 2016-01-31 10:06:35 UTC
(In reply to John Marino from comment #3)

Found a fix! Testing with the 6.3 upgrade.
Comment 5 John Marino freebsd_committer freebsd_triage 2016-01-31 10:09:22 UTC
awesome!
Comment 6 John Marino freebsd_committer freebsd_triage 2016-03-13 11:56:39 UTC
how is the upgrade to 6.3 coming along?
Comment 7 martin 2016-06-25 15:53:36 UTC
Any progress? The port still fails at the QA stage.

The latest release is 6.5 now.
Comment 8 commit-hook freebsd_committer freebsd_triage 2016-07-04 14:06:52 UTC
A commit references this bug:

Author: olgeni
Date: Mon Jul  4 14:06:49 UTC 2016
New revision: 418028
URL: https://svnweb.freebsd.org/changeset/ports/418028

Log:
  Update lang/racket and lang/racket-minimal to version 6.5.

  - Use prebuilt Racket packages to prevent building during the
    staging phase (PR 200101).

  - patch-share_pkgs_gui-lib_mred_private_wx_gtk_queue.rkt

    Prevent inclusion of libunique, which brings in GTK2, which
    then conflicts with the default GTK3 toolkit.

  - patch-src_racket_src_future.c

    Include commit f16f54a from github/racket/racket, which fixes
    semaphore handling when futures are disabled (this broke the
    IDE).

  - Add options for FUTURES and JIT (i386/amd64 only).

  - Remove unnecessary patches.

  ~ Credits ~

  Juan Francisco Cantero Hurtado (OpenBSD maintainer) - kindly
  brought me up to speed on Racket's status and prebuilt packages,
  so I could remove lots of cruft from the port.

  Sam Tobin-Hochstadt - tracked down the futures issue.

  PR:		200101
  Differential Revision:	https://reviews.freebsd.org/D6984
  Differential Revision:	https://reviews.freebsd.org/D6985
  Reviewed by:	Martin Sugioarto

Changes:
  head/lang/racket/Makefile
  head/lang/racket/distinfo
  head/lang/racket/files/patch-racket_include_scheme.h
  head/lang/racket/files/patch-racket_src_bool.c
  head/lang/racket/files/patch-racket_src_number.c
  head/lang/racket/files/patch-share_pkgs_gui-lib_mred_private_wx_gtk_queue.rkt
  head/lang/racket/files/patch-src_racket_src_future.c
  head/lang/racket/pkg-plist
  head/lang/racket-minimal/Makefile
  head/lang/racket-minimal/distinfo
  head/lang/racket-minimal/files/patch-racket_include_scheme.h
  head/lang/racket-minimal/files/patch-racket_src_bool.c
  head/lang/racket-minimal/files/patch-racket_src_number.c
  head/lang/racket-minimal/files/patch-src_racket_src_future.c
  head/lang/racket-minimal/pkg-plist
Comment 9 Jimmy Olgeni freebsd_committer freebsd_triage 2016-07-04 14:09:30 UTC
Everything's fixed \o/

(please let me know if anything is needed on the DragonFly side)
Comment 10 John Marino freebsd_committer freebsd_triage 2016-07-10 17:52:35 UTC
Everything builds fine on DragonFly.  As a major bonus, the build time dropped from 2-3 hours to 8 minutes!