New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Official OpenBSD support: last steps #3313

Open
Blaisorblade opened this Issue Aug 4, 2017 · 12 comments

Comments

Projects
None yet
5 participants
@Blaisorblade
Collaborator

Blaisorblade commented Aug 4, 2017

After #3184 is merged, there might be something left for OpenBSD support. Since navigating #416 is by now impossible, I've chosen to close it. Let me paste here this TODO list from @borsboom (#416 (comment)):

Steps remaining for official OpenBSD support:

  • Have stack setup use bzcat/xzcat to uncompress GHC bindist instead of relying on tar to do it (see also #2283)
  • Await a Stackage LTS snapshot that uses GHC 8.0.x and update the Stack build process (and integration tests) to use it
  • Ensure integration tests pass
  • Integrate into release process (I've already added a starter Vagrantfile in etc/vagrant/openbsd-5.9-amd64/Vagrantfile)
  • Perhaps remove old not-quite-working OpenBSD bindists from stack-setup-2.yaml, to avoid confusion.

EDIT:
Status: install should at least work for GHC 8.2.1 on OpenBSD 6.1, now that fpco/stackage-content#25 and #3184 have been merged.

@Blaisorblade

This comment has been minimized.

Show comment
Hide comment
@Blaisorblade

Blaisorblade Aug 5, 2017

Collaborator

Also: just noticed that @bonds tested a bindist for GHC 8.0.2 on OpenBSD 6.1, from
https://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-openbsd61-openbsd.tar.xz.

I'm not adding that to the current stack-setup PR to avoid delaying it further—and also because ping-pong on that would take days. I'll take care of that in the next days.

Also relevant: fpco/stackage-content#28 on GHC 8.2.1 for OpenBSD 6.0.

Collaborator

Blaisorblade commented Aug 5, 2017

Also: just noticed that @bonds tested a bindist for GHC 8.0.2 on OpenBSD 6.1, from
https://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-openbsd61-openbsd.tar.xz.

I'm not adding that to the current stack-setup PR to avoid delaying it further—and also because ping-pong on that would take days. I'll take care of that in the next days.

Also relevant: fpco/stackage-content#28 on GHC 8.2.1 for OpenBSD 6.0.

@bonds

This comment has been minimized.

Show comment
Hide comment
@bonds

bonds Aug 7, 2017

Installing 8.2.1 works, installing 8.0.2 does not:

~ ❯❯❯ stack setup 8.0.2                                                     Mon 2017-08-07 09:14:50 -0700
No information found for ghc-8.0.2.
Supported versions for OS key 'openbsd64-maj6-min1': GhcVersion 8.2.1
~  [1] ❯❯❯ stack setup 8.2.1                                                Mon 2017-08-07 09:14:56 -0700
Preparing to install GHC (maj6-min1) to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
Installed GHC.
stack will use a sandboxed GHC it installed
For more information on paths, see 'stack path' and 'stack exec env'
To use this GHC and packages outside of a project, consider using:
stack ghc, stack ghci, stack runghc, or stack exec
~ ❯❯❯ stack --version                                                       Mon 2017-08-07 10:14:52 -0700
Version 1.5.1, Git revision 1f5d34723996d7ce1cd2f35b5950d43d8cbdf555 (dirty) (5053 commits) x86_64 hpack-0.17.1

bonds commented Aug 7, 2017

Installing 8.2.1 works, installing 8.0.2 does not:

~ ❯❯❯ stack setup 8.0.2                                                     Mon 2017-08-07 09:14:50 -0700
No information found for ghc-8.0.2.
Supported versions for OS key 'openbsd64-maj6-min1': GhcVersion 8.2.1
~  [1] ❯❯❯ stack setup 8.2.1                                                Mon 2017-08-07 09:14:56 -0700
Preparing to install GHC (maj6-min1) to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
Installed GHC.
stack will use a sandboxed GHC it installed
For more information on paths, see 'stack path' and 'stack exec env'
To use this GHC and packages outside of a project, consider using:
stack ghc, stack ghci, stack runghc, or stack exec
~ ❯❯❯ stack --version                                                       Mon 2017-08-07 10:14:52 -0700
Version 1.5.1, Git revision 1f5d34723996d7ce1cd2f35b5950d43d8cbdf555 (dirty) (5053 commits) x86_64 hpack-0.17.1

@Blaisorblade

This comment has been minimized.

Show comment
Hide comment
@Blaisorblade

Blaisorblade Aug 7, 2017

Collaborator

~ ❯❯❯ stack setup 8.0.2 Mon 2017-08-07 09:14:50 -0700
No information found for ghc-8.0.2.
Supported versions for OS key 'openbsd64-maj6-min1': GhcVersion 8.2.1

Wow, the "Supported versions" bit is not at all my doing, pretty cool!
I haven't uploaded 8.0.2 yet, sorry if it wasn't clear (life intervening).

Collaborator

Blaisorblade commented Aug 7, 2017

~ ❯❯❯ stack setup 8.0.2 Mon 2017-08-07 09:14:50 -0700
No information found for ghc-8.0.2.
Supported versions for OS key 'openbsd64-maj6-min1': GhcVersion 8.2.1

Wow, the "Supported versions" bit is not at all my doing, pretty cool!
I haven't uploaded 8.0.2 yet, sorry if it wasn't clear (life intervening).

@Blaisorblade

This comment has been minimized.

Show comment
Hide comment
@Blaisorblade

Blaisorblade Aug 11, 2017

Collaborator

Wait I'm confused — https://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-openbsd61-openbsd.tar.xz gives 404 and there's no bindist for that combo in that folder.

From #2822 (comment) I assumed such a bindist existed and I just needed to upload it?

Collaborator

Blaisorblade commented Aug 11, 2017

Wait I'm confused — https://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-openbsd61-openbsd.tar.xz gives 404 and there's no bindist for that combo in that folder.

From #2822 (comment) I assumed such a bindist existed and I just needed to upload it?

@bonds

This comment has been minimized.

Show comment
Hide comment
@bonds

bonds Aug 31, 2017

Hmm, yah that URL gives a 404. I'll try to see if the bindist that's in that folder works on OpenBSD 6.1, maybe I copy-pasted the wrong URL, but my memory is that I had 8.0.2 working.

bonds commented Aug 31, 2017

Hmm, yah that URL gives a 404. I'll try to see if the bindist that's in that folder works on OpenBSD 6.1, maybe I copy-pasted the wrong URL, but my memory is that I had 8.0.2 working.

@bonds

This comment has been minimized.

Show comment
Hide comment
@bonds

bonds Aug 31, 2017

Ok, so the default bindist for 8.0.2 for openbsd seems to run on OpenBSD 6.1:

~  [1] ❯❯❯ ulimit -d 2000000; nice stack setup 8.0.2                        Thu 2017-08-31 14:26:06 -0700
Preparing to install GHC to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
Installed GHC.
stack will use a locally installed GHC
For more information on paths, see 'stack path' and 'stack exec env'
To use this GHC and packages outside of a project, consider using:
stack ghc, stack ghci, stack runghc, or stack exec
~ ❯❯❯ stack --resolver ghc-8.0.2 ghc -- --version                           Thu 2017-08-31 16:01:24 -0700
Run from outside a project, using implicit global project config
Using resolver: ghc-8.0.2 specified on command line
The Glorious Glasgow Haskell Compilation System, version 8.0.2
~ ❯❯❯ stack --version                                                       Thu 2017-08-31 16:01:38 -0700
Version 1.1.2 x86_64 hpack-0.14.1

So, I think that means the fixed URL for the bindist in that comment is this:
https://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-unknown-openbsd.tar.xz and if you rename that to have the openbsd61 version number in it, it could work with the new version scheme.

bonds commented Aug 31, 2017

Ok, so the default bindist for 8.0.2 for openbsd seems to run on OpenBSD 6.1:

~  [1] ❯❯❯ ulimit -d 2000000; nice stack setup 8.0.2                        Thu 2017-08-31 14:26:06 -0700
Preparing to install GHC to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
Installed GHC.
stack will use a locally installed GHC
For more information on paths, see 'stack path' and 'stack exec env'
To use this GHC and packages outside of a project, consider using:
stack ghc, stack ghci, stack runghc, or stack exec
~ ❯❯❯ stack --resolver ghc-8.0.2 ghc -- --version                           Thu 2017-08-31 16:01:24 -0700
Run from outside a project, using implicit global project config
Using resolver: ghc-8.0.2 specified on command line
The Glorious Glasgow Haskell Compilation System, version 8.0.2
~ ❯❯❯ stack --version                                                       Thu 2017-08-31 16:01:38 -0700
Version 1.1.2 x86_64 hpack-0.14.1

So, I think that means the fixed URL for the bindist in that comment is this:
https://downloads.haskell.org/~ghc/8.0.2/ghc-8.0.2-x86_64-unknown-openbsd.tar.xz and if you rename that to have the openbsd61 version number in it, it could work with the new version scheme.

@bonds

This comment has been minimized.

Show comment
Hide comment
@bonds

bonds Aug 31, 2017

Default bindist for 8.2.1 seems to target OpenBSD 6.0 instead of OpenBSD 6.1:

~ ❯❯❯ ulimit -d 2000000; nice stack setup 8.2.1                             Thu 2017-08-31 16:03:58 -0700
Preparing to install GHC to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
Running /usr/local/bin/gmake install in directory /tmp/stack-setup99428/ghc-8.2.1/ exited with ExitFailure 2

/usr/local/bin/gmake --no-print-directory -f ghc.mk install BINDIST=YES NO_INCLUDE_DEPS=YES
"rm" -f utils/ghc-pkg/dist-install/build/Version.hs
echo "module Version where"                    >> utils/ghc-pkg/dist-install/build/Version.hs
echo "version, targetOS, targetARCH :: String" >> utils/ghc-pkg/dist-install/build/Version.hs
echo "version    = \"8.2.1\""      >> utils/ghc-pkg/dist-install/build/Version.hs
echo "targetOS   = \"openbsd\""        >> utils/ghc-pkg/dist-install/build/Version.hs
echo "targetARCH = \"x86_64\""      >> utils/ghc-pkg/dist-install/build/Version.hs
"rm" -f utils/ghc-pkg/dist/build/Version.hs
echo "module Version where"                    >> utils/ghc-pkg/dist/build/Version.hs
echo "version, targetOS, targetARCH :: String" >> utils/ghc-pkg/dist/build/Version.hs
echo "version    = \"8.2.1\""      >> utils/ghc-pkg/dist/build/Version.hs
echo "targetOS   = \"openbsd\""        >> utils/ghc-pkg/dist/build/Version.hs
echo "targetARCH = \"x86_64\""      >> utils/ghc-pkg/dist/build/Version.hs
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'exeprog="hp2ps"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
cat utils/hp2ps/hp2ps.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                   "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
echo '#!/bin/sh'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
echo 'exec "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1" --interactive "$@"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
chmod +x                                 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci"
ln -s ghci-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/." && /usr/bin/install -c -m 644  includes/./*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/./" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts" && /usr/bin/install -c -m 644  includes/rts/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/prof" && /usr/bin/install -c -m 644  includes/rts/prof/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/prof/" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/storage" && /usr/bin/install -c -m 644  includes/rts/storage/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/storage/" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/stg" && /usr/bin/install -c -m 644  includes/stg/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/stg/" &&  true
/usr/bin/install -c -m 644  includes/ghcautoconf.h includes/ghcplatform.h includes/ghcversion.h includes/dist-derivedconstants/header/DerivedConstants.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'exeprog="haddock"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
cat utils/haddock/haddock.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/" 
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/latex/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/haddock-util.js "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/haskell_icon.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/minus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/plus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/xhaddock.css "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/hslogo-16.png "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/minus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/ocean.css "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/plus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/synopsis.png "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/solarized.css "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/highlight.js "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/latex/haddock.sty "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/latex/"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock"
ln -s haddock-ghc-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'exeprog="hsc2hs"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'HSC2HS_EXTRA="--cflag=-std=gnu99 --cflag=-fno-stack-protector --lflag=-Wl,-z,wxneeded"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
cat utils/hsc2hs/hsc2hs.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
/usr/bin/install -c -m 644  utils/hsc2hs/template-hsc.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'exeprog="ghc-pkg"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
cat utils/ghc-pkg/ghc-pkg.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg"
ln -s ghc-pkg-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'exeprog="hpc"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
cat utils/hpc/hpc.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'exeprog="runghc"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'ghcprog="ghc-8.2.1"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
cat utils/runghc/runghc.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runhaskell"
ln -s runghc "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runhaskell"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc"
ln -s runghc-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'exeprog="ghc-stage2"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'executablename="$exedir/ghc"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
cat ghc/ghc.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc"
ln -s ghc-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/man"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/man/man1"
/usr/bin/install -c -m 644  docs/users_guide/build-man/ghc.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/man/man1"
#  driver/ghc-usage.txt driver/ghci-usage.txt includes/dist-derivedconstants/header/platformConstants settings = libraries to install
#  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1" = directory to install to
#
# The .dll case calls STRIP_CMD explicitly, instead of `install -s`, because
# on Win64, "install -s" calls a strip that doesn't understand 64bit binaries.
# For some reason, this means the DLLs end up non-executable, which means
# executables that use them just segfault.
/usr/bin/install -c -m 755 -d  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"
for i in  driver/ghc-usage.txt driver/ghci-usage.txt includes/dist-derivedconstants/header/platformConstants settings; do case $i in *.a) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"; true  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"/`basename $i` ;; *.dll) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1" ; strip  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"/`basename $i` ;; *.so) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1" ;; *.dylib) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1";; *) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"; esac; done
gcc -E -undef -traditional -P -DINSTALLING -DLIB_DIR='"/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"' -DINCLUDE_DIR='"/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include"' -DFFI_INCLUDE_DIR=/usr/local/include -DFFI_LIB_DIR=/usr/local/lib '-DFFI_LIB=' -x c -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist-ghcconstants/header rts/package.conf.in -o rts/dist/package.conf.install.raw
grep -v '^#pragma GCC' rts/dist/package.conf.install.raw | sed -e 's/""//g' -e 's/:[    ]*,/: /g' >rts/dist/package.conf.install
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"
for i in utils/unlit/dist/build/tmp/unlit utils/hp2ps/dist/build/tmp/hp2ps utils/hp2ps/dist/build/tmp/hp2ps utils/haddock/dist/build/tmp/haddock utils/haddock/dist/build/tmp/haddock utils/hsc2hs/dist-install/build/tmp/hsc2hs utils/hsc2hs/dist-install/build/tmp/hsc2hs utils/ghc-pkg/dist-install/build/tmp/ghc-pkg utils/ghc-pkg/dist-install/build/tmp/ghc-pkg utils/hpc/dist-install/build/tmp/hpc utils/hpc/dist-install/build/tmp/hpc utils/runghc/dist-install/build/tmp/runghc utils/runghc/dist-install/build/tmp/runghc ghc/stage2/build/tmp/ghc-stage2 ghc/stage2/build/tmp/ghc-stage2 iserv/stage2/build/tmp/ghc-iserv iserv/stage2_p/build/tmp/ghc-iserv-prof iserv/stage2_dyn/build/tmp/ghc-iserv-dyn; do \
        /usr/bin/install -c -m 755  $i "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"; \
done
"mv" "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin/ghc-stage2" "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin/ghc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"
"rm" -rf "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/package.conf.d"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/package.conf.d"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"
#  rts/dist/build/libHSrts.a rts/dist/build/libHSrts_p.a rts/dist/build/libHSrts-ghc8.2.1.so rts/dist/build/libHSrts_l.a rts/dist/build/libHSrts_debug.a rts/dist/build/libHSrts_thr.a rts/dist/build/libHSrts_thr_debug.a rts/dist/build/libHSrts_thr_l.a rts/dist/build/libHSrts_thr_p.a rts/dist/build/libHSrts_debug-ghc8.2.1.so rts/dist/build/libHSrts_thr-ghc8.2.1.so rts/dist/build/libHSrts_thr_debug-ghc8.2.1.so rts/dist/build/libHSrts_l-ghc8.2.1.so rts/dist/build/libHSrts_thr_l-ghc8.2.1.so = libraries to install
#  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts" = directory to install to
#
# The .dll case calls STRIP_CMD explicitly, instead of `install -s`, because
# on Win64, "install -s" calls a strip that doesn't understand 64bit binaries.
# For some reason, this means the DLLs end up non-executable, which means
# executables that use them just segfault.
/usr/bin/install -c -m 755 -d  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"
for i in  rts/dist/build/libHSrts.a rts/dist/build/libHSrts_p.a rts/dist/build/libHSrts-ghc8.2.1.so rts/dist/build/libHSrts_l.a rts/dist/build/libHSrts_debug.a rts/dist/build/libHSrts_thr.a rts/dist/build/libHSrts_thr_debug.a rts/dist/build/libHSrts_thr_l.a rts/dist/build/libHSrts_thr_p.a rts/dist/build/libHSrts_debug-ghc8.2.1.so rts/dist/build/libHSrts_thr-ghc8.2.1.so rts/dist/build/libHSrts_thr_debug-ghc8.2.1.so rts/dist/build/libHSrts_l-ghc8.2.1.so rts/dist/build/libHSrts_thr_l-ghc8.2.1.so; do case $i in *.a) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"; true  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"/`basename $i` ;; *.dll) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts" ; strip  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"/`basename $i` ;; *.so) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts" ;; *.dylib) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts";; *) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"; esac; done
"utils/ghc-cabal/dist-install/build/tmp/ghc-cabal-bindist" copy libraries/ghc-prim dist-install "strip" '' '/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1' '/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1' '/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/doc/ghc-8.2.1/html/libraries' 'v p dyn'

ld.so: ghc-cabal: can't load library 'libgmp.so.9.0'
Killed
gmake[1]: *** [ghc.mk:991: install_packages] Error 137
gmake: *** [Makefile:51: install] Error 2

Installing GHC ...⏎                                                                                      
~  [1] ❯❯❯ locate libgmp.so                                                 Thu 2017-08-31 16:08:13 -0700
/usr/local/lib/libgmp.so.10.0
~

So for that one you need a custom stack.yaml to point it at the bindist for 6.1 instead of 6.0, if you're on 6.1.

bonds commented Aug 31, 2017

Default bindist for 8.2.1 seems to target OpenBSD 6.0 instead of OpenBSD 6.1:

~ ❯❯❯ ulimit -d 2000000; nice stack setup 8.2.1                             Thu 2017-08-31 16:03:58 -0700
Preparing to install GHC to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
Running /usr/local/bin/gmake install in directory /tmp/stack-setup99428/ghc-8.2.1/ exited with ExitFailure 2

/usr/local/bin/gmake --no-print-directory -f ghc.mk install BINDIST=YES NO_INCLUDE_DEPS=YES
"rm" -f utils/ghc-pkg/dist-install/build/Version.hs
echo "module Version where"                    >> utils/ghc-pkg/dist-install/build/Version.hs
echo "version, targetOS, targetARCH :: String" >> utils/ghc-pkg/dist-install/build/Version.hs
echo "version    = \"8.2.1\""      >> utils/ghc-pkg/dist-install/build/Version.hs
echo "targetOS   = \"openbsd\""        >> utils/ghc-pkg/dist-install/build/Version.hs
echo "targetARCH = \"x86_64\""      >> utils/ghc-pkg/dist-install/build/Version.hs
"rm" -f utils/ghc-pkg/dist/build/Version.hs
echo "module Version where"                    >> utils/ghc-pkg/dist/build/Version.hs
echo "version, targetOS, targetARCH :: String" >> utils/ghc-pkg/dist/build/Version.hs
echo "version    = \"8.2.1\""      >> utils/ghc-pkg/dist/build/Version.hs
echo "targetOS   = \"openbsd\""        >> utils/ghc-pkg/dist/build/Version.hs
echo "targetARCH = \"x86_64\""      >> utils/ghc-pkg/dist/build/Version.hs
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'exeprog="hp2ps"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
cat utils/hp2ps/hp2ps.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hp2ps"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                   "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
echo '#!/bin/sh'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
echo 'exec "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1" --interactive "$@"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
chmod +x                                 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci-8.2.1"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci"
ln -s ghci-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghci"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/." && /usr/bin/install -c -m 644  includes/./*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/./" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts" && /usr/bin/install -c -m 644  includes/rts/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/prof" && /usr/bin/install -c -m 644  includes/rts/prof/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/prof/" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/storage" && /usr/bin/install -c -m 644  includes/rts/storage/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/rts/storage/" &&   /usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/stg" && /usr/bin/install -c -m 644  includes/stg/*.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/stg/" &&  true
/usr/bin/install -c -m 644  includes/ghcautoconf.h includes/ghcplatform.h includes/ghcversion.h includes/dist-derivedconstants/header/DerivedConstants.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include/"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'exeprog="haddock"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
cat utils/haddock/haddock.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock-ghc-8.2.1"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/" 
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/latex/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/haddock-util.js "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/haskell_icon.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/minus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/plus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Classic.theme/xhaddock.css "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Classic.theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/hslogo-16.png "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/minus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/ocean.css "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/plus.gif "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/Ocean.std-theme/synopsis.png "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/Ocean.std-theme/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/solarized.css "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/html/highlight.js "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/html/"
/usr/bin/install -c -m 644  utils/haddock/haddock-api/resources/latex/haddock.sty "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/latex/"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock"
ln -s haddock-ghc-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/haddock"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'exeprog="hsc2hs"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
echo 'HSC2HS_EXTRA="--cflag=-std=gnu99 --cflag=-fno-stack-protector --lflag=-Wl,-z,wxneeded"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
cat utils/hsc2hs/hsc2hs.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hsc2hs"
/usr/bin/install -c -m 644  utils/hsc2hs/template-hsc.h "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'exeprog="ghc-pkg"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
cat utils/ghc-pkg/ghc-pkg.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg-8.2.1"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg"
ln -s ghc-pkg-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-pkg"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'exeprog="hpc"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
cat utils/hpc/hpc.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/hpc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'exeprog="runghc"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
echo 'ghcprog="ghc-8.2.1"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
cat utils/runghc/runghc.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc-8.2.1"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runhaskell"
ln -s runghc "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runhaskell"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc"
ln -s runghc-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/runghc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"
"rm" -f                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
create () { touch "$1" && chmod 755 "$1" ; } && create                                           "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo '#!/bin/sh'                                       >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'exedir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"'                    >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'exeprog="ghc-stage2"'                          >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'executablename="$exedir/$exeprog"'           >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'datadir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share"'                             >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'bindir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'topdir="/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"'                               >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
echo 'executablename="$exedir/ghc"' >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
cat ghc/ghc.wrapper                         >> "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
chmod +x                                         "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc-8.2.1"
"rm" -f "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc"
ln -s ghc-8.2.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/bin/ghc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/man"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/man/man1"
/usr/bin/install -c -m 644  docs/users_guide/build-man/ghc.1 "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/man/man1"
#  driver/ghc-usage.txt driver/ghci-usage.txt includes/dist-derivedconstants/header/platformConstants settings = libraries to install
#  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1" = directory to install to
#
# The .dll case calls STRIP_CMD explicitly, instead of `install -s`, because
# on Win64, "install -s" calls a strip that doesn't understand 64bit binaries.
# For some reason, this means the DLLs end up non-executable, which means
# executables that use them just segfault.
/usr/bin/install -c -m 755 -d  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"
for i in  driver/ghc-usage.txt driver/ghci-usage.txt includes/dist-derivedconstants/header/platformConstants settings; do case $i in *.a) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"; true  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"/`basename $i` ;; *.dll) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1" ; strip  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"/`basename $i` ;; *.so) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1" ;; *.dylib) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1";; *) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"; esac; done
gcc -E -undef -traditional -P -DINSTALLING -DLIB_DIR='"/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"' -DINCLUDE_DIR='"/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/include"' -DFFI_INCLUDE_DIR=/usr/local/include -DFFI_LIB_DIR=/usr/local/lib '-DFFI_LIB=' -x c -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist-ghcconstants/header rts/package.conf.in -o rts/dist/package.conf.install.raw
grep -v '^#pragma GCC' rts/dist/package.conf.install.raw | sed -e 's/""//g' -e 's/:[    ]*,/: /g' >rts/dist/package.conf.install
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"
for i in utils/unlit/dist/build/tmp/unlit utils/hp2ps/dist/build/tmp/hp2ps utils/hp2ps/dist/build/tmp/hp2ps utils/haddock/dist/build/tmp/haddock utils/haddock/dist/build/tmp/haddock utils/hsc2hs/dist-install/build/tmp/hsc2hs utils/hsc2hs/dist-install/build/tmp/hsc2hs utils/ghc-pkg/dist-install/build/tmp/ghc-pkg utils/ghc-pkg/dist-install/build/tmp/ghc-pkg utils/hpc/dist-install/build/tmp/hpc utils/hpc/dist-install/build/tmp/hpc utils/runghc/dist-install/build/tmp/runghc utils/runghc/dist-install/build/tmp/runghc ghc/stage2/build/tmp/ghc-stage2 ghc/stage2/build/tmp/ghc-stage2 iserv/stage2/build/tmp/ghc-iserv iserv/stage2_p/build/tmp/ghc-iserv-prof iserv/stage2_dyn/build/tmp/ghc-iserv-dyn; do \
        /usr/bin/install -c -m 755  $i "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin"; \
done
"mv" "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin/ghc-stage2" "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/bin/ghc"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1"
"rm" -rf "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/package.conf.d"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/package.conf.d"
/usr/bin/install -c -m 755 -d "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"
#  rts/dist/build/libHSrts.a rts/dist/build/libHSrts_p.a rts/dist/build/libHSrts-ghc8.2.1.so rts/dist/build/libHSrts_l.a rts/dist/build/libHSrts_debug.a rts/dist/build/libHSrts_thr.a rts/dist/build/libHSrts_thr_debug.a rts/dist/build/libHSrts_thr_l.a rts/dist/build/libHSrts_thr_p.a rts/dist/build/libHSrts_debug-ghc8.2.1.so rts/dist/build/libHSrts_thr-ghc8.2.1.so rts/dist/build/libHSrts_thr_debug-ghc8.2.1.so rts/dist/build/libHSrts_l-ghc8.2.1.so rts/dist/build/libHSrts_thr_l-ghc8.2.1.so = libraries to install
#  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts" = directory to install to
#
# The .dll case calls STRIP_CMD explicitly, instead of `install -s`, because
# on Win64, "install -s" calls a strip that doesn't understand 64bit binaries.
# For some reason, this means the DLLs end up non-executable, which means
# executables that use them just segfault.
/usr/bin/install -c -m 755 -d  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"
for i in  rts/dist/build/libHSrts.a rts/dist/build/libHSrts_p.a rts/dist/build/libHSrts-ghc8.2.1.so rts/dist/build/libHSrts_l.a rts/dist/build/libHSrts_debug.a rts/dist/build/libHSrts_thr.a rts/dist/build/libHSrts_thr_debug.a rts/dist/build/libHSrts_thr_l.a rts/dist/build/libHSrts_thr_p.a rts/dist/build/libHSrts_debug-ghc8.2.1.so rts/dist/build/libHSrts_thr-ghc8.2.1.so rts/dist/build/libHSrts_thr_debug-ghc8.2.1.so rts/dist/build/libHSrts_l-ghc8.2.1.so rts/dist/build/libHSrts_thr_l-ghc8.2.1.so; do case $i in *.a) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"; true  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"/`basename $i` ;; *.dll) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts" ; strip  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"/`basename $i` ;; *.so) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts" ;; *.dylib) /usr/bin/install -c -m 755  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts";; *) /usr/bin/install -c -m 644  $i  "/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1/rts"; esac; done
"utils/ghc-cabal/dist-install/build/tmp/ghc-cabal-bindist" copy libraries/ghc-prim dist-install "strip" '' '/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1' '/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/lib/ghc-8.2.1' '/home/scott/.stack/programs/x86_64-openbsd/ghc-8.2.1/share/doc/ghc-8.2.1/html/libraries' 'v p dyn'

ld.so: ghc-cabal: can't load library 'libgmp.so.9.0'
Killed
gmake[1]: *** [ghc.mk:991: install_packages] Error 137
gmake: *** [Makefile:51: install] Error 2

Installing GHC ...⏎                                                                                      
~  [1] ❯❯❯ locate libgmp.so                                                 Thu 2017-08-31 16:08:13 -0700
/usr/local/lib/libgmp.so.10.0
~

So for that one you need a custom stack.yaml to point it at the bindist for 6.1 instead of 6.0, if you're on 6.1.

@bonds

This comment has been minimized.

Show comment
Hide comment
@bonds

bonds Oct 3, 2017

Does that help @Blaisorblade ?

bonds commented Oct 3, 2017

Does that help @Blaisorblade ?

@Blaisorblade

This comment has been minimized.

Show comment
Hide comment
@Blaisorblade

Blaisorblade Oct 3, 2017

Collaborator

@bonds Thanks for the ping, sorry for my absence (been busy). I'll try tomorrow—I need the time to reparse the comments. EDIT: below here's a potential list of action items (plus comments), do they make sense?

TODOs:

On your later comment:

Default bindist for 8.2.1 seems to target OpenBSD 6.0 instead of OpenBSD 6.1:

Yes, that's visible in the default URL.
https://github.com/fpco/stackage-content/blob/422a85942bdb65eb7cc766585c0a0da1d4f7174f/stack/stack-setup-2.yaml#L627-L628

[...]
So for that one you need a custom stack.yaml to point it at the bindist for 6.1 instead of 6.0, if you're on 6.1.

The interesting details are missing from that log, but can I guess that's a stack without the version autodetection PR, since it runs on 6.1 and does not use the version for 6.1 (which is specified since fpco/stackage-content#25)? So for this I need to change nothing in stack, right? While you can update stack maybe (not sure that PR is in a release or just in master, can check tomorrow)?

  • The default bindist for GHC 8.2.1 is for OpenBSD 6.0 in theory, but it doesn't actually work in practice (recheck fpco/stackage-content#28, status of linked bugs appears unchanged). So maybe replace it by the version for OpenBSD 6.1 as default, for those stack versions still without autodetection?
Collaborator

Blaisorblade commented Oct 3, 2017

@bonds Thanks for the ping, sorry for my absence (been busy). I'll try tomorrow—I need the time to reparse the comments. EDIT: below here's a potential list of action items (plus comments), do they make sense?

TODOs:

On your later comment:

Default bindist for 8.2.1 seems to target OpenBSD 6.0 instead of OpenBSD 6.1:

Yes, that's visible in the default URL.
https://github.com/fpco/stackage-content/blob/422a85942bdb65eb7cc766585c0a0da1d4f7174f/stack/stack-setup-2.yaml#L627-L628

[...]
So for that one you need a custom stack.yaml to point it at the bindist for 6.1 instead of 6.0, if you're on 6.1.

The interesting details are missing from that log, but can I guess that's a stack without the version autodetection PR, since it runs on 6.1 and does not use the version for 6.1 (which is specified since fpco/stackage-content#25)? So for this I need to change nothing in stack, right? While you can update stack maybe (not sure that PR is in a release or just in master, can check tomorrow)?

  • The default bindist for GHC 8.2.1 is for OpenBSD 6.0 in theory, but it doesn't actually work in practice (recheck fpco/stackage-content#28, status of linked bugs appears unchanged). So maybe replace it by the version for OpenBSD 6.1 as default, for those stack versions still without autodetection?
@bonds

This comment has been minimized.

Show comment
Hide comment
@bonds

bonds Oct 4, 2017

The interesting details are missing from that log, but can I guess that's a stack without the version autodetection PR, since it runs on 6.1 and does not use the version for 6.1 (which is specified since fpco/stackage-content#25)?

correct, I was using "Version 1.1.2 x86_64 hpack-0.14.1" for the tests on 2017-08-31

So for this I need to change nothing in stack, right?

correct

While you can update stack maybe (not sure that PR is in a release or just in master, can check tomorrow)? The default bindist for GHC 8.2.1 is for OpenBSD 6.0 in theory, but it doesn't actually work in practice (recheck fpco/stackage-content#28, status of linked bugs appears unchanged). So maybe replace it by the version for OpenBSD 6.1 as default, for those stack versions still without autodetection?

I think so. I believe most OpenBSD users upgrade to the lastest release, so if you update the default bindist to match the latest OpenBSD release, for folks using an older version of Stack, you'll probably help the most people. Eventually the newer version of Stack will eliminate the need to update the default bindist. OTOH, you could just be lazy and NOT update the default bindist, and let people know they need to upgrade Stack if they want 'easy mode' or alter stack.yaml to point to the right bindist if they want to use the old stack versions (maybe a wiki page entry somewhere?).

bonds commented Oct 4, 2017

The interesting details are missing from that log, but can I guess that's a stack without the version autodetection PR, since it runs on 6.1 and does not use the version for 6.1 (which is specified since fpco/stackage-content#25)?

correct, I was using "Version 1.1.2 x86_64 hpack-0.14.1" for the tests on 2017-08-31

So for this I need to change nothing in stack, right?

correct

While you can update stack maybe (not sure that PR is in a release or just in master, can check tomorrow)? The default bindist for GHC 8.2.1 is for OpenBSD 6.0 in theory, but it doesn't actually work in practice (recheck fpco/stackage-content#28, status of linked bugs appears unchanged). So maybe replace it by the version for OpenBSD 6.1 as default, for those stack versions still without autodetection?

I think so. I believe most OpenBSD users upgrade to the lastest release, so if you update the default bindist to match the latest OpenBSD release, for folks using an older version of Stack, you'll probably help the most people. Eventually the newer version of Stack will eliminate the need to update the default bindist. OTOH, you could just be lazy and NOT update the default bindist, and let people know they need to upgrade Stack if they want 'easy mode' or alter stack.yaml to point to the right bindist if they want to use the old stack versions (maybe a wiki page entry somewhere?).

@romanzolotarev

This comment has been minimized.

Show comment
Hide comment
@romanzolotarev

romanzolotarev Oct 7, 2017

BTW, OpenBSD 6.2 release is coming soon: https://www.openbsd.org/62.html says October 15, 2017.

romanzolotarev commented Oct 7, 2017

BTW, OpenBSD 6.2 release is coming soon: https://www.openbsd.org/62.html says October 15, 2017.

@borsboom

This comment has been minimized.

Show comment
Hide comment
@borsboom

borsboom Feb 4, 2018

Contributor

It appears that the GHC release team has stopped building OpenBSD bindists. There are none for GHC 8.2.2.

Contributor

borsboom commented Feb 4, 2018

It appears that the GHC release team has stopped building OpenBSD bindists. There are none for GHC 8.2.2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment