123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532 |
- %define pkg_name haskell-platform
- %define year_version 2017
- %define pkg_version 8.2.2
- %define pkg_release 1%{?_dist_release}
- %define ghc_version 8.2.2
- %define hscolour_version 1.24.2
- %define cabal_version 2.0.0.1
- %define stack_version 1.6.3
- %ifarch %{ix86}
- %define rpmarch i386
- %endif
- %ifarch x86_64
- %define rpmarch x86_64
- %endif
- Summary: An advanced purely-functional programming language
- Name: %{pkg_name}
- Version: %{year_version}.%{pkg_version}
- Release: %{pkg_release}
- License: BSD-like
- Group: Applications/Languages
- Source0: %{name}-%{pkg_version}.tar.gz
- Source1: packages.cabal-install
- Source2: packages.stack
- Source10: download-packages.pl
- Source11: generate-list.sh
- # ./download-packages.pl
- # ./generate-list.sh
- Source101: base16-bytestring-0.1.1.6.tar.gz
- Source102: base16-bytestring.cabal
- Source103: base64-bytestring-1.0.0.1.tar.gz
- Source104: base64-bytestring.cabal
- Source105: cryptohash-sha256-0.11.101.0.tar.gz
- Source106: cryptohash-sha256.cabal
- Source107: ed25519-0.0.5.0.tar.gz
- Source108: ed25519.cabal
- Source109: tar-0.5.0.3.tar.gz
- Source110: tar.cabal
- Source111: hackage-security-0.5.2.2.tar.gz
- Source112: hackage-security.cabal
- Source113: echo-0.1.3.tar.gz
- Source114: echo.cabal
- Source115: edit-distance-0.2.2.1.tar.gz
- Source116: edit-distance.cabal
- Source117: cabal-install-2.0.0.1.tar.gz
- Source118: cabal-install.cabal
- Source119: annotated-wl-pprint-0.7.0.tar.gz
- Source120: annotated-wl-pprint.cabal
- Source121: auto-update-0.1.4.tar.gz
- Source122: auto-update.cabal
- Source123: base-compat-0.9.3.tar.gz
- Source124: base-compat.cabal
- Source125: base-orphans-0.6.tar.gz
- Source126: base-orphans.cabal
- Source127: base-prelude-1.2.0.1.tar.gz
- Source128: base-prelude.cabal
- Source129: basement-0.0.4.tar.gz
- Source130: basement.cabal
- Source131: bindings-uname-0.1.tar.gz
- Source132: bindings-uname.cabal
- Source133: bitarray-0.0.1.1.tar.gz
- Source134: bitarray.cabal
- Source135: blaze-builder-0.4.0.2.tar.gz
- Source136: blaze-builder.cabal
- Source137: byteable-0.1.1.tar.gz
- Source138: byteable.cabal
- Source139: cabal-doctest-1.0.4.tar.gz
- Source140: cabal-doctest.cabal
- Source141: cereal-0.5.4.0.tar.gz
- Source142: cereal.cabal
- Source143: clock-0.7.2.tar.gz
- Source144: clock.cabal
- Source145: colour-2.3.4.tar.gz
- Source146: colour.cabal
- Source147: data-default-class-0.1.2.0.tar.gz
- Source148: data-default-class.cabal
- Source149: digest-0.0.1.2.tar.gz
- Source150: digest.cabal
- Source151: dlist-0.8.0.3.tar.gz
- Source152: dlist.cabal
- Source153: easy-file-0.2.1.tar.gz
- Source154: easy-file.cabal
- Source155: fail-4.9.0.0.tar.gz
- Source156: fail.cabal
- Source157: file-embed-0.0.10.1.tar.gz
- Source158: file-embed.cabal
- Source159: filelock-0.1.1.2.tar.gz
- Source160: filelock.cabal
- Source161: generic-deriving-1.11.2.tar.gz
- Source162: generic-deriving.cabal
- Source163: hinotify-0.3.9.tar.gz
- Source164: hinotify.cabal
- Source165: hourglass-0.2.10.tar.gz
- Source166: hourglass.cabal
- Source167: hspec-discover-2.4.4.tar.gz
- Source168: hspec-discover.cabal
- Source169: hspec-expectations-0.8.2.tar.gz
- Source170: hspec-expectations.cabal
- Source171: ieee754-0.8.0.tar.gz
- Source172: ieee754.cabal
- Source173: logict-0.6.0.2.tar.gz
- Source174: logict.cabal
- Source175: microlens-0.4.8.1.tar.gz
- Source176: microlens.cabal
- Source177: mime-types-0.1.0.7.tar.gz
- Source178: mime-types.cabal
- Source179: mintty-0.1.1.tar.gz
- Source180: mintty.cabal
- Source181: monad-loops-0.4.3.tar.gz
- Source182: monad-loops.cabal
- Source183: old-locale-1.0.0.7.tar.gz
- Source184: old-locale.cabal
- Source185: open-browser-0.2.1.0.tar.gz
- Source186: open-browser.cabal
- Source187: path-pieces-0.2.1.tar.gz
- Source188: path-pieces.cabal
- Source189: pid1-0.1.2.0.tar.gz
- Source190: pid1.cabal
- Source191: polyparse-1.12.tar.gz
- Source192: polyparse.cabal
- Source193: prelude-extras-0.4.0.3.tar.gz
- Source194: prelude-extras.cabal
- Source195: quickcheck-io-0.2.0.tar.gz
- Source196: quickcheck-io.cabal
- Source197: regex-applicative-0.3.3.tar.gz
- Source198: regex-applicative.cabal
- Source199: safe-0.3.15.tar.gz
- Source200: safe.cabal
- Source201: semigroups-0.18.3.tar.gz
- Source202: semigroups.cabal
- Source203: setenv-0.1.1.3.tar.gz
- Source204: setenv.cabal
- Source205: silently-1.2.5.tar.gz
- Source206: silently.cabal
- Source207: stm-chans-3.0.0.4.tar.gz
- Source208: stm-chans.cabal
- Source209: text-metrics-0.3.0.tar.gz
- Source210: text-metrics.cabal
- Source211: th-abstraction-0.2.6.0.tar.gz
- Source212: th-abstraction.cabal
- Source213: th-expand-syns-0.4.4.0.tar.gz
- Source214: th-expand-syns.cabal
- Source215: th-lift-0.7.7.tar.gz
- Source216: th-lift.cabal
- Source217: time-locale-compat-0.1.1.3.tar.gz
- Source218: time-locale-compat.cabal
- Source219: transformers-compat-0.5.1.4.tar.gz
- Source220: transformers-compat.cabal
- Source221: unix-compat-0.5.0.1.tar.gz
- Source222: unix-compat.cabal
- Source223: unliftio-core-0.1.1.0.tar.gz
- Source224: unliftio-core.cabal
- Source225: uuid-types-1.0.3.tar.gz
- Source226: uuid-types.cabal
- Source227: vector-algorithms-0.7.0.1.tar.gz
- Source228: vector-algorithms.cabal
- Source229: void-0.7.2.tar.gz
- Source230: void.cabal
- Source231: gitrev-1.3.1.tar.gz
- Source232: gitrev.cabal
- Source233: attoparsec-iso8601-1.0.0.0.tar.gz
- Source234: attoparsec-iso8601.cabal
- Source235: neat-interpolation-0.3.2.1.tar.gz
- Source236: neat-interpolation.cabal
- Source237: pem-0.2.2.tar.gz
- Source238: pem.cabal
- Source239: foundation-0.0.17.tar.gz
- Source240: foundation.cabal
- Source241: unicode-transforms-0.3.3.tar.gz
- Source242: unicode-transforms.cabal
- Source243: streaming-commons-0.1.18.tar.gz
- Source244: streaming-commons.cabal
- Source245: http-types-0.9.1.tar.gz
- Source246: http-types.cabal
- Source247: blaze-markup-0.8.0.0.tar.gz
- Source248: blaze-markup.cabal
- Source249: socks-0.5.6.tar.gz
- Source250: socks.cabal
- Source251: extra-1.6.2.tar.gz
- Source252: extra.cabal
- Source253: ansi-terminal-0.7.1.1.tar.gz
- Source254: ansi-terminal.cabal
- Source255: store-core-0.4.1.tar.gz
- Source256: store-core.cabal
- Source257: hastache-0.6.1.tar.gz
- Source258: hastache.cabal
- Source259: smallcheck-1.1.3.1.tar.gz
- Source260: smallcheck.cabal
- Source261: microlens-th-0.4.1.1.tar.gz
- Source262: microlens-th.cabal
- Source263: old-time-1.1.0.3.tar.gz
- Source264: old-time.cabal
- Source265: cookie-0.4.3.tar.gz
- Source266: cookie.cabal
- Source267: regex-applicative-text-0.1.0.1.tar.gz
- Source268: regex-applicative-text.cabal
- Source269: th-reify-many-0.1.8.tar.gz
- Source270: th-reify-many.cabal
- Source271: th-lift-instances-0.1.11.tar.gz
- Source272: th-lift-instances.cabal
- Source273: transformers-base-0.4.4.tar.gz
- Source274: transformers-base.cabal
- Source275: tagged-0.8.5.tar.gz
- Source276: tagged.cabal
- Source277: mmorph-1.1.0.tar.gz
- Source278: mmorph.cabal
- Source279: microlens-mtl-0.1.11.0.tar.gz
- Source280: microlens-mtl.cabal
- Source281: exceptions-0.8.3.tar.gz
- Source282: exceptions.cabal
- Source283: Glob-0.9.1.tar.gz
- Source284: Glob.cabal
- Source285: fsnotify-0.2.1.1.tar.gz
- Source286: fsnotify.cabal
- Source287: unliftio-0.2.2.0.tar.gz
- Source288: unliftio.cabal
- Source289: mono-traversable-1.0.7.0.tar.gz
- Source290: mono-traversable.cabal
- Source291: contravariant-1.4.tar.gz
- Source292: contravariant.cabal
- Source293: memory-0.14.11.tar.gz
- Source294: memory.cabal
- Source295: blaze-html-0.9.0.1.tar.gz
- Source296: blaze-html.cabal
- Source297: hspec-core-2.4.4.tar.gz
- Source298: hspec-core.cabal
- Source299: ansi-wl-pprint-0.6.8.1.tar.gz
- Source300: ansi-wl-pprint.cabal
- Source301: zip-archive-0.3.1.1.tar.gz
- Source302: zip-archive.cabal
- Source303: unix-time-0.3.7.tar.gz
- Source304: unix-time.cabal
- Source305: cpphs-1.20.8.tar.gz
- Source306: cpphs.cabal
- Source307: uri-bytestring-0.3.1.0.tar.gz
- Source308: uri-bytestring.cabal
- Source309: th-orphans-0.13.4.tar.gz
- Source310: th-orphans.cabal
- Source311: monad-control-1.0.2.2.tar.gz
- Source312: monad-control.cabal
- Source313: distributive-0.5.3.tar.gz
- Source314: distributive.cabal
- Source315: aeson-1.2.3.0.tar.gz
- Source316: aeson.cabal
- Source317: temporary-1.2.1.1.tar.gz
- Source318: temporary.cabal
- Source319: retry-0.7.5.1.tar.gz
- Source320: retry.cabal
- Source321: http-client-0.5.7.1.tar.gz
- Source322: http-client.cabal
- Source323: cryptonite-0.24.tar.gz
- Source324: cryptonite.cabal
- Source325: asn1-types-0.3.2.tar.gz
- Source326: asn1-types.cabal
- Source327: hspec-smallcheck-0.4.2.tar.gz
- Source328: hspec-smallcheck.cabal
- Source329: hspec-2.4.4.tar.gz
- Source330: hspec.cabal
- Source331: optparse-applicative-0.14.0.0.tar.gz
- Source332: optparse-applicative.cabal
- Source333: fast-logger-2.4.10.tar.gz
- Source334: fast-logger.cabal
- Source335: haskell-src-exts-1.19.1.tar.gz
- Source336: haskell-src-exts.cabal
- Source337: http-api-data-0.3.7.1.tar.gz
- Source338: http-api-data.cabal
- Source339: th-utilities-0.2.0.1.tar.gz
- Source340: th-utilities.cabal
- Source341: resource-pool-0.2.3.2.tar.gz
- Source342: resource-pool.cabal
- Source343: lifted-base-0.2.3.11.tar.gz
- Source344: lifted-base.cabal
- Source345: comonad-5.0.2.tar.gz
- Source346: comonad.cabal
- Source347: path-0.6.1.tar.gz
- Source348: path.cabal
- Source349: aeson-compat-0.3.7.1.tar.gz
- Source350: aeson-compat.cabal
- Source351: cryptohash-0.11.9.tar.gz
- Source352: cryptohash.cabal
- Source353: asn1-encoding-0.9.5.tar.gz
- Source354: asn1-encoding.cabal
- Source355: optparse-simple-0.1.0.tar.gz
- Source356: optparse-simple.cabal
- Source357: haskell-src-meta-0.8.0.1.tar.gz
- Source358: haskell-src-meta.cabal
- Source359: resourcet-1.1.10.tar.gz
- Source360: resourcet.cabal
- Source361: bifunctors-5.5.tar.gz
- Source362: bifunctors.cabal
- Source363: path-io-1.3.3.tar.gz
- Source364: path-io.cabal
- Source365: asn1-parse-0.9.4.tar.gz
- Source366: asn1-parse.cabal
- Source367: conduit-1.2.12.1.tar.gz
- Source368: conduit.cabal
- Source369: semigroupoids-5.2.1.tar.gz
- Source370: semigroupoids.cabal
- Source371: profunctors-5.2.1.tar.gz
- Source372: profunctors.cabal
- Source373: x509-1.7.2.tar.gz
- Source374: x509.cabal
- Source375: yaml-0.8.25.1.tar.gz
- Source376: yaml.cabal
- Source377: conduit-extra-1.1.17.tar.gz
- Source378: conduit-extra.cabal
- Source379: free-4.12.4.tar.gz
- Source380: free.cabal
- Source381: x509-store-1.6.5.tar.gz
- Source382: x509-store.cabal
- Source383: hpack-0.20.0.tar.gz
- Source384: hpack.cabal
- Source385: project-template-0.2.0.tar.gz
- Source386: project-template.cabal
- Source387: monad-logger-0.3.26.tar.gz
- Source388: monad-logger.cabal
- Source389: cryptonite-conduit-0.2.2.tar.gz
- Source390: cryptonite-conduit.cabal
- Source391: store-0.4.3.2.tar.gz
- Source392: store.cabal
- Source393: x509-validation-1.6.9.tar.gz
- Source394: x509-validation.cabal
- Source395: x509-system-1.6.6.tar.gz
- Source396: x509-system.cabal
- Source397: persistent-2.7.3.tar.gz
- Source398: persistent.cabal
- Source399: tls-1.4.0.tar.gz
- Source400: tls.cabal
- Source401: persistent-template-2.5.3.tar.gz
- Source402: persistent-template.cabal
- Source403: persistent-sqlite-2.6.4.tar.gz
- Source404: persistent-sqlite.cabal
- Source405: connection-0.2.8.tar.gz
- Source406: connection.cabal
- Source407: http-client-tls-0.3.5.1.tar.gz
- Source408: http-client-tls.cabal
- Source409: http-conduit-2.2.4.tar.gz
- Source410: http-conduit.cabal
- Source411: stack-1.6.3.tar.gz
- Source412: stack.cabal
- BuildRoot: %{_tmppath}/%{name}-%{pkg_version}-root
- BuildRequires: ghc = %{ghc_version}
- BuildRequires: gmp-devel zlib-devel freeglut-devel
- BuildRequires: libffi-devel
- BuildRequires: docbook-utils docbook-utils-pdf docbook-style-xsl
- Requires: ghc = %{ghc_version}
- Requires: freeglut-devel
- Conflicts: alex
- Conflicts: happy
- Conflicts: haskell-platform-base
- Conflicts: cabal-install
- Conflicts: hscolour
- Vendor: Project Vine
- Distribution: Vine Linux
- Packager: ara_t
- %description
- Haskell is a computer programming language.
- In particular, it is a polymorphically statically typed, lazy, purely
- functional language, quite different from most other programming languages.
- The language is named for Haskell Brooks Curry, whose work in mathematical
- logic serves as a foundation for functional languages.
- %prep
- %{__rm} -rf ${RPM_BUILD_ROOT}
- %setup -q -n %{name}-%{pkg_version}
- %build
- PKGNAME=%{name}-%{version}
- PKGCONFDIR=${RPM_BUILD_ROOT}%{_libdir}/ghc-%{ghc_version}/package.conf.d
- %{__mkdir_p} ${PKGCONFDIR}
- export PATH=${RPM_BUILD_ROOT}%{_bindir}:${HOME}/.cabal/bin:${PATH}
- export LANG=en_US.utf8
- # hscolour (bootstrap)
- pkg=hscolour-%{hscolour_version}
- cd %{_builddir}/%{name}-%{pkg_version}/packages/${pkg}
- ghc --make Setup
- ./Setup configure --user
- ./Setup build
- ./Setup copy
- ./Setup register --inplace
- # haskell-platform
- cd %{_builddir}/%{name}-%{pkg_version}
- cd packages
- for pkg in `cat ../etc/build.packages`; do
- cd ${pkg}
- ghc --make Setup
- ./Setup configure \
- --user \
- --prefix=%{_prefix} \
- --libdir=%{_libdir}/${PKGNAME}/${pkg} \
- --libsubdir= \
- --datadir=%{_datadir}/${PKGNAME}/${pkg} \
- --datasubdir= \
- --docdir=%{_docdir}/${PKGNAME}/${pkg}
- ./Setup build
- ./Setup haddock || :
- ./Setup copy --destdir=${RPM_BUILD_ROOT}
- ./Setup register --inplace
- ./Setup register --gen-pkg-config=${PKGCONFDIR}/${pkg}.conf
- cd ..
- done
- # cabal-install
- cd %{_builddir}
- for pkg in `cat %{SOURCE1}`; do
- %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
- cd ${pkg}
- # fix wrong dependencies
- CABALNAME=`echo ${pkg} | sed -e 's/\([a-zA-Z0-9-]\+\)-[0-9.]\+/\1.cabal/'`
- %{__cp} %{_sourcedir}/${CABALNAME} .
- ghc --make Setup
- if [ ${pkg} = "cabal-install-%{cabal_version}" ]
- then
- ./Setup configure \
- --user \
- --prefix=%{_prefix} \
- --docdir=%{_docdir}/${PKGNAME}/${pkg}
- ./Setup build
- ./Setup copy --destdir=${RPM_BUILD_ROOT}
- else
- ./Setup configure --user
- ./Setup build
- ./Setup copy
- ./Setup register --inplace
- fi
- cd ..
- done
- # stack
- cd %{_builddir}
- for pkg in `cat %{SOURCE2}`; do
- %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
- cd ${pkg}
- # fix wrong dependencies
- CABALNAME=`echo ${pkg} | sed -e 's/\([a-zA-Z0-9-]\+\)-[0-9.]\+/\1.cabal/'`
- %{__cp} %{_sourcedir}/${CABALNAME} .
- case ${pkg} in
- "stack-%{stack_version}") cabal install --enable-documentation ;;
- *) cabal install --force-reinstalls ;;
- esac
- cd ..
- done
- %install
- # stack
- %{__install} -m 755 ${HOME}/.cabal/bin/stack \
- ${RPM_BUILD_ROOT}%{_bindir}
- cd ${HOME}/.cabal/share/doc/%{rpmarch}-linux-ghc-%{ghc_version}
- %{__mv} stack-%{stack_version} \
- ${RPM_BUILD_ROOT}%{_docdir}/%{name}-%{version}
- # hscolour
- cd ${RPM_BUILD_ROOT}%{_bindir}
- %{__ln_s} HsColour hscolour
- %clean
- %{__rm} -rf ${RPM_BUILD_ROOT}
- %post
- ghc-pkg recache
- %postun
- ghc-pkg recache
- %files
- %defattr(-, root, root)
- %{_bindir}/
- %{_libdir}/%{name}-%{version}/
- %{_libdir}/ghc-%{ghc_version}/package.conf.d/
- %{_datadir}/%{name}-%{version}/
- %{_docdir}/%{name}-%{version}/
- %{_mandir}/man1/
- %changelog
- * Sat Jan 06 2018 Toshiaki Ara <ara_t@384.jp> 2017.8.2.2-1
- - update to 8.2.2
- * Wed Feb 01 2017 Toshiaki Ara <ara_t@384.jp> 2016.8.0.1-1
- - update to 2016.8.0.1
- * Tue May 03 2016 Toshiaki Ara <ara_t@384.jp> 2015.7.10.3-3
- - modify SPEC file without usage of cabal-install
- * Mon Apr 11 2016 Toshiaki Ara <ara_t@384.jp> 2015.7.10.3-2
- - correct SPEC file
- * Fri Feb 19 2016 Toshiaki Ara <ara_t@384.jp> 2015.7.10.3-1
- - update to 7.10.3
- * Mon Feb 15 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-4
- - delete subpackage cabal-install
- - delete %%{cabal_version} from Requires: cabal-install-%%{cabal_version}
- - add BuildRequires: libffi-devel
- * Thu Feb 11 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-3
- - correct Requires
- * Thu Feb 11 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-2
- - install Haskell libraries into %%{_libdir}/ghc-lib
- - add BuildRequires: hscolour
- - devide insto subpackages
- * Thu Feb 04 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-1
- - new package
|