X-Original-To: alpine-aports@mail.alpinelinux.org Delivered-To: alpine-aports@mail.alpinelinux.org Received: from mail.alpinelinux.org (dallas-a1.alpinelinux.org [127.0.0.1]) by mail.alpinelinux.org (Postfix) with ESMTP id C6F7BDC06BA for ; Mon, 16 May 2016 03:30:37 +0000 (UTC) Received: from mail-ig0-f172.google.com (mail-ig0-f172.google.com [209.85.213.172]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mail.alpinelinux.org (Postfix) with ESMTPS id 85B18DC06EB for ; Mon, 16 May 2016 03:30:37 +0000 (UTC) Received: by mail-ig0-f172.google.com with SMTP id qe5so42762014igc.1 for ; Sun, 15 May 2016 20:30:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=NGJFvONG0ftZs+I/ELsBIV/4wM6EYQ8+u7ZFmgYjJ4Q=; b=mD7Jm15+XUQWZKJoVWWAvkJgXAbMa4Nq3NLq3tBoxoU8c2vkuiCLWN/lsoiFzFwuXR j5AGDmBvAx1QRqaRG00R3qWIzR4a+oymPKNNQyn8oajRYABD8fIo+pnlX+kdtSu2n1pO 1iP1BJGFtuayuXUl/UB8qaMl2ayiaD3xTJ8PKDgYj3MoZ9P5GV8kc+Hc3yV8byXrBsLu crD4VJjgv+AAkECE9Y9I05VzQlAPD4x3feTskuKYEQDSMvrw4qxE6tKysm54pp2YauKz dgILt9vxuIw6hH5f+UDYTyH0lAJ00VoVjJ4p6u6TZ2Fa0Qih51bzQ6n8YqRrODZ+VM3I 2HMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=NGJFvONG0ftZs+I/ELsBIV/4wM6EYQ8+u7ZFmgYjJ4Q=; b=AvKk7CSVMw3j6psg/LyXSuQxJItVSr4kNtqP55pfbs5pD+0K6Ic2nuUD80IwPcAqkn H8oJNBbogYWFNGET4PVq5A5eNFxjlSPyBwDSMKajUB5lj6YKI3YeydtvJlwLQpYfOkaE k93e8rFihIgCvuQUFGKsbo9qdgfNsPnqkRLuC9Z7GqL7r/7A2pJy2nByg2EkI7xQZNmO YorxJi3FcCsL1uFgUwczVRgmZd7SUXVujHbJ9KFIoTI7+Z+nZ3VbhiwT1CmLnABi/VPE l2zG+2qP0vym1bt+VEOYtCmykGdxOcO7tNy0eDcUlEoqcJ7XLusAL+gccyvtofcVWxmS 0j+A== X-Gm-Message-State: AOPr4FXH8P/cGlr/cjDmyzfyOlgg/zbtfC/x+73RiOMHk2miqmswMXHe1BSQqbUu8cBhVg== X-Received: by 10.50.92.41 with SMTP id cj9mr8703897igb.22.1463369437142; Sun, 15 May 2016 20:30:37 -0700 (PDT) Received: from mb.lan (c-73-24-18-171.hsd1.mn.comcast.net. [73.24.18.171]) by smtp.gmail.com with ESMTPSA id xp13sm4883406igc.19.2016.05.15.20.30.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sun, 15 May 2016 20:30:36 -0700 (PDT) From: Mitch Tishmack To: alpine-aports@lists.alpinelinux.org Cc: Mitch Tishmack Subject: [alpine-aports] [PATCH 3/4] testing/ghc new aport Date: Sun, 15 May 2016 22:30:17 -0500 Message-Id: <1463369418-51523-4-git-send-email-mitch.tishmack@gmail.com> X-Mailer: git-send-email 2.8.0 In-Reply-To: <1463369418-51523-1-git-send-email-mitch.tishmack@gmail.com> References: <1463369418-51523-1-git-send-email-mitch.tishmack@gmail.com> X-Virus-Scanned: ClamAV using ClamSMTP X-Mailinglist: alpine-aports Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: --- testing/ghc/APKBUILD | 106 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100755 testing/ghc/APKBUILD diff --git a/testing/ghc/APKBUILD b/testing/ghc/APKBUILD new file mode 100755 index 0000000..bf4ac0a --- /dev/null +++ b/testing/ghc/APKBUILD @@ -0,0 +1,106 @@ +#-*-mode: Shell-script; coding: utf-8;-*- +# Maintainer: Mitch Tishmack +pkgname=ghc +pkgdesc="The Glasgow haskell compiler 8.0.1 (git)" +url="http://haskell.org" +subpackages="$pkgname-doc $pkgname-dev" +arch="x86_64 armhf" +apkgver=8.0.1 +pkgver=$(echo ${apkgver} | tr -d '[a-z]') +# setting _date to YYYmmDD will activate build from git behavior +_date= +if [ ${_date} != "" ]; then + pkgrel=${_date} + _builddir="$srcdir/$pkgname-${apkgver}.${_date}" + source=" + https://s3-us-west-2.amazonaws.com/alpine-ghc/next/ghc-${apkver}.${_date}-src.tar.xz + " +else + pkgrel=0 + _builddir="$srcdir/$pkgname-$apkgver" + source=" + http://downloads.haskell.org/~ghc/${apkgver}/ghc-${apkgver}-src.tar.xz + " +fi +inst_prefix=/usr +# Note ghc's license is basically bsd3. If you'd like to know more visit: +# https://www.haskell.org/ghc/license +# https://ghc.haskell.org/trac/ghc/wiki/Licensing +# +# Note also that ghc is sensitive to the version of llvm used, hence the +# ghc-llvm-X.Y package. +# +# Ref: https://ghc.haskell.org/trac/ghc/wiki/Status/GHC-8.0.1 +# https://ghc.haskell.org/trac/ghc/wiki/ImprovedLLVMBackend +license="custom:bsd3" +depends="bash gmp-dev libffi musl zlib ncurses perl gcc ghc-llvm" +install="" +dev_depends=" + $depends + linux-headers + musl-dev + ncurses-dev + gmp-dev + libffi-dev + zlib-dev + binutils-dev + " +# ghc build dependencies +makedepends=" + $dev_depends + ghc-bootstrap + " + +_ghc_build_tmp="$_builddir/tmp" + +# Allow for multiple installs, intentionally not default. +if [ ! -z $MULTI ]; then + inst_prefix="/opt/ghc/${pkgver}" + pkgname="ghc-${pkgver}" + depends="${depends}-37" +fi + +build() { + cd "$_builddir" + cp mk/build.mk.sample mk/build.mk || return 1 + echo "BuildFlavour = perf-llvm" >> mk/build.mk || return 1 + echo "SRC_HC_OPTS += -fPIC" >> mk/build.mk || return 1 + echo "SRC_CC_OPTS += -fPIC" >> mk/build.mk || return 1 + echo "GhcLibHcOpts += -fPIC" >> mk/build.mk || return 1 + echo "GhcStage2HcOpts += -fllvm" >> mk/build.mk || return 1 + echo "GhcRtsCcOpts += -fPIC" >> mk/build.mk || return 1 + echo "INTEGER_LIBRARY = integer-gmp" >> mk/build.mk || return 1 + echo "BeConservative = YES" >> mk/build.mk || return 1 + echo "GhcLibWays = v" >> mk/build.mk || return 1 + echo "GhcLibWays += dyn" >> mk/build.mk || return 1 + echo "GhcLibWays += p" >> mk/build.mk || return 1 + echo "BUILD_SPHINX_HTML = NO" >> mk/build.mk || return 1 + echo "BUILD_SPHINX_PS = NO" >> mk/build.mk || return 1 + echo "BUILD_SPHINX_PDF = NO" >> mk/build.mk || return 1 + echo "HADDOCK_DOCS = NO" >> mk/build.mk || return 1 + ./configure \ + --prefix="${inst_prefix}" \ + --with-ld=ld.gold \ + --with-llc=/usr/lib/ghc/llc-3.7 \ + --with-opt=/usr/lib/ghc/opt-3.7 || return 1 + make || return 1 +} + +dev() { + depends="$dev_depends" + cd "$_builddir" + pkgdesc="Packages necessary for general ghc development" + install -Dm644 LICENSE "$subpkgdir/usr/share/licenses/$subpkgname/LICENSE" || return 1 +} + +# Note, -nopie due to this bug, and must remain until fixed. +# https://ghc.haskell.org/trac/ghc/ticket/9007 +package() { + cd "$_builddir" + make -j1 DESTDIR="$pkgdir" install || return 1 + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" || return 1 + perl -pi -e 's/.*C compiler link flags.*/ \(\"C compiler link flags\"\, \"-nopie\"\)\,/' "$(find $pkgdir -name settings -type f)" +} +md5sums="94da3386c0de519eeea37586edd90187 ghc-8.0.1-src.tar.xz" +sha256sums="eee2339f6f9cff50c2232306a491139c97730d8f31e1c02ba9d3284384cf3e66 ghc-8.0.1-src.tar.xz" +sha512sums="412412dee67e081fa8fdaa0fed79bce914e61e26f7fe5042fc942b21982c9189b3ea1b9d2c5e11b951a1c27ceaa92b69e22f9999a414385cfb6981ffcb0a01a3 ghc-8.0.1-src.tar.xz" -- 2.8.0 --- Unsubscribe: alpine-aports+unsubscribe@lists.alpinelinux.org Help: alpine-aports+help@lists.alpinelinux.org ---