|
@@ -1,8 +1,6 @@
|
|
%define pkg_name xmonad
|
|
%define pkg_name xmonad
|
|
%define pkg_version 0.13
|
|
%define pkg_version 0.13
|
|
-%define pkg_release 1%{?_dist_release}
|
|
|
|
-
|
|
|
|
-%define ghc_version 8.2.2
|
|
|
|
|
|
+%define pkg_release 2%{?_dist_release}
|
|
|
|
|
|
Summary: Lightweight X11 window manager written in Haskell
|
|
Summary: Lightweight X11 window manager written in Haskell
|
|
Summary(ja): Haskellで書かれたタイル型ウィンドウマネージャ
|
|
Summary(ja): Haskellで書かれたタイル型ウィンドウマネージャ
|
|
@@ -14,20 +12,22 @@ License: BSD3
|
|
Group: User Interface/Desktops
|
|
Group: User Interface/Desktops
|
|
URL: http://hackage.haskell.org
|
|
URL: http://hackage.haskell.org
|
|
|
|
|
|
-Source0: %{name}-%{version}.tar.gz
|
|
|
|
-Source1: packages
|
|
|
|
-Source2: xmonad.desktop
|
|
|
|
|
|
+Source0: packages
|
|
|
|
+Source1: xmonad.desktop
|
|
|
|
|
|
-# num=11; for pkg in `cat packages`; do echo "Source${num}: ${pkg}.tar.gz"; num=`expr ${num} + 1`; done
|
|
|
|
-Source11: X11-1.8.tar.gz
|
|
|
|
-Source12: extensible-exceptions-0.1.1.4.tar.gz
|
|
|
|
-Source13: setlocale-1.0.0.5.tar.gz
|
|
|
|
-Source14: utf8-string-1.0.1.1.tar.gz
|
|
|
|
|
|
+# Patch for building ghc-8.4
|
|
|
|
+Source2: xmonad-0.13_using_ghc-8.4.patch
|
|
|
|
|
|
-# to fix wrong dependencies in cabal files
|
|
|
|
-# do not use '-'
|
|
|
|
-%define utf8string_version 1.0.1.1
|
|
|
|
-Source101: utf8-string.cabal
|
|
|
|
|
|
+Source11: X11-1.8.tar.gz
|
|
|
|
+Source12: X11.cabal
|
|
|
|
+Source13: extensible-exceptions-0.1.1.4.tar.gz
|
|
|
|
+Source14: extensible-exceptions.cabal
|
|
|
|
+Source15: setlocale-1.0.0.6.tar.gz
|
|
|
|
+Source16: setlocale.cabal
|
|
|
|
+Source17: utf8-string-1.0.1.1.tar.gz
|
|
|
|
+Source18: utf8-string.cabal
|
|
|
|
+Source19: xmonad-0.13.tar.gz
|
|
|
|
+Source20: xmonad.cabal
|
|
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
|
|
|
|
@@ -36,13 +36,17 @@ BuildRequires: libffi-devel gmp-devel zlib-devel
|
|
|
|
|
|
BuildRequires: libghc-data-default-class
|
|
BuildRequires: libghc-data-default-class
|
|
BuildRequires: libghc-dlist
|
|
BuildRequires: libghc-dlist
|
|
|
|
+BuildRequires: libghc-old-locale
|
|
BuildRequires: libghc-data-default
|
|
BuildRequires: libghc-data-default
|
|
|
|
+BuildRequires: libghc-semigroups
|
|
|
|
|
|
BuildRequires: xorg-x11-devel
|
|
BuildRequires: xorg-x11-devel
|
|
BuildRequires: libXrandr-devel libXinerama-devel
|
|
BuildRequires: libXrandr-devel libXinerama-devel
|
|
BuildRequires: docbook-utils docbook-utils-pdf docbook-style-xsl
|
|
BuildRequires: docbook-utils docbook-utils-pdf docbook-style-xsl
|
|
|
|
|
|
Requires: libXrandr-devel libXinerama-devel
|
|
Requires: libXrandr-devel libXinerama-devel
|
|
|
|
+Requires: haskell-platform-dep
|
|
|
|
+
|
|
|
|
|
|
Vendor: Project Vine
|
|
Vendor: Project Vine
|
|
Distribution: Vine Linux
|
|
Distribution: Vine Linux
|
|
@@ -81,85 +85,70 @@ XmonadはHaskellで設定され、ユーザーが設定ファイルを書くこ
|
|
|
|
|
|
%prep
|
|
%prep
|
|
%{__rm} -rf ${RPM_BUILD_ROOT}
|
|
%{__rm} -rf ${RPM_BUILD_ROOT}
|
|
-%{__rm} -rf %{_builddir}/package.conf
|
|
|
|
-%{__rm} -rf ${HOME}/.ghc
|
|
|
|
-%setup -q
|
|
|
|
-
|
|
|
|
-# Initialise the package db
|
|
|
|
-ghc-pkg init %{_builddir}/package.conf
|
|
|
|
|
|
|
|
%build
|
|
%build
|
|
-PKG_CONF_DIR=${RPM_BUILD_ROOT}%{_libdir}/ghc-%{ghc_version}/package.conf.d
|
|
|
|
-%{__rm} -rf ${PKG_CONF_DIR}
|
|
|
|
-%{__mkdir_p} ${PKG_CONF_DIR}
|
|
|
|
|
|
+%ghc_pkg_init
|
|
|
|
|
|
-# install dependent packages
|
|
|
|
cd %{_builddir}
|
|
cd %{_builddir}
|
|
-for pkg in `cat %{SOURCE1}`; do
|
|
|
|
- %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
|
|
|
|
- cd ${pkg}
|
|
|
|
- case ${pkg} in
|
|
|
|
- "utf8-string-%{utf8string_version}") %{__cp} %{SOURCE101} . ;;
|
|
|
|
- *) ;;
|
|
|
|
- esac
|
|
|
|
-
|
|
|
|
- cabal configure \
|
|
|
|
- --prefix=%{_prefix} \
|
|
|
|
- --libdir=%{_libdir}/ghc-lib/%{name}/${pkg} \
|
|
|
|
- --libsubdir= \
|
|
|
|
- --datadir=%{_datadir}/%{name}/${pkg} \
|
|
|
|
- --datasubdir= \
|
|
|
|
- --docdir=%{_docdir}/%{name}/${pkg}
|
|
|
|
-
|
|
|
|
- cabal build
|
|
|
|
- cabal haddock
|
|
|
|
- cabal copy --destdir=${RPM_BUILD_ROOT}
|
|
|
|
- cabal register --inplace
|
|
|
|
- cabal register --gen-pkg-config=${PKG_CONF_DIR}/%{name}_${pkg}.conf
|
|
|
|
- cd ..
|
|
|
|
|
|
+for pkg in `sed '$d' %{SOURCE0}`; do
|
|
|
|
+ %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
|
|
|
|
+ pushd ${pkg}
|
|
|
|
+ %ghc_fix_dependencies ${pkg}
|
|
|
|
+ %cabal_configure2 %{name} ${pkg}
|
|
|
|
+ %cabal_build
|
|
|
|
+ %cabal_haddock
|
|
|
|
+ %cabal_copy_resister %{name}_${pkg}
|
|
|
|
+ popd
|
|
done
|
|
done
|
|
|
|
|
|
# build xmonad
|
|
# build xmonad
|
|
-cd %{_builddir}/%{name}-%{version}
|
|
|
|
-cabal configure \
|
|
|
|
- --prefix=%{_prefix} \
|
|
|
|
- --libdir=%{_libdir}/ghc-lib/%{name}/%{name}-%{version} \
|
|
|
|
- --libsubdir= \
|
|
|
|
- --datadir=%{_datadir}/%{name}/%{name}-%{version} \
|
|
|
|
- --datasubdir= \
|
|
|
|
- --docdir=%{_docdir}/%{name}/%{name}-%{version}
|
|
|
|
-
|
|
|
|
-cabal build
|
|
|
|
-cabal haddock
|
|
|
|
-cabal copy --destdir=${RPM_BUILD_ROOT}
|
|
|
|
-cabal register --inplace
|
|
|
|
-cabal register --gen-pkg-config=${PKG_CONF_DIR}/%{pkg_name}-%{version}.conf
|
|
|
|
|
|
+for pkg in `tail -n 1 %{SOURCE0}`; do
|
|
|
|
+ %{__tar} xzf %{_sourcedir}/${pkg}.tar.gz
|
|
|
|
+ pushd ${pkg}
|
|
|
|
+ %ghc_fix_dependencies ${pkg}
|
|
|
|
+
|
|
|
|
+ # Patch for building ghc-8.4
|
|
|
|
+ %{__patch} -p1 < %{SOURCE2}
|
|
|
|
+
|
|
|
|
+ %cabal_configure2 %{name} %{name}-%{version}
|
|
|
|
+ %cabal_build
|
|
|
|
+ %cabal_haddock
|
|
|
|
+ %cabal_copy_resister %{pkgname}-%{version}
|
|
|
|
+ popd
|
|
|
|
+done
|
|
|
|
+
|
|
|
|
|
|
%install
|
|
%install
|
|
%{__mkdir_p} ${RPM_BUILD_ROOT}%{_datadir}/man/man1
|
|
%{__mkdir_p} ${RPM_BUILD_ROOT}%{_datadir}/man/man1
|
|
-(cd ${RPM_BUILD_ROOT}%{_datadir}/%{name}/%{name}-%{version}/man
|
|
|
|
- %{__mv} xmonad.1 ${RPM_BUILD_ROOT}%{_datadir}/man/man1
|
|
|
|
- %{__mv} xmonad.1.html xmonad.hs \
|
|
|
|
- ${RPM_BUILD_ROOT}%{_docdir}/%{name}/%{name}-%{version}
|
|
|
|
-)
|
|
|
|
|
|
+
|
|
|
|
+# copy man file
|
|
|
|
+pushd ${RPM_BUILD_ROOT}%{_datadir}/%{name}/%{name}-%{version}/man
|
|
|
|
+ %{__mv} xmonad.1 ${RPM_BUILD_ROOT}%{_datadir}/man/man1
|
|
|
|
+ %{__mv} xmonad.1.html xmonad.hs \
|
|
|
|
+ ${RPM_BUILD_ROOT}%{_docdir}/%{name}/%{name}-%{version}
|
|
|
|
+popd
|
|
|
|
+
|
|
%{__rm} -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-%{version}/man
|
|
%{__rm} -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-%{version}/man
|
|
|
|
|
|
# xsession desktop entry
|
|
# xsession desktop entry
|
|
%{__mkdir_p} %{buildroot}%{_datadir}/xsessions/
|
|
%{__mkdir_p} %{buildroot}%{_datadir}/xsessions/
|
|
-%{__install} -m 644 %{SOURCE2} ${RPM_BUILD_ROOT}%{_datadir}/xsessions/
|
|
|
|
|
|
+%{__install} -m 644 %{SOURCE1} ${RPM_BUILD_ROOT}%{_datadir}/xsessions/
|
|
|
|
|
|
-%{__cp} CHANGES.md LICENSE README.md STYLE \
|
|
|
|
- ${RPM_BUILD_ROOT}%{_docdir}/%{name}/%{name}-%{version}
|
|
|
|
|
|
+# copy documents
|
|
|
|
+pushd %{_builddir}/%{name}-%{version}
|
|
|
|
+ %{__cp} CHANGES.md LICENSE README.md STYLE \
|
|
|
|
+ ${RPM_BUILD_ROOT}%{_docdir}/%{name}/%{name}-%{version}
|
|
|
|
+popd
|
|
|
|
|
|
%clean
|
|
%clean
|
|
%{__rm} -rf ${RPM_BUILD_ROOT}
|
|
%{__rm} -rf ${RPM_BUILD_ROOT}
|
|
|
|
|
|
|
|
|
|
%post
|
|
%post
|
|
-ghc-pkg recache
|
|
|
|
|
|
+%ghc_pkg_recache
|
|
|
|
|
|
%postun
|
|
%postun
|
|
-ghc-pkg recache
|
|
|
|
|
|
+%ghc_pkg_recache
|
|
|
|
|
|
|
|
|
|
%files
|
|
%files
|
|
@@ -173,7 +162,14 @@ ghc-pkg recache
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
%changelog
|
|
-* Tue Jan 09 2018 Toshiaki Ara <ara_t@384.jp> 0.13
|
|
|
|
|
|
+* Fri May 18 2018 Toshiaki Ara <ara_t@384.jp> 0.13-2
|
|
|
|
+- rebuild using ghc-8.4.2
|
|
|
|
+- add Patch for building with ghc-8.4 (Source2)
|
|
|
|
+- add BuildRequires: libghc-old-locale
|
|
|
|
+- add BuildRequires: libghc-semigroups
|
|
|
|
+- rewrite using macro
|
|
|
|
+
|
|
|
|
+* Tue Jan 09 2018 Toshiaki Ara <ara_t@384.jp> 0.13-1
|
|
- update to 0.13
|
|
- update to 0.13
|
|
- build using ghc-8.2.2
|
|
- build using ghc-8.2.2
|
|
|
|
|