source: projects/specs/trunk/h/haskell-platform/haskell-platform-vl.spec @ 11382

Revision 11382, 15.3 KB checked in by ara_t, 6 years ago (diff)

haskell-platform: update to 2017.8.2.2

Line 
1%define pkg_name     haskell-platform
2%define year_version 2017
3%define pkg_version  8.2.2
4%define pkg_release  1%{?_dist_release}
5
6%define ghc_version 8.2.2
7%define hscolour_version 1.24.2
8%define cabal_version 2.0.0.1
9%define stack_version 1.6.3
10
11
12%ifarch %{ix86}
13%define rpmarch i386
14%endif
15%ifarch x86_64
16%define rpmarch x86_64
17%endif
18
19
20Summary: An advanced purely-functional programming language
21Name:    %{pkg_name}
22Version: %{year_version}.%{pkg_version}
23Release: %{pkg_release}
24
25License: BSD-like
26Group:   Applications/Languages
27
28
29Source0: %{name}-%{pkg_version}.tar.gz
30Source1: packages.cabal-install
31Source2: packages.stack
32
33Source10: download-packages.pl
34Source11: generate-list.sh
35
36# ./download-packages.pl
37# ./generate-list.sh
38Source101: base16-bytestring-0.1.1.6.tar.gz
39Source102: base16-bytestring.cabal
40Source103: base64-bytestring-1.0.0.1.tar.gz
41Source104: base64-bytestring.cabal
42Source105: cryptohash-sha256-0.11.101.0.tar.gz
43Source106: cryptohash-sha256.cabal
44Source107: ed25519-0.0.5.0.tar.gz
45Source108: ed25519.cabal
46Source109: tar-0.5.0.3.tar.gz
47Source110: tar.cabal
48Source111: hackage-security-0.5.2.2.tar.gz
49Source112: hackage-security.cabal
50Source113: echo-0.1.3.tar.gz
51Source114: echo.cabal
52Source115: edit-distance-0.2.2.1.tar.gz
53Source116: edit-distance.cabal
54Source117: cabal-install-2.0.0.1.tar.gz
55Source118: cabal-install.cabal
56Source119: annotated-wl-pprint-0.7.0.tar.gz
57Source120: annotated-wl-pprint.cabal
58Source121: auto-update-0.1.4.tar.gz
59Source122: auto-update.cabal
60Source123: base-compat-0.9.3.tar.gz
61Source124: base-compat.cabal
62Source125: base-orphans-0.6.tar.gz
63Source126: base-orphans.cabal
64Source127: base-prelude-1.2.0.1.tar.gz
65Source128: base-prelude.cabal
66Source129: basement-0.0.4.tar.gz
67Source130: basement.cabal
68Source131: bindings-uname-0.1.tar.gz
69Source132: bindings-uname.cabal
70Source133: bitarray-0.0.1.1.tar.gz
71Source134: bitarray.cabal
72Source135: blaze-builder-0.4.0.2.tar.gz
73Source136: blaze-builder.cabal
74Source137: byteable-0.1.1.tar.gz
75Source138: byteable.cabal
76Source139: cabal-doctest-1.0.4.tar.gz
77Source140: cabal-doctest.cabal
78Source141: cereal-0.5.4.0.tar.gz
79Source142: cereal.cabal
80Source143: clock-0.7.2.tar.gz
81Source144: clock.cabal
82Source145: colour-2.3.4.tar.gz
83Source146: colour.cabal
84Source147: data-default-class-0.1.2.0.tar.gz
85Source148: data-default-class.cabal
86Source149: digest-0.0.1.2.tar.gz
87Source150: digest.cabal
88Source151: dlist-0.8.0.3.tar.gz
89Source152: dlist.cabal
90Source153: easy-file-0.2.1.tar.gz
91Source154: easy-file.cabal
92Source155: fail-4.9.0.0.tar.gz
93Source156: fail.cabal
94Source157: file-embed-0.0.10.1.tar.gz
95Source158: file-embed.cabal
96Source159: filelock-0.1.1.2.tar.gz
97Source160: filelock.cabal
98Source161: generic-deriving-1.11.2.tar.gz
99Source162: generic-deriving.cabal
100Source163: hinotify-0.3.9.tar.gz
101Source164: hinotify.cabal
102Source165: hourglass-0.2.10.tar.gz
103Source166: hourglass.cabal
104Source167: hspec-discover-2.4.4.tar.gz
105Source168: hspec-discover.cabal
106Source169: hspec-expectations-0.8.2.tar.gz
107Source170: hspec-expectations.cabal
108Source171: ieee754-0.8.0.tar.gz
109Source172: ieee754.cabal
110Source173: logict-0.6.0.2.tar.gz
111Source174: logict.cabal
112Source175: microlens-0.4.8.1.tar.gz
113Source176: microlens.cabal
114Source177: mime-types-0.1.0.7.tar.gz
115Source178: mime-types.cabal
116Source179: mintty-0.1.1.tar.gz
117Source180: mintty.cabal
118Source181: monad-loops-0.4.3.tar.gz
119Source182: monad-loops.cabal
120Source183: old-locale-1.0.0.7.tar.gz
121Source184: old-locale.cabal
122Source185: open-browser-0.2.1.0.tar.gz
123Source186: open-browser.cabal
124Source187: path-pieces-0.2.1.tar.gz
125Source188: path-pieces.cabal
126Source189: pid1-0.1.2.0.tar.gz
127Source190: pid1.cabal
128Source191: polyparse-1.12.tar.gz
129Source192: polyparse.cabal
130Source193: prelude-extras-0.4.0.3.tar.gz
131Source194: prelude-extras.cabal
132Source195: quickcheck-io-0.2.0.tar.gz
133Source196: quickcheck-io.cabal
134Source197: regex-applicative-0.3.3.tar.gz
135Source198: regex-applicative.cabal
136Source199: safe-0.3.15.tar.gz
137Source200: safe.cabal
138Source201: semigroups-0.18.3.tar.gz
139Source202: semigroups.cabal
140Source203: setenv-0.1.1.3.tar.gz
141Source204: setenv.cabal
142Source205: silently-1.2.5.tar.gz
143Source206: silently.cabal
144Source207: stm-chans-3.0.0.4.tar.gz
145Source208: stm-chans.cabal
146Source209: text-metrics-0.3.0.tar.gz
147Source210: text-metrics.cabal
148Source211: th-abstraction-0.2.6.0.tar.gz
149Source212: th-abstraction.cabal
150Source213: th-expand-syns-0.4.4.0.tar.gz
151Source214: th-expand-syns.cabal
152Source215: th-lift-0.7.7.tar.gz
153Source216: th-lift.cabal
154Source217: time-locale-compat-0.1.1.3.tar.gz
155Source218: time-locale-compat.cabal
156Source219: transformers-compat-0.5.1.4.tar.gz
157Source220: transformers-compat.cabal
158Source221: unix-compat-0.5.0.1.tar.gz
159Source222: unix-compat.cabal
160Source223: unliftio-core-0.1.1.0.tar.gz
161Source224: unliftio-core.cabal
162Source225: uuid-types-1.0.3.tar.gz
163Source226: uuid-types.cabal
164Source227: vector-algorithms-0.7.0.1.tar.gz
165Source228: vector-algorithms.cabal
166Source229: void-0.7.2.tar.gz
167Source230: void.cabal
168Source231: gitrev-1.3.1.tar.gz
169Source232: gitrev.cabal
170Source233: attoparsec-iso8601-1.0.0.0.tar.gz
171Source234: attoparsec-iso8601.cabal
172Source235: neat-interpolation-0.3.2.1.tar.gz
173Source236: neat-interpolation.cabal
174Source237: pem-0.2.2.tar.gz
175Source238: pem.cabal
176Source239: foundation-0.0.17.tar.gz
177Source240: foundation.cabal
178Source241: unicode-transforms-0.3.3.tar.gz
179Source242: unicode-transforms.cabal
180Source243: streaming-commons-0.1.18.tar.gz
181Source244: streaming-commons.cabal
182Source245: http-types-0.9.1.tar.gz
183Source246: http-types.cabal
184Source247: blaze-markup-0.8.0.0.tar.gz
185Source248: blaze-markup.cabal
186Source249: socks-0.5.6.tar.gz
187Source250: socks.cabal
188Source251: extra-1.6.2.tar.gz
189Source252: extra.cabal
190Source253: ansi-terminal-0.7.1.1.tar.gz
191Source254: ansi-terminal.cabal
192Source255: store-core-0.4.1.tar.gz
193Source256: store-core.cabal
194Source257: hastache-0.6.1.tar.gz
195Source258: hastache.cabal
196Source259: smallcheck-1.1.3.1.tar.gz
197Source260: smallcheck.cabal
198Source261: microlens-th-0.4.1.1.tar.gz
199Source262: microlens-th.cabal
200Source263: old-time-1.1.0.3.tar.gz
201Source264: old-time.cabal
202Source265: cookie-0.4.3.tar.gz
203Source266: cookie.cabal
204Source267: regex-applicative-text-0.1.0.1.tar.gz
205Source268: regex-applicative-text.cabal
206Source269: th-reify-many-0.1.8.tar.gz
207Source270: th-reify-many.cabal
208Source271: th-lift-instances-0.1.11.tar.gz
209Source272: th-lift-instances.cabal
210Source273: transformers-base-0.4.4.tar.gz
211Source274: transformers-base.cabal
212Source275: tagged-0.8.5.tar.gz
213Source276: tagged.cabal
214Source277: mmorph-1.1.0.tar.gz
215Source278: mmorph.cabal
216Source279: microlens-mtl-0.1.11.0.tar.gz
217Source280: microlens-mtl.cabal
218Source281: exceptions-0.8.3.tar.gz
219Source282: exceptions.cabal
220Source283: Glob-0.9.1.tar.gz
221Source284: Glob.cabal
222Source285: fsnotify-0.2.1.1.tar.gz
223Source286: fsnotify.cabal
224Source287: unliftio-0.2.2.0.tar.gz
225Source288: unliftio.cabal
226Source289: mono-traversable-1.0.7.0.tar.gz
227Source290: mono-traversable.cabal
228Source291: contravariant-1.4.tar.gz
229Source292: contravariant.cabal
230Source293: memory-0.14.11.tar.gz
231Source294: memory.cabal
232Source295: blaze-html-0.9.0.1.tar.gz
233Source296: blaze-html.cabal
234Source297: hspec-core-2.4.4.tar.gz
235Source298: hspec-core.cabal
236Source299: ansi-wl-pprint-0.6.8.1.tar.gz
237Source300: ansi-wl-pprint.cabal
238Source301: zip-archive-0.3.1.1.tar.gz
239Source302: zip-archive.cabal
240Source303: unix-time-0.3.7.tar.gz
241Source304: unix-time.cabal
242Source305: cpphs-1.20.8.tar.gz
243Source306: cpphs.cabal
244Source307: uri-bytestring-0.3.1.0.tar.gz
245Source308: uri-bytestring.cabal
246Source309: th-orphans-0.13.4.tar.gz
247Source310: th-orphans.cabal
248Source311: monad-control-1.0.2.2.tar.gz
249Source312: monad-control.cabal
250Source313: distributive-0.5.3.tar.gz
251Source314: distributive.cabal
252Source315: aeson-1.2.3.0.tar.gz
253Source316: aeson.cabal
254Source317: temporary-1.2.1.1.tar.gz
255Source318: temporary.cabal
256Source319: retry-0.7.5.1.tar.gz
257Source320: retry.cabal
258Source321: http-client-0.5.7.1.tar.gz
259Source322: http-client.cabal
260Source323: cryptonite-0.24.tar.gz
261Source324: cryptonite.cabal
262Source325: asn1-types-0.3.2.tar.gz
263Source326: asn1-types.cabal
264Source327: hspec-smallcheck-0.4.2.tar.gz
265Source328: hspec-smallcheck.cabal
266Source329: hspec-2.4.4.tar.gz
267Source330: hspec.cabal
268Source331: optparse-applicative-0.14.0.0.tar.gz
269Source332: optparse-applicative.cabal
270Source333: fast-logger-2.4.10.tar.gz
271Source334: fast-logger.cabal
272Source335: haskell-src-exts-1.19.1.tar.gz
273Source336: haskell-src-exts.cabal
274Source337: http-api-data-0.3.7.1.tar.gz
275Source338: http-api-data.cabal
276Source339: th-utilities-0.2.0.1.tar.gz
277Source340: th-utilities.cabal
278Source341: resource-pool-0.2.3.2.tar.gz
279Source342: resource-pool.cabal
280Source343: lifted-base-0.2.3.11.tar.gz
281Source344: lifted-base.cabal
282Source345: comonad-5.0.2.tar.gz
283Source346: comonad.cabal
284Source347: path-0.6.1.tar.gz
285Source348: path.cabal
286Source349: aeson-compat-0.3.7.1.tar.gz
287Source350: aeson-compat.cabal
288Source351: cryptohash-0.11.9.tar.gz
289Source352: cryptohash.cabal
290Source353: asn1-encoding-0.9.5.tar.gz
291Source354: asn1-encoding.cabal
292Source355: optparse-simple-0.1.0.tar.gz
293Source356: optparse-simple.cabal
294Source357: haskell-src-meta-0.8.0.1.tar.gz
295Source358: haskell-src-meta.cabal
296Source359: resourcet-1.1.10.tar.gz
297Source360: resourcet.cabal
298Source361: bifunctors-5.5.tar.gz
299Source362: bifunctors.cabal
300Source363: path-io-1.3.3.tar.gz
301Source364: path-io.cabal
302Source365: asn1-parse-0.9.4.tar.gz
303Source366: asn1-parse.cabal
304Source367: conduit-1.2.12.1.tar.gz
305Source368: conduit.cabal
306Source369: semigroupoids-5.2.1.tar.gz
307Source370: semigroupoids.cabal
308Source371: profunctors-5.2.1.tar.gz
309Source372: profunctors.cabal
310Source373: x509-1.7.2.tar.gz
311Source374: x509.cabal
312Source375: yaml-0.8.25.1.tar.gz
313Source376: yaml.cabal
314Source377: conduit-extra-1.1.17.tar.gz
315Source378: conduit-extra.cabal
316Source379: free-4.12.4.tar.gz
317Source380: free.cabal
318Source381: x509-store-1.6.5.tar.gz
319Source382: x509-store.cabal
320Source383: hpack-0.20.0.tar.gz
321Source384: hpack.cabal
322Source385: project-template-0.2.0.tar.gz
323Source386: project-template.cabal
324Source387: monad-logger-0.3.26.tar.gz
325Source388: monad-logger.cabal
326Source389: cryptonite-conduit-0.2.2.tar.gz
327Source390: cryptonite-conduit.cabal
328Source391: store-0.4.3.2.tar.gz
329Source392: store.cabal
330Source393: x509-validation-1.6.9.tar.gz
331Source394: x509-validation.cabal
332Source395: x509-system-1.6.6.tar.gz
333Source396: x509-system.cabal
334Source397: persistent-2.7.3.tar.gz
335Source398: persistent.cabal
336Source399: tls-1.4.0.tar.gz
337Source400: tls.cabal
338Source401: persistent-template-2.5.3.tar.gz
339Source402: persistent-template.cabal
340Source403: persistent-sqlite-2.6.4.tar.gz
341Source404: persistent-sqlite.cabal
342Source405: connection-0.2.8.tar.gz
343Source406: connection.cabal
344Source407: http-client-tls-0.3.5.1.tar.gz
345Source408: http-client-tls.cabal
346Source409: http-conduit-2.2.4.tar.gz
347Source410: http-conduit.cabal
348Source411: stack-1.6.3.tar.gz
349Source412: stack.cabal
350
351BuildRoot: %{_tmppath}/%{name}-%{pkg_version}-root
352
353BuildRequires: ghc = %{ghc_version}
354BuildRequires: gmp-devel zlib-devel freeglut-devel
355BuildRequires: libffi-devel
356BuildRequires: docbook-utils docbook-utils-pdf docbook-style-xsl
357
358Requires: ghc = %{ghc_version}
359Requires: freeglut-devel
360
361Conflicts: alex
362Conflicts: happy
363Conflicts: haskell-platform-base
364Conflicts: cabal-install
365Conflicts: hscolour
366
367Vendor: Project Vine
368Distribution: Vine Linux
369Packager: ara_t
370
371
372%description
373Haskell is a computer programming language.
374In particular, it is a polymorphically statically typed, lazy, purely
375functional language, quite different from most other programming languages.
376The language is named for Haskell Brooks Curry, whose work in mathematical
377logic serves as a foundation for functional languages.
378
379
380%prep
381%{__rm} -rf ${RPM_BUILD_ROOT}
382%setup -q -n %{name}-%{pkg_version}
383
384%build
385PKGNAME=%{name}-%{version}
386PKGCONFDIR=${RPM_BUILD_ROOT}%{_libdir}/ghc-%{ghc_version}/package.conf.d
387%{__mkdir_p} ${PKGCONFDIR}
388
389export PATH=${RPM_BUILD_ROOT}%{_bindir}:${HOME}/.cabal/bin:${PATH}
390export LANG=en_US.utf8
391
392# hscolour (bootstrap)
393pkg=hscolour-%{hscolour_version}
394cd %{_builddir}/%{name}-%{pkg_version}/packages/${pkg}
395ghc --make Setup
396./Setup configure --user
397./Setup build
398./Setup copy
399./Setup register --inplace
400
401# haskell-platform
402cd %{_builddir}/%{name}-%{pkg_version}
403cd packages
404for pkg in `cat ../etc/build.packages`; do
405    cd ${pkg}
406    ghc --make Setup
407    ./Setup configure \
408            --user \
409            --prefix=%{_prefix} \
410            --libdir=%{_libdir}/${PKGNAME}/${pkg} \
411            --libsubdir= \
412            --datadir=%{_datadir}/${PKGNAME}/${pkg} \
413            --datasubdir= \
414            --docdir=%{_docdir}/${PKGNAME}/${pkg}
415
416    ./Setup build
417    ./Setup haddock || :
418    ./Setup copy --destdir=${RPM_BUILD_ROOT}
419    ./Setup register --inplace
420    ./Setup register --gen-pkg-config=${PKGCONFDIR}/${pkg}.conf
421    cd ..
422done
423
424# cabal-install
425cd %{_builddir}
426for pkg in `cat %{SOURCE1}`; do
427    %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
428    cd ${pkg}
429    # fix wrong dependencies
430    CABALNAME=`echo ${pkg} | sed -e 's/\([a-zA-Z0-9-]\+\)-[0-9.]\+/\1.cabal/'`
431    %{__cp} %{_sourcedir}/${CABALNAME} .
432
433    ghc --make Setup
434    if [ ${pkg} = "cabal-install-%{cabal_version}" ]
435    then
436        ./Setup configure \
437                --user \
438                --prefix=%{_prefix} \
439                --docdir=%{_docdir}/${PKGNAME}/${pkg}
440
441        ./Setup build
442        ./Setup copy --destdir=${RPM_BUILD_ROOT}
443    else
444        ./Setup configure --user
445        ./Setup build
446        ./Setup copy
447        ./Setup register --inplace
448    fi
449    cd ..
450done
451
452# stack
453cd %{_builddir}
454for pkg in `cat %{SOURCE2}`; do
455    %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
456    cd ${pkg}
457    # fix wrong dependencies
458    CABALNAME=`echo ${pkg} | sed -e 's/\([a-zA-Z0-9-]\+\)-[0-9.]\+/\1.cabal/'`
459    %{__cp} %{_sourcedir}/${CABALNAME} .
460
461    case ${pkg} in
462        "stack-%{stack_version}") cabal install --enable-documentation ;;
463        *)                        cabal install --force-reinstalls ;;
464    esac
465    cd ..
466done
467
468%install
469# stack
470%{__install} -m 755 ${HOME}/.cabal/bin/stack \
471 ${RPM_BUILD_ROOT}%{_bindir}
472
473cd ${HOME}/.cabal/share/doc/%{rpmarch}-linux-ghc-%{ghc_version}
474%{__mv} stack-%{stack_version} \
475 ${RPM_BUILD_ROOT}%{_docdir}/%{name}-%{version}
476
477# hscolour
478cd ${RPM_BUILD_ROOT}%{_bindir}
479%{__ln_s} HsColour hscolour
480
481%clean
482%{__rm} -rf ${RPM_BUILD_ROOT}
483
484%post
485ghc-pkg recache
486
487%postun
488ghc-pkg recache
489
490
491%files
492%defattr(-, root, root)
493%{_bindir}/
494%{_libdir}/%{name}-%{version}/
495%{_libdir}/ghc-%{ghc_version}/package.conf.d/
496%{_datadir}/%{name}-%{version}/
497%{_docdir}/%{name}-%{version}/
498%{_mandir}/man1/
499
500
501%changelog
502* Sat Jan 06 2018 Toshiaki Ara <ara_t@384.jp> 2017.8.2.2-1
503- update to 8.2.2
504
505* Wed Feb 01 2017 Toshiaki Ara <ara_t@384.jp> 2016.8.0.1-1
506- update to 2016.8.0.1
507
508* Tue May 03 2016 Toshiaki Ara <ara_t@384.jp> 2015.7.10.3-3
509- modify SPEC file without usage of cabal-install
510
511* Mon Apr 11 2016 Toshiaki Ara <ara_t@384.jp> 2015.7.10.3-2
512- correct SPEC file
513
514* Fri Feb 19 2016 Toshiaki Ara <ara_t@384.jp> 2015.7.10.3-1
515- update to 7.10.3
516
517* Mon Feb 15 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-4
518- delete subpackage cabal-install
519- delete %%{cabal_version} from Requires: cabal-install-%%{cabal_version}
520- add BuildRequires: libffi-devel
521
522* Thu Feb 11 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-3
523- correct Requires
524
525* Thu Feb 11 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-2
526- install Haskell libraries into %%{_libdir}/ghc-lib
527- add BuildRequires: hscolour
528- devide insto subpackages
529
530* Thu Feb 04 2016 Toshiaki Ara <ara_t@384.jp> 2013.2.0.0-1
531- new package
532
Note: See TracBrowser for help on using the repository browser.