]> TLD Linux GIT Repositories - packages/ghc.git/commitdiff
- merged 8.10.7 from PLD
authorMarcin Krol <hawk@tld-linux.org>
Fri, 21 Jul 2023 00:02:50 +0000 (02:02 +0200)
committerMarcin Krol <hawk@tld-linux.org>
Fri, 21 Jul 2023 00:02:50 +0000 (02:02 +0200)
build.patch [new file with mode: 0644]
buildpath-abi-stability.patch [new file with mode: 0644]
ghc-pkgdir.patch
ghc-tld.patch
ghc-use-ld.bfd.patch [deleted file]
ghc-winpaths.patch [deleted file]
ghc.spec
x32-use-native-x86_64-insn.patch [new file with mode: 0644]

diff --git a/build.patch b/build.patch
new file mode 100644 (file)
index 0000000..e423490
--- /dev/null
@@ -0,0 +1,11 @@
+--- ghc-8.8.2/configure.ac~    2020-01-12 23:14:36.000000000 +0100
++++ ghc-8.8.2/configure.ac     2020-01-19 16:08:44.055164413 +0100
+@@ -228,7 +228,7 @@ then
+     echo "This GHC (${WithGhc}) does not generate code for the build platform"
+     echo "   GHC target platform    : $bootstrap_target"
+     echo "   Desired build platform : $BuildPlatform"
+-    exit 1
++    #exit 1
+ fi
+ # Testing if we shall enable shared libs support on Solaris.
diff --git a/buildpath-abi-stability.patch b/buildpath-abi-stability.patch
new file mode 100644 (file)
index 0000000..0fd5668
--- /dev/null
@@ -0,0 +1,25 @@
+Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424
+
+Index: ghc-8.8.1+dfsg1/compiler/iface/MkIface.hs
+===================================================================
+--- ghc-8.8.1+dfsg1.orig/compiler/iface/MkIface.hs
++++ ghc-8.8.1+dfsg1/compiler/iface/MkIface.hs
+@@ -713,7 +713,7 @@
+    iface_hash <- computeFingerprint putNameLiterally
+                       (mod_hash,
+                        ann_fn (mkVarOcc "module"),  -- See mkIfaceAnnCache
+-                       mi_usages iface0,
++                       usages,
+                        sorted_deps,
+                        mi_hpc iface0)
+@@ -748,6 +748,9 @@
+     (non_orph_rules, orph_rules) = mkOrphMap ifRuleOrph    (mi_rules iface0)
+     (non_orph_fis,   orph_fis)   = mkOrphMap ifFamInstOrph (mi_fam_insts iface0)
+     ann_fn = mkIfaceAnnCache (mi_anns iface0)
++    -- Do not allow filenames to affect the interface
++    usages = [ case u of UsageFile _ fp -> UsageFile "" fp; _ -> u | u <- mi_usages iface0 ]
++
+ -- | Retrieve the orphan hashes 'mi_orphan_hash' for a list of modules
+ -- (in particular, the orphan modules which are transitively imported by the
index ed415e78ae1035f9beb51fd54958d0ba54821268..6c9147845e9b0ffe4115ec1e98a33c35fc9046c1 100644 (file)
@@ -1,20 +1,37 @@
---- ghc-6.12.3/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs~       2010-06-09 20:10:19.000000000 +0200
-+++ ghc-6.12.3/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs        2010-08-26 21:28:52.969002660 +0200
-@@ -205,7 +205,7 @@
+--- ghc-8.10.1/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs.orig   2019-12-30 03:32:20.000000000 +0100
++++ ghc-8.10.1/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs        2020-05-23 10:10:45.902028639 +0200
+@@ -161,7 +161,7 @@
  -- users to be able to configure @--libdir=\/usr\/lib64@ for example but
  -- because by default we want to support installing multiple versions of
  -- packages and building the same package for multiple compilers we append the
---- libsubdir to get: @\/usr\/lib64\/$pkgid\/$compiler@.
-+-- libsubdir to get: @\/usr\/lib64\/$compiler\/$pkgid@.
+--- libsubdir to get: @\/usr\/lib64\/$libname\/$compiler@.
++-- libsubdir to get: @\/usr\/lib64\/$compiler\/$libname@.
  --
  -- An additional complication is the need to support relocatable packages on
  -- systems which support such things, like Windows.
-@@ -236,7 +236,7 @@
-            JHC    -> "$compiler"
-            LHC    -> "$compiler"
+@@ -204,11 +204,11 @@
+       libdir       = installLibDir,
+       libsubdir    = case comp of
             UHC    -> "$pkgid"
--           _other -> "$pkgid" </> "$compiler",
+-           _other -> "$abi" </> "$libname",
 +           _other -> "$compiler" </> "$pkgid",
-       dynlibdir    = "$libdir",
+       dynlibdir    = "$libdir" </> case comp of
+            UHC    -> "$pkgid"
+-           _other -> "$abi",
+-      libexecsubdir= "$abi" </> "$pkgid",
++           _other -> "$compiler" </> "$pkgid",
++      libexecsubdir= "$pkgid",
+       flibdir      = "$libdir",
        libexecdir   = case buildOS of
-         Windows   -> "$prefix" </> "$pkgid"
+         Windows   -> "$prefix" </> "$libname"
+@@ -217,8 +217,8 @@
+       datadir      = case buildOS of
+         Windows   -> "$prefix"
+         _other    -> "$prefix" </> "share",
+-      datasubdir   = "$abi" </> "$pkgid",
+-      docdir       = "$datadir" </> "doc" </> "$abi" </> "$pkgid",
++      datasubdir   = "$pkgid",
++      docdir       = "$datadir" </> "doc" </> "$pkgid",
+       mandir       = "$datadir" </> "man",
+       htmldir      = "$docdir"  </> "html",
+       haddockdir   = "$htmldir",
index 5fe4800c74bba4ac19360ea233c122d56a5ac0bf..a911e4c0d0f960ef7f80b4b0878d33e4e56df087 100644 (file)
@@ -8,36 +8,32 @@
 +        i386|i486|i586|i686)
              test -z "[$]2" || eval "[$]2=ArchX86"
              ;;
-         x86_64)
-@@ -185,7 +185,7 @@
+         x86_64|amd64)
+@@ -229,7 +229,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_V
  
      checkVendor() {
          case [$]1 in
--        dec|unknown|hp|apple|next|sun|sgi|ibm)
-+        tld|dec|unknown|hp|apple|next|sun|sgi|ibm)
+-        dec|none|unknown|hp|apple|next|sun|sgi|ibm|montavista|portbld|alpine)
++        dec|none|unknown|hp|apple|next|sun|sgi|ibm|montavista|portbld|alpine|tld)
              ;;
          *)
-             echo "Unknown vendor [$]1"
---- ghc-6.12.1/libraries/terminfo/configure.ac~        2009-09-15 08:09:05.000000000 +0200
-+++ ghc-6.12.1/libraries/terminfo/configure.ac 2010-04-08 16:43:45.040705349 +0200
-@@ -13,7 +13,8 @@
-     [curses_libraries=NONE])
--TERMINFO_INCLUDE_DIRS=
-+TERMINFO_INCLUDE_DIRS=/usr/include/ncursesw
-+CPPFLAGS="-I/usr/include/ncursesw $CPPFLAGS"
- TERMINFO_LIB_DIRS=
- if test "x$curses_libraries" != "xNONE"; then
-   LDFLAGS="-L$curses_libraries $LDFLAGS"
---- ghc-7.2.1/driver/split/ghc-split.lprl~     2011-08-07 19:10:05.000000000 +0200
-+++ ghc-7.2.1/driver/split/ghc-split.lprl      2011-09-26 11:13:36.907176266 +0200
-@@ -225,7 +225,7 @@
-                             if $TargetPlatform =~ /-apple-darwin/m;
-     return(&process_asm_block_m68k($str))  if $TargetPlatform =~ /^m68k-/m;
-     return(&process_asm_block_sparc($str)) if $TargetPlatform =~ /^sparc-/m;
--    return(&process_asm_block_iX86($str))  if $TargetPlatform =~ /^i[34]86-/m;
-+    return(&process_asm_block_iX86($str))  if $TargetPlatform =~ /^i[3456]86-/m;
-     return(&process_asm_block_x86_64($str))  if $TargetPlatform =~ /^x86_64-/m;
-     return(&process_asm_block_alpha($str)) if $TargetPlatform =~ /^alpha-/m;
-     return(&process_asm_block_hppa($str))  if $TargetPlatform =~ /^hppa/m;
+             AC_MSG_WARN([Unknown vendor [$]1])
+--- ghc-8.10.7/utils/llvm-targets/gen-data-layout.sh.orig      2021-06-21 08:54:36.000000000 +0200
++++ ghc-8.10.7/utils/llvm-targets/gen-data-layout.sh   2022-03-17 13:21:10.641498496 +0100
+@@ -54,13 +54,16 @@
+     "aarch64-unknown-linux-gnu"
+     "aarch64-unknown-linux-musl"
+     "aarch64-unknown-linux"
++    "aarch64-tld-linux"
+     # Linux x86
+     "i386-unknown-linux-gnu"
+     "i386-unknown-linux-musl"
+     "i386-unknown-linux"
++    "i686-tld-linux"
+     "x86_64-unknown-linux-gnu"
+     "x86_64-unknown-linux-musl"
+     "x86_64-unknown-linux"
++    "x86_64-tld-linux"
+     # Linux Android
+     "x86_64-unknown-linux-android"
+     "armv7-unknown-linux-androideabi"
diff --git a/ghc-use-ld.bfd.patch b/ghc-use-ld.bfd.patch
deleted file mode 100644 (file)
index 3501462..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- ghc-7.6.3/libraries/Cabal/Cabal/Distribution/Simple/Program/Builtin.hs~    2013-04-18 23:32:04.000000000 +0200
-+++ ghc-7.6.3/libraries/Cabal/Cabal/Distribution/Simple/Program/Builtin.hs     2013-05-31 11:01:32.228834060 +0200
-@@ -255,7 +255,7 @@
- greencardProgram = simpleProgram "greencard"
- ldProgram :: Program
--ldProgram = simpleProgram "ld"
-+ldProgram = simpleProgram "ld.bfd"
- tarProgram :: Program
- tarProgram = simpleProgram "tar"
diff --git a/ghc-winpaths.patch b/ghc-winpaths.patch
deleted file mode 100644 (file)
index 8239af3..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-diff -ur ghc-7.2.1-winpaths/docs/users_guide/ghci.xml ghc-7.2.1/docs/users_guide/ghci.xml
---- ghc-7.2.1-winpaths/docs/users_guide/ghci.xml       2011-09-26 17:55:05.824214356 +0200
-+++ ghc-7.2.1/docs/users_guide/ghci.xml        2011-08-07 19:10:05.000000000 +0200
-@@ -126,7 +126,7 @@
-     directory of the shell from which it was started.  If you started
-     GHCi from the &ldquo;Start&rdquo; menu in Windows, then the
-     current directory is probably something like
--    <filename>C:\Documents and Settings\<replaceable>user
-+    <filename>C:\\Documents and Settings\\<replaceable>user
-     name</replaceable></filename>.</para> </footnote> then we will
-     need to change to the right directory in GHCi:</para>
-diff -ur ghc-7.2.1-winpaths/docs/users_guide/packages.xml ghc-7.2.1/docs/users_guide/packages.xml
---- ghc-7.2.1-winpaths/docs/users_guide/packages.xml   2011-09-26 17:56:23.484450567 +0200
-+++ ghc-7.2.1/docs/users_guide/packages.xml    2011-08-07 19:10:05.000000000 +0200
-@@ -396,7 +396,7 @@
-           systems this will be
-           <filename>$HOME/.ghc/<replaceable>arch</replaceable>-<replaceable>os</replaceable>-<replaceable>version</replaceable>/package.conf.d</filename>, and on
-           Windows it will be something like
--          <filename>C:\Documents&nbsp;And&nbsp;Settings\<replaceable>user</replaceable>\ghc\package.conf.d</filename>.
-+          <filename>C:\\Documents&nbsp;And&nbsp;Settings\\<replaceable>user</replaceable>\\ghc\\package.conf.d</filename>.
-           The <literal>ghc-pkg</literal> tool knows where this file should be
-           located, and will create it if it doesn't exist (see <xref linkend="package-management" />).</para>
-       </listitem>
-diff -ur ghc-7.2.1-winpaths/docs/users_guide/using.xml ghc-7.2.1/docs/users_guide/using.xml
---- ghc-7.2.1-winpaths/docs/users_guide/using.xml      2011-09-26 17:58:56.791496986 +0200
-+++ ghc-7.2.1/docs/users_guide/using.xml       2011-08-07 19:10:05.000000000 +0200
-@@ -72,7 +72,7 @@
-       by directory separators).  For example, the
-       module <literal>Data.Person</literal> would be in the
-       file <filename>Data/Person.hs</filename> on Unix/Linux/Mac,
--      or <filename>Data\Person.hs</filename> on Windows.
-+      or <filename>Data\\Person.hs</filename> on Windows.
-     </para>
-   </sect1>
-diff -ur ghc-7.2.1-winpaths/docs/users_guide/win32-dlls.xml ghc-7.2.1/docs/users_guide/win32-dlls.xml
---- ghc-7.2.1-winpaths/docs/users_guide/win32-dlls.xml 2011-09-26 17:58:03.182366314 +0200
-+++ ghc-7.2.1/docs/users_guide/win32-dlls.xml  2011-08-07 19:10:05.000000000 +0200
-@@ -14,7 +14,7 @@
- Be aware of that <command>ghc</command> and <command>ghci</command> do
- require filenames containing spaces to be escaped using quotes:
- <programlisting>
--  c:\ghc\bin\ghci "c:\\Program Files\\Haskell\\Project.hs"
-+  c:\\ghc\\bin\\ghci "c:\\Program Files\\Haskell\\Project.hs"
- </programlisting>
- If the quotes are left off in the above command, <command>ghci</command> will
- interpret the filename as two, "c:\\Program" and "Files\\Haskell\\Project.hs".
-@@ -134,13 +134,13 @@
- unix-style API on top of the windows libraries, to facilitate ports of
- unix software to windows. To this end, they introduce a unix-style
- directory hierarchy under some root directory (typically
--<filename>/</filename> is <filename>C:\cygwin\</filename>). Moreover,
-+<filename>/</filename> is <filename>C:\\cygwin\\</filename>). Moreover,
- everything built against the cygwin API (including the cygwin tools
- and programs compiled with cygwin's ghc) will see / as the root of
- their file system, happily pretending to work in a typical unix
- environment, and finding things like <filename>/bin</filename> and <filename>/usr/include</filename> without
- ever explicitly bothering with their actual location on the windows
--system (probably <filename>C:\cygwin\bin</filename> and <filename>C:\cygwin\usr\include</filename>).
-+system (probably <filename>C:\\cygwin\\bin</filename> and <filename>C:\\cygwin\\usr\\include</filename>).
- </para>
- </sect2>
index 4e35a3b47dd0d36cfd08906d89ee849fd9796730..d6c4c6fe3e53bcc365fa0453d671e3c79d4a9449 100644 (file)
--- a/ghc.spec
+++ b/ghc.spec
 #
 # - http://hackage.haskell.org/trac/ghc/wiki/Building/Porting
 #
-# TODO:
-#      - teach ghc toolchain to always use ld.bfd,
-#        or fix ld.gold to be usable for anything else than c/c++
-#
 # Conditional build:
 %bcond_with    bootstrap       # use foreign (non-rpm) ghc to bootstrap (extra 140MB to download)
-%bcond_with    unregistered    # non-registerised interpreter (use for build problems/new arches)
+%ifarch x32
+%bcond_without unregisterised  # non-registerised interpreter (use for build problems/new arches)
+%else
+%bcond_with    unregisterised  # non-registerised interpreter (use for build problems/new arches)
+%endif
+%bcond_without system_libffi   # use bundled or system provided libffi
 %bcond_without doc             # don't build documentation (requires haddock)
 
 # included ghc package versions:
-%define                gpv_Cabal               1.16.0
-%define                gpv_array               0.4.0.1
-%define                gpv_base                4.6.0.1
+%define                gpv_Cabal               3.2.1.0
+%define                gpv_array               0.5.4.0
+%define                gpv_base                4.14.3.0
 %define                gpv_bin_package_db      0.0.0.0
-%define                gpv_binary              0.5.1.1
-%define                gpv_bytestring          0.10.0.2
-%define                gpv_containers          0.5.0.0
-%define                gpv_deepseq             1.3.0.1
-%define                gpv_directory           1.2.0.1
-%define                gpv_filepath            1.3.0.1
-%define                gpv_ghc_prim            0.3.0.0
-%define                gpv_haskell2010         1.1.1.0
-%define                gpv_haskell98           2.0.0.2
-%define                gpv_hoopl               3.9.0.0
-%define                gpv_hpc                 0.6.0.0
-%define                gpv_integer_gmp         0.5.0.0
-%define                gpv_old_locale          1.0.0.5
-%define                gpv_old_time            1.1.0.1
-%define                gpv_pretty              1.1.1.0
-%define                gpv_process             1.1.0.2
-%define                gpv_template_haskell    2.8.0.0
-%define                gpv_time                1.4.0.1
-%define                gpv_unix                2.6.0.1
+%define                gpv_binary              0.8.8.0
+%define                gpv_bytestring          0.10.12.0
+%define                gpv_containers          0.6.5.1
+%define                gpv_deepseq             1.4.4.0
+%define                gpv_directory           1.3.6.0
+%define                gpv_exceptions          0.10.4
+%define                gpv_filepath            1.4.2.1
+%define                gpv_ghc_compact         0.1.0.0
+%define                gpv_ghc_prim            0.6.1
+%define                gpv_haskeline           0.8.2
+%define                gpv_hpc                 0.6.1.0
+%define                gpv_integer_gmp         1.0.3.0
+%define                gpv_integer_simple      0.1.2.0
+%define                gpv_mtl                 2.2.2
+%define                gpv_parsec              3.1.14.0
+%define                gpv_pretty              1.1.3.6
+%define                gpv_process             1.6.13.2
+%define                gpv_stm                 2.5.0.1
+%define                gpv_template_haskell    2.16.0.0
+%define                gpv_terminfo            0.4.1.4
+%define                gpv_text                1.2.4.1
+%define                gpv_time                1.9.3
+%define                gpv_transformers        0.5.6.2
+%define                gpv_unix                2.7.2.2
+%define                gpv_xhtml               3000.2.2.1
+
+%define                bootversion             8.10.7
+
+# native code generator (-fasm) support
+%ifarch %{ix86} %{x8664} ppc ppc64 ppc64le sparc
+%define                with_ncg        1
+%endif
+
+# archs with upstream support for which bootstrap binaries are provided
+%define                official_archs          %{ix86} %{x8664} aarch64
 
 Summary:       Glasgow Haskell Compilation system
 Summary(pl.UTF-8):     System kompilacji Glasgow Haskell
 Name:          ghc
-Version:       7.6.3
-Release:       7
+Version:       8.10.7
+Release:       2
 License:       BSD-like w/o adv. clause
 Group:         Development/Languages
-Source0:       http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.bz2
-# Source0-md5: 986d1f90ca30d60f7b2820d75c6b8ea7
+Source0:       https://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.xz
+# Source0-md5: d618250bf956bb6ea2628f7ec97c6ed4
 %if %{with bootstrap}
-Source3:       http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-i386-unknown-linux.tar.bz2
-# Source3-md5: 37019b712ec6e5fb0732c27fb43667ee
-Source4:       http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-x86_64-unknown-linux.tar.bz2
-# Source4-md5: 5c142b86355cfd390cd36c292e416db5
+Source3:       https://downloads.haskell.org/~ghc/%{bootversion}/%{name}-%{bootversion}-i386-deb9-linux.tar.xz
+# Source3-md5: ed69fd3ed46efd9dcd954e54166712b5
+Source4:       https://downloads.haskell.org/~ghc/%{bootversion}/%{name}-%{bootversion}-x86_64-deb9-linux.tar.xz
+# Source4-md5: e4905d2c51a144479c264d67108297fe
+Source5:       http://ftp.ports.debian.org/debian-ports/pool-x32/main/g/ghc/ghc_8.8.3-1~exp2_x32.deb
+# Source5-md5: b912b87c8d9450d140ae773083edecb0
+Source6:       https://downloads.haskell.org/~ghc/%{bootversion}/%{name}-%{bootversion}-aarch64-deb10-linux.tar.lz
+# Source6-md5: 9ffb05a373de6b98daaab2176f208f31
 %endif
 Patch0:                %{name}-tld.patch
 Patch1:                %{name}-pkgdir.patch
-Patch2:                %{name}-winpaths.patch
-Patch3:                %{name}-use-ld.bfd.patch
+Patch3:                build.patch
+Patch4:                buildpath-abi-stability.patch
+Patch5:                x32-use-native-x86_64-insn.patch
 URL:           http://haskell.org/ghc/
 BuildRequires: OpenAL-devel
 BuildRequires: OpenGL-GLU-devel
 BuildRequires: OpenGL-devel
 BuildRequires: OpenGL-glut-devel
-%{!?with_bootstrap:BuildRequires:      alex >= 2.0}
+BuildRequires: bash
+BuildRequires: binutils >= 4:2.30
 BuildRequires: freealut-devel
-%{!?with_bootstrap:BuildRequires:      ghc >= 6.8}
 BuildRequires: gmp-devel
-%{!?with_bootstrap:BuildRequires:      happy >= 1.16}
-BuildRequires: ncurses-devel
+%{?with_system_libffi:BuildRequires:   libffi-devel}
+BuildRequires: lzip
+BuildRequires: ncurses-devel >= 6.3.20211120-2
+BuildRequires: numactl-devel
 BuildRequires: readline-devel
-BuildRequires: rpmbuild(macros) >= 1.607
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 2.005
 BuildRequires: sed >= 4.0
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+%if %{with bootstrap}
+%ifarch %{official_archs}
+BuildRequires: compat-ncurses5
+%endif
+%if %{without unregisterised} && %{without ncg}
+BuildRequires: llvm >= 9
+%endif
+BuildRequires: numactl-libs
+%else
+BuildRequires: alex >= 2.0
+BuildRequires: ghc >= 8.6
+BuildRequires: happy >= 1.16
+%endif
 %if %{with doc}
 BuildRequires: dblatex
 BuildRequires: docbook-dtd42-xml
@@ -87,44 +127,68 @@ BuildRequires:     texlive-latex-bibtex
 BuildRequires: texlive-latex-other
 BuildRequires: texlive-makeindex
 BuildRequires: texlive-tex4ht
+BuildRequires: texlive-tex-xkeyval
 BuildRequires: texlive-xetex
+#BuildRequires:        tetex-latex-ltxcmds
+BuildRequires: latexmk
 #For generating documentation in PDF: fop or xmltex
+BuildRequires: sphinx-pdg-3
 %endif
-Suggests:      ghc-haskell-platform
-Provides:      ghc-Cabal = %{gpv_Cabal}
+Requires:      gcc
+Requires:      glibc-headers
+Requires:      gmp-devel
+%{?with_system_libffi:BuildRequires:   libffi-devel}
+%if %{without unregisterised} && %{without ncg}
+# targets without ncg use llvm backend by default which requires llc/opt
+Requires:      llvm >= 9
+%endif
+Requires:      numactl-devel
 Provides:      ghc-array = %{gpv_array}
 Provides:      ghc-base = %{gpv_base}
-Provides:      ghc-bin-package-db = %{gpv_bin_package_db}
 Provides:      ghc-binary = %{gpv_binary}
+Provides:      ghc-bin_package_db = %{gpv_bin_package_db}
 Provides:      ghc-bytestring = %{gpv_bytestring}
+Provides:      ghc-Cabal = %{gpv_Cabal}
 Provides:      ghc-containers = %{gpv_containers}
 Provides:      ghc-deepseq = %{gpv_deepseq}
 Provides:      ghc-directory = %{gpv_directory}
+Provides:      ghc-exceptions = %{gpv_exceptions}
 Provides:      ghc-filepath = %{gpv_filepath}
+Provides:      ghc-ghc-compact = %{gpv_ghc_compact}
 Provides:      ghc-ghc-prim = %{gpv_ghc_prim}
-Provides:      ghc-haskell2010 = %{gpv_haskell2010}
-Provides:      ghc-haskell98 = %{gpv_haskell98}
-Provides:      ghc-hoopl = %{gpv_hoopl}
+Provides:      ghc-haskeline = %{gpv_haskeline}
 Provides:      ghc-hpc = %{gpv_hpc}
+%ifnarch x32
 Provides:      ghc-integer-gmp = %{gpv_integer_gmp}
-Provides:      ghc-old-locale = %{gpv_old_locale}
-Provides:      ghc-old-time = %{gpv_old_time}
+%else
+Provides:      ghc-integer-simple = %{gpv_integer_simple}
+%endif
+Provides:      ghc-mtl = %{gpv_mtl}
+Provides:      ghc-parsec = %{gpv_parsec}
 Provides:      ghc-pretty = %{gpv_pretty}
 Provides:      ghc-process = %{gpv_process}
+Provides:      ghc-stm = %{gpv_stm}
 Provides:      ghc-template-haskell = %{gpv_template_haskell}
+Provides:      ghc-terminfo = %{gpv_terminfo}
+Provides:      ghc-text = %{gpv_text}
 Provides:      ghc-time = %{gpv_time}
+Provides:      ghc-transformers = %{gpv_transformers}
 Provides:      ghc-unix = %{gpv_unix}
+Provides:      ghc-xhtml = %{gpv_xhtml}
+Suggests:      ghc-haskell-platform
+%if %{without unregisterised} && %{with ncg}
+Suggests:      llvm >= 9
+%endif
 Provides:      haddock
 Obsoletes:     haddock
-ExclusiveArch: %{ix86} %{x8664}
+ExclusiveArch: %{official_archs} x32
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-# use ld.bfd
-%define                specflags       -fuse-ld=bfd
-
 # There is nothing that may or should be compressed
 %define                _noautocompressdoc      *
 
+%define                _debugsource_packages   0
+
 %description
 Haskell is the standard lazy purely functional programming language.
 The current language version is Haskell 98, agreed in December 1998,
@@ -166,29 +230,38 @@ Summary:  Profiling libraries for GHC
 Summary(pl.UTF-8):     Biblioteki profilujÄ…ce dla GHC
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
-Provides:      ghc-Cabal-prof = %{gpv_Cabal}
 Provides:      ghc-array-prof = %{gpv_array}
 Provides:      ghc-base-prof = %{gpv_base}
-Provides:      ghc-bin-package-db-prof = %{gpv_bin_package_db}
 Provides:      ghc-binary-prof = %{gpv_binary}
+Provides:      ghc-bin_package_db-prof = %{gpv_bin_package_db}
 Provides:      ghc-bytestring-prof = %{gpv_bytestring}
+Provides:      ghc-Cabal-prof = %{gpv_Cabal}
 Provides:      ghc-containers-prof = %{gpv_containers}
 Provides:      ghc-deepseq-prof = %{gpv_deepseq}
 Provides:      ghc-directory-prof = %{gpv_directory}
+Provides:      ghc-exceptions-prof = %{gpv_exceptions}
 Provides:      ghc-filepath-prof = %{gpv_filepath}
+Provides:      ghc-ghc-compact-prof = %{gpv_ghc_compact}
 Provides:      ghc-ghc-prim-prof = %{gpv_ghc_prim}
-Provides:      ghc-haskell2010-prof = %{gpv_haskell2010}
-Provides:      ghc-haskell98-prof = %{gpv_haskell98}
-Provides:      ghc-hoopl-prof = %{gpv_hoopl}
+Provides:      ghc-haskeline-prof = %{gpv_haskeline}
 Provides:      ghc-hpc-prof = %{gpv_hpc}
+%ifnarch x32
 Provides:      ghc-integer-gmp-prof = %{gpv_integer_gmp}
-Provides:      ghc-old-locale-prof = %{gpv_old_locale}
-Provides:      ghc-old-time-prof = %{gpv_old_time}
+%else
+Provides:      ghc-integer-simple-prof = %{gpv_integer_simple}
+%endif
+Provides:      ghc-mtl-prof = %{gpv_mtl}
+Provides:      ghc-parsec-prof = %{gpv_parsec}
 Provides:      ghc-pretty-prof = %{gpv_pretty}
 Provides:      ghc-process-prof = %{gpv_process}
+Provides:      ghc-stm-prof = %{gpv_stm}
 Provides:      ghc-template-haskell-prof = %{gpv_template_haskell}
+Provides:      ghc-terminfo-prof = %{gpv_terminfo}
+Provides:      ghc-text-prof = %{gpv_text}
 Provides:      ghc-time-prof = %{gpv_time}
+Provides:      ghc-transformers-prof = %{gpv_transformers}
 Provides:      ghc-unix-prof = %{gpv_unix}
+Provides:      ghc-xhtml-prof = %{gpv_xhtml}
 
 %description prof
 Profiling libraries for Glorious Glasgow Haskell Compilation System
@@ -203,9 +276,7 @@ potrzebujemy systemu profilujÄ…cego z GHC.
 Summary:       Documentation for GHC
 Summary(pl.UTF-8):     Dokumentacja do GHC
 Group:         Documentation
-%if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
-%endif
 
 %description doc
 Documentation for GHC.
@@ -216,24 +287,51 @@ Dokumentacja do GHC.
 %prep
 %setup -q
 %if %{with bootstrap}
+
+# official binaries
+%ifarch %{official_archs}
 %ifarch %{ix86}
-%{__tar} -xjf %{SOURCE3}
+%{__tar} -xf %{SOURCE3}
 %endif
 %ifarch %{x8664}
-%{__tar} -xjf %{SOURCE4}
+%{__tar} -xf %{SOURCE4}
+%endif
+%ifarch aarch64
+%{__tar} -xf %{SOURCE6}
 %endif
-mv %{name}-%{version} binsrc
+%{__mv} %{name}-%{bootversion} binsrc
 %endif
+
+# debian binaries for x32
+%ifarch x32
+install -d bindist
+cd bindist
+ar x %{SOURCE5}
+tar xf data.tar.xz
+ln -s usr/bin bin
+sed -i -e "s#/usr#$(pwd)/usr#g" bin/{ghc,ghc-pkg,haddock,runghc} var/lib/ghc/*/*.conf
+cp -a usr/lib/ghc/settings{,.org}
+sed -i -e 's#x86_64.*-ld.gold#ld.gold#g' usr/lib/ghc/settings
+sed -i -e 's#x86_64-linux-gnux32#%{_target_base_arch}-%{_target_vendor}-%{_target_os}%{?_gnu}#g' \
+       -e 's#gnux32-ar#gnux32-gcc-ar#g' \
+       -e 's#gnux32-ranlib#gnux32-gcc-ranlib#g' \
+       usr/lib/ghc/settings
+# make it relative
+ln -sf ../../../var/lib/ghc/package.conf.d usr/lib/ghc/package.conf.d
+
+bin/ghc-pkg recache --global
+cd ..
+%endif
+%endif
+
 %patch0 -p1
 %patch1 -p1
-%patch2 -p1
 %patch3 -p1
+%patch4 -p1
+%patch5 -p1
 
 %build
-# use ld.bfd
-install -d our-ld
-ln -s %{_bindir}/ld.bfd our-ld/ld
-export PATH=$(pwd)/our-ld:$PATH
+%{__bash} ./utils/llvm-targets/gen-data-layout.sh > llvm-targets
 
 %{__autoconf}
 cd libraries/terminfo
@@ -248,14 +346,16 @@ cat <<'EOF' > mk/build.mk
 #GhcLibHcOpts     += -O -dcore-lint -keep-hc-files
 #SplitObjs        += NO
 PlatformSupportsSharedLibs = YES
-HADDOCK_DOCS        = %{!?with_doc:NO}%{?with_doc:YES}
+HADDOCK_DOCS        = YES
 LATEX_DOCS          = %{!?with_doc:NO}%{?with_doc:YES}
 BUILD_DOCBOOK_HTMLS = %{!?with_doc:NO}%{?with_doc:YES}
 BUILD_DOCBOOK_PDFS  = %{!?with_doc:NO}%{?with_doc:YES}
+BUILD_SPHINX_HTML   = %{!?with_doc:NO}%{?with_doc:YES}
+BUILD_SPHINX_PDF    = NO
 XSLTPROC_OPTS       += --nonet
 EOF
 
-%if %{with unregistered}
+%if %{with unregisterised}
 # An unregisterised build is one that compiles via vanilla C only
 # http://hackage.haskell.org/trac/ghc/wiki/Building/Unregisterised
 cat <<'EOF' >> mk/build.mk
@@ -263,10 +363,28 @@ GhcUnregisterised=YES
 GhcWithNativeCodeGen=NO
 SplitObjs=NO
 EOF
+
+%ifarch %{ix86} x32
+# Virtual memory exhausted when trying to build unregisterised compiler on
+# 32-bit targets. Disable optimizations for compiler/GHC/Hs/Instances.hs
+# See https://bugs.debian.org/933968
+# See https://gitlab.haskell.org/ghc/ghc/issues/17048
+echo "compiler/GHC/Hs/Instances_HC_OPTS += -O0" >> mk/build.mk
+%endif
+%endif
+
+%ifarch x32
+echo "INTEGER_LIBRARY = integer-simple" >> mk/build.mk
 %endif
 
 top=$(pwd)
 %if %{with bootstrap}
+
+# don't depend on ncurses and do minimal things for bootstrap
+echo "libraries/haskeline_CONFIGURE_OPTS += --flag=-terminfo" >> mk/build.mk
+echo "utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING" >> mk/build.mk
+
+%ifarch %{official_archs}
 # we need to first install the tarball somewhere, as seems the programs don't
 # work out of the path otherwise
 if [ ! -f .bindist.install.mark ]; then
@@ -281,30 +399,25 @@ if [ ! -f .bindist.install.mark ]; then
 
        touch .bindist.install.mark
 fi
+%endif
 
 PATH=$top/bindist/bin:$PATH:%{_prefix}/local/bin
 %endif
 
 %configure \
-       CONF_GCC_LINKER_OPTS_STAGE0="-fuse-ld=bfd" \
-       CONF_GCC_LINKER_OPTS_STAGE1="-fuse-ld=bfd" \
-       CONF_GCC_LINKER_OPTS_STAGE2="-fuse-ld=bfd" \
-       --target=%{_target_platform} \
-       --prefix=%{_prefix} \
-       --with-gcc="%{__cc}" \
-       --with-ld=/usr/bin/ld.bfd \
-       --with-nm=/usr/bin/nm \
 %if %{with bootstrap}
-       GhcPkgCmd=$top/bindist/bin/ghc-pkg \
+       CC_STAGE0="%{__cc}" \
+       GHC=$PWD/bindist/bin/ghc \
 %endif
-%if %{with bootstrap2}
-       --with-ghc=$top/bindist/bin/ghc \
-%endif
-%if %{with bootstrap1}
-       --with-hc=$PWD/bindist/bin/ghc \
-       --with-ghc=$PWD/bindist/ghc/dist-stage2/build/ghc/ghc \
-       --with-hc=$PWD/bindist/ghc/dist-stage2/build/ghc/ghc \
+%if %{with doc}
+       SPHINXBUILD=/usr/bin/sphinx-build-3 \
 %endif
+       --target=%{_target_platform} \
+       --prefix=%{_prefix} \
+       --disable-ld-override \
+       %{?with_system_libffi:--with-system-libffi} \
+       %{?with_unregisterised:--enable-unregisterised} \
+       %{nil}
 
 %{__make}
 
@@ -315,10 +428,14 @@ rm -rf docs-root
 %{__make} -j1 install \
        DESTDIR=$RPM_BUILD_ROOT
 
-mv -f $RPM_BUILD_ROOT%{_docdir}/%{name} docs-root
+%if %{with doc}
+%{__mv} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} docs-root
 
 # fix paths to docs in package list
 sed -i -e 's|%{_datadir}/doc/%{name}|%{_docdir}/%{name}-%{version}|g' $RPM_BUILD_ROOT%{_libdir}/%{name}-%{version}/package.conf.d/*.conf
+%else
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -333,7 +450,7 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc ANNOUNCE README
+%doc README.md
 %attr(755,root,root) %{_bindir}/ghc
 %attr(755,root,root) %{_bindir}/ghc-%{version}
 %attr(755,root,root) %{_bindir}/ghc-pkg
 %attr(755,root,root) %{_bindir}/runghc-%{version}
 %attr(755,root,root) %{_bindir}/runhaskell
 %dir %{_libdir}/ghc-%{version}
-%attr(755,root,root) %{_libdir}/ghc-%{version}/ghc
-%attr(755,root,root) %{_libdir}/ghc-%{version}/ghc-pkg
-%attr(755,root,root) %{_libdir}/ghc-%{version}/ghc-split
-%if %{with doc}
-%attr(755,root,root) %{_libdir}/ghc-%{version}/haddock
-%endif
-%attr(755,root,root) %{_libdir}/ghc-%{version}/hsc2hs
-%attr(755,root,root) %{_libdir}/ghc-%{version}/runghc
-%attr(755,root,root) %{_libdir}/ghc-%{version}/unlit
-%{_libdir}/ghc-%{version}/libHSrts.a
-%{_libdir}/ghc-%{version}/libHSrts_debug.a
-%{_libdir}/ghc-%{version}/libHSrts_l.a
-%{_libdir}/ghc-%{version}/libHSrts_thr.a
-%{_libdir}/ghc-%{version}/libHSrts_thr_debug.a
-%{_libdir}/ghc-%{version}/libHSrts_thr_l.a
+%dir %{_libdir}/ghc-%{version}/bin
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/ghc
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/ghc-iserv
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/ghc-iserv-dyn
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/ghc-iserv-prof
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/ghc-pkg
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/haddock
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/hp2ps
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/hpc
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/hsc2hs
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/runghc
+%attr(755,root,root) %{_libdir}/ghc-%{version}/bin/unlit
 %{_libdir}/ghc-%{version}/ghc*-usage.txt
 %{_libdir}/ghc-%{version}/settings
 %{_libdir}/ghc-%{version}/template-hsc.h
 %{_libdir}/ghc-%{version}/include
-%if %{with doc}
+%{_libdir}/ghc-%{version}/llvm-passes
+%{_libdir}/ghc-%{version}/llvm-targets
+%{_libdir}/ghc-%{version}/platformConstants
 %{_libdir}/ghc-%{version}/html
 %dir %{_libdir}/ghc-%{version}/latex
 %{_libdir}/ghc-%{version}/latex/haddock.sty
-%endif
+%{?with_doc:%{_mandir}/man1/ghc.1*}
 %dir %{_libdir}/ghc-%{version}/package.conf.d
 %ghost %{_libdir}/ghc-%{version}/package.conf.d/package.cache
-%{_mandir}/man1/ghc.1*
-
-%{_libdir}/ghc-%{version}/package.conf.d/Cabal-%{gpv_Cabal}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/array-%{gpv_array}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/base-%{gpv_base}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/bin-package-db-%{gpv_bin_package_db}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/binary-%{gpv_binary}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/builtin_rts.conf
-%{_libdir}/ghc-%{version}/package.conf.d/bytestring-%{gpv_bytestring}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/containers-%{gpv_containers}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/deepseq-%{gpv_deepseq}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/directory-%{gpv_directory}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/filepath-%{gpv_filepath}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/ghc-%{version}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/ghc-prim-%{gpv_ghc_prim}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/haskell2010-%{gpv_haskell2010}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/haskell98-%{gpv_haskell98}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/hoopl-%{gpv_hoopl}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/hpc-%{gpv_hpc}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/integer-gmp-%{gpv_integer_gmp}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/old-locale-%{gpv_old_locale}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/old-time-%{gpv_old_time}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/pretty-%{gpv_pretty}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/process-%{gpv_process}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/template-haskell-%{gpv_template_haskell}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/time-%{gpv_time}-*.conf
-%{_libdir}/ghc-%{version}/package.conf.d/unix-%{gpv_unix}-*.conf
+
+%{_libdir}/ghc-%{version}/package.conf.d/array-%{gpv_array}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/base-%{gpv_base}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/binary-%{gpv_binary}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/bytestring-%{gpv_bytestring}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/Cabal-%{gpv_Cabal}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/containers-%{gpv_containers}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/deepseq-%{gpv_deepseq}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/directory-%{gpv_directory}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/exceptions-%{gpv_exceptions}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/filepath-%{gpv_filepath}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghc-%{version}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghc-boot-%{version}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghc-boot-th-%{version}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghc-compact-%{gpv_ghc_compact}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghc-heap-%{version}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghc-prim-%{gpv_ghc_prim}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/ghci-%{version}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/haskeline-%{gpv_haskeline}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/hpc-%{gpv_hpc}.conf
+%ifnarch x32
+%{_libdir}/ghc-%{version}/package.conf.d/integer-gmp-%{gpv_integer_gmp}.conf
+%else
+%{_libdir}/ghc-%{version}/package.conf.d/integer-simple-%{gpv_integer_simple}.conf
+%endif
+%{_libdir}/ghc-%{version}/package.conf.d/libiserv-%{version}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/mtl-%{gpv_mtl}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/package.cache.lock
+%{_libdir}/ghc-%{version}/package.conf.d/parsec-%{gpv_parsec}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/pretty-%{gpv_pretty}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/process-%{gpv_process}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/rts.conf
+%{_libdir}/ghc-%{version}/package.conf.d/stm-%{gpv_stm}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/template-haskell-%{gpv_template_haskell}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/terminfo-%{gpv_terminfo}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/text-%{gpv_text}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/time-%{gpv_time}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/transformers-%{gpv_transformers}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/unix-%{gpv_unix}.conf
+%{_libdir}/ghc-%{version}/package.conf.d/xhtml-%{gpv_xhtml}.conf
 
 %dir %{_libdir}/ghc-%{version}/Cabal-*
 %{_libdir}/ghc-%{version}/Cabal-*/HSCabal-%{gpv_Cabal}.o
 %{_libdir}/ghc-%{version}/Cabal-*/libHSCabal-%{gpv_Cabal}.a
+%{_libdir}/ghc-%{version}/Cabal-*/libHSCabal-%{gpv_Cabal}-ghc*.so
 %{_libdir}/ghc-%{version}/Cabal-*/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Backpack
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Backpack/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Backpack/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Internal
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Internal/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Internal/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Prelude
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Prelude/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Prelude/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/FieldGrammar
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/FieldGrammar/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/FieldGrammar/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Fields
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Fields/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Fields/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Parsec
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Parsec/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Parsec/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/PackageDescription
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/PackageDescription/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/PackageDescription/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/SPDX
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/SPDX/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/SPDX/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Build
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Build/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Build/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/GHC
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/GHC/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/InstallDirs
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/InstallDirs/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/InstallDirs/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/PreProcess
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/PreProcess/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/PreProcess/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Program
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Program/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Program/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Test
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Test/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Test/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Utils
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Utils/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Utils/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Benchmark
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Benchmark/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Benchmark/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/BuildInfo
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/BuildInfo/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/BuildInfo/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Executable
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Executable/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Executable/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/ForeignLib
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/ForeignLib/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/ForeignLib/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/GenericPackageDescription
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/GenericPackageDescription/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/GenericPackageDescription/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/InstalledPackageInfo
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/InstalledPackageInfo/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/InstalledPackageInfo/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Library
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Library/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Library/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageDescription
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageDescription/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageDescription/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageId
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageId/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageId/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageName
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageName/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageName/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SetupBuildInfo
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SetupBuildInfo/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SetupBuildInfo/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SourceRepo
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SourceRepo/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SourceRepo/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/TestSuite
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/TestSuite/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/TestSuite/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/VersionRange
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/VersionRange/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/VersionRange/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Utils
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Utils/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Utils/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Verbosity
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Verbosity/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Verbosity/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Language
 %dir %{_libdir}/ghc-%{version}/Cabal-*/Language/Haskell
 %{_libdir}/ghc-%{version}/Cabal-*/Language/Haskell/*.hi
+%{_libdir}/ghc-%{version}/Cabal-*/Language/Haskell/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/array-*
 %{_libdir}/ghc-%{version}/array-*/HSarray-%{gpv_array}.o
 %{_libdir}/ghc-%{version}/array-*/libHSarray-%{gpv_array}.a
+%{_libdir}/ghc-%{version}/array-*/libHSarray-%{gpv_array}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/array-*/Data
 %{_libdir}/ghc-%{version}/array-*/Data/*.hi
+%{_libdir}/ghc-%{version}/array-*/Data/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/array-*/Data/Array
 %{_libdir}/ghc-%{version}/array-*/Data/Array/*.hi
+%{_libdir}/ghc-%{version}/array-*/Data/Array/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/array-*/Data/Array/IO
 %{_libdir}/ghc-%{version}/array-*/Data/Array/IO/*.hi
+%{_libdir}/ghc-%{version}/array-*/Data/Array/IO/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/array-*/Data/Array/MArray
 %{_libdir}/ghc-%{version}/array-*/Data/Array/MArray/*.hi
+%{_libdir}/ghc-%{version}/array-*/Data/Array/MArray/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/array-*/Data/Array/ST
 %{_libdir}/ghc-%{version}/array-*/Data/Array/ST/*.hi
+%{_libdir}/ghc-%{version}/array-*/Data/Array/ST/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/array-*/Data/Array/Storable
 %{_libdir}/ghc-%{version}/array-*/Data/Array/Storable/*.hi
+%{_libdir}/ghc-%{version}/array-*/Data/Array/Storable/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/base-*
 %{_libdir}/ghc-%{version}/base-*/HSbase-%{gpv_base}.o
 %{_libdir}/ghc-%{version}/base-*/libHSbase-%{gpv_base}.a
+%{_libdir}/ghc-%{version}/base-*/libHSbase-%{gpv_base}-ghc*.so
 %{_libdir}/ghc-%{version}/base-*/include
 %{_libdir}/ghc-%{version}/base-*/*.hi
+%{_libdir}/ghc-%{version}/base-*/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Control
 %{_libdir}/ghc-%{version}/base-*/Control/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Control/Concurrent
 %{_libdir}/ghc-%{version}/base-*/Control/Concurrent/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/Concurrent/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Control/Exception
 %{_libdir}/ghc-%{version}/base-*/Control/Exception/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/Exception/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Control/Monad
 %{_libdir}/ghc-%{version}/base-*/Control/Monad/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/Monad/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Control/Monad/IO
+%{_libdir}/ghc-%{version}/base-*/Control/Monad/IO/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/Monad/IO/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Control/Monad/ST
 %{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/Lazy
 %{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/Lazy/*.hi
+%{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/Lazy/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Data
 %{_libdir}/ghc-%{version}/base-*/Data/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Data/Functor
+%{_libdir}/ghc-%{version}/base-*/Data/Functor/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/Functor/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Data/List
+%{_libdir}/ghc-%{version}/base-*/Data/List/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/List/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Data/Semigroup
+%{_libdir}/ghc-%{version}/base-*/Data/Semigroup/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/Semigroup/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Data/Type
+%{_libdir}/ghc-%{version}/base-*/Data/Type/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/Type/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Data/STRef
 %{_libdir}/ghc-%{version}/base-*/Data/STRef/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/STRef/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Data/Typeable
 %{_libdir}/ghc-%{version}/base-*/Data/Typeable/*.hi
+%{_libdir}/ghc-%{version}/base-*/Data/Typeable/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Debug
 %{_libdir}/ghc-%{version}/base-*/Debug/*.hi
+%{_libdir}/ghc-%{version}/base-*/Debug/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Foreign
 %{_libdir}/ghc-%{version}/base-*/Foreign/*.hi
+%{_libdir}/ghc-%{version}/base-*/Foreign/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Foreign/C
 %{_libdir}/ghc-%{version}/base-*/Foreign/C/*.hi
+%{_libdir}/ghc-%{version}/base-*/Foreign/C/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Foreign/ForeignPtr
 %{_libdir}/ghc-%{version}/base-*/Foreign/ForeignPtr/*.hi
+%{_libdir}/ghc-%{version}/base-*/Foreign/ForeignPtr/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Foreign/Marshal
 %{_libdir}/ghc-%{version}/base-*/Foreign/Marshal/*.hi
+%{_libdir}/ghc-%{version}/base-*/Foreign/Marshal/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC
 %{_libdir}/ghc-%{version}/base-*/GHC/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/Conc
 %{_libdir}/ghc-%{version}/base-*/GHC/Conc/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Conc/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/IO
 %{_libdir}/ghc-%{version}/base-*/GHC/IO/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/IO/Encoding
 %{_libdir}/ghc-%{version}/base-*/GHC/IO/Encoding/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/Encoding/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/Event
 %{_libdir}/ghc-%{version}/base-*/GHC/Event/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Event/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/Exception
+%{_libdir}/ghc-%{version}/base-*/GHC/Exception/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Exception/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/ExecutionStack
+%{_libdir}/ghc-%{version}/base-*/GHC/ExecutionStack/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/ExecutionStack/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/Fingerprint
 %{_libdir}/ghc-%{version}/base-*/GHC/Fingerprint/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Fingerprint/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/Float
 %{_libdir}/ghc-%{version}/base-*/GHC/Float/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Float/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/GHCi
+%{_libdir}/ghc-%{version}/base-*/GHC/GHCi/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/GHCi/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/Lock
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/Lock/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/Lock/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle
 %{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/RTS
+%{_libdir}/ghc-%{version}/base-*/GHC/RTS/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/RTS/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/Stack
+%{_libdir}/ghc-%{version}/base-*/GHC/Stack/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Stack/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/GHC/StaticPtr
+%{_libdir}/ghc-%{version}/base-*/GHC/StaticPtr/*.hi
+%{_libdir}/ghc-%{version}/base-*/GHC/StaticPtr/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/System
 %{_libdir}/ghc-%{version}/base-*/System/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/System/Console
 %{_libdir}/ghc-%{version}/base-*/System/Console/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/Console/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/System/Environment
 %{_libdir}/ghc-%{version}/base-*/System/Environment/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/Environment/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/System/IO
 %{_libdir}/ghc-%{version}/base-*/System/IO/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/IO/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/System/Mem
 %{_libdir}/ghc-%{version}/base-*/System/Mem/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/Mem/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Numeric
+%{_libdir}/ghc-%{version}/base-*/Numeric/*.hi
+%{_libdir}/ghc-%{version}/base-*/Numeric/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/System/CPUTime
+%{_libdir}/ghc-%{version}/base-*/System/CPUTime/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/CPUTime/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/System/CPUTime/Posix
+%{_libdir}/ghc-%{version}/base-*/System/CPUTime/Posix/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/CPUTime/Posix/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/System/Posix
 %{_libdir}/ghc-%{version}/base-*/System/Posix/*.hi
+%{_libdir}/ghc-%{version}/base-*/System/Posix/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Text
 %{_libdir}/ghc-%{version}/base-*/Text/*.hi
+%{_libdir}/ghc-%{version}/base-*/Text/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Text/ParserCombinators
 %{_libdir}/ghc-%{version}/base-*/Text/ParserCombinators/*.hi
+%{_libdir}/ghc-%{version}/base-*/Text/ParserCombinators/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Text/Read
 %{_libdir}/ghc-%{version}/base-*/Text/Read/*.hi
+%{_libdir}/ghc-%{version}/base-*/Text/Read/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Text/Show
 %{_libdir}/ghc-%{version}/base-*/Text/Show/*.hi
+%{_libdir}/ghc-%{version}/base-*/Text/Show/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Type
+%{_libdir}/ghc-%{version}/base-*/Type/*.hi
+%{_libdir}/ghc-%{version}/base-*/Type/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/base-*/Type/Reflection
+%{_libdir}/ghc-%{version}/base-*/Type/Reflection/*.hi
+%{_libdir}/ghc-%{version}/base-*/Type/Reflection/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/base-*/Unsafe
 %{_libdir}/ghc-%{version}/base-*/Unsafe/*.hi
-
-%dir %{_libdir}/ghc-%{version}/bin-package-db-*
-%{_libdir}/ghc-%{version}/bin-package-db-*/HSbin-package-db-%{gpv_bin_package_db}.o
-%{_libdir}/ghc-%{version}/bin-package-db-*/libHSbin-package-db-%{gpv_bin_package_db}.a
-%dir %{_libdir}/ghc-%{version}/bin-package-db-*/Distribution
-%dir %{_libdir}/ghc-%{version}/bin-package-db-*/Distribution/InstalledPackageInfo
-%{_libdir}/ghc-%{version}/bin-package-db-*/Distribution/InstalledPackageInfo/*.hi
+%{_libdir}/ghc-%{version}/base-*/Unsafe/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/binary-*
 %{_libdir}/ghc-%{version}/binary-*/HSbinary-%{gpv_binary}.o
 %{_libdir}/ghc-%{version}/binary-*/libHSbinary-%{gpv_binary}.a
+%{_libdir}/ghc-%{version}/binary-*/libHSbinary-%{gpv_binary}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/binary-*/Data
 %{_libdir}/ghc-%{version}/binary-*/Data/*.hi
+%{_libdir}/ghc-%{version}/binary-*/Data/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/binary-*/Data/Binary
 %{_libdir}/ghc-%{version}/binary-*/Data/Binary/*.hi
-%dir %{_libdir}/ghc-%{version}/binary-*/Data/Binary/Builder
-%{_libdir}/ghc-%{version}/binary-*/Data/Binary/Builder/*.hi
+%{_libdir}/ghc-%{version}/binary-*/Data/Binary/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/binary-*/Data/Binary/Get
+%{_libdir}/ghc-%{version}/binary-*/Data/Binary/Get/*.hi
+%{_libdir}/ghc-%{version}/binary-*/Data/Binary/Get/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/bytestring-*
 %{_libdir}/ghc-%{version}/bytestring-*/HSbytestring-%{gpv_bytestring}.o
 %{_libdir}/ghc-%{version}/bytestring-*/libHSbytestring-%{gpv_bytestring}.a
+%{_libdir}/ghc-%{version}/bytestring-*/libHSbytestring-%{gpv_bytestring}-ghc*.so
 %{_libdir}/ghc-%{version}/bytestring-*/include
 %dir %{_libdir}/ghc-%{version}/bytestring-*/Data
 %{_libdir}/ghc-%{version}/bytestring-*/Data/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString
 %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/Internal
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/Internal/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/Internal/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy
 %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder
 %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/*.hi
-%dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/BasicEncoding
-%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/BasicEncoding/*.hi
-%dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/BasicEncoding/Internal
-%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/BasicEncoding/Internal/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Short
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Short/*.hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Short/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/containers-*
 %{_libdir}/ghc-%{version}/containers-*/HScontainers-%{gpv_containers}.o
 %{_libdir}/ghc-%{version}/containers-*/libHScontainers-%{gpv_containers}.a
+%{_libdir}/ghc-%{version}/containers-*/libHScontainers-%{gpv_containers}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/containers-*/Data
 %{_libdir}/ghc-%{version}/containers-*/Data/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/Containers
+%{_libdir}/ghc-%{version}/containers-*/Data/Containers/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Containers/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/containers-*/Data/IntMap
 %{_libdir}/ghc-%{version}/containers-*/Data/IntMap/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Internal
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Internal/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Internal/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Merge
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Merge/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Merge/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Strict
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Strict/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Strict/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/containers-*/Data/IntSet
 %{_libdir}/ghc-%{version}/containers-*/Data/IntSet/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntSet/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/containers-*/Data/Map
 %{_libdir}/ghc-%{version}/containers-*/Data/Map/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/Map/Internal
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Internal/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Internal/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/Map/Merge
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Merge/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Merge/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/Map/Strict
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Strict/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Strict/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/Sequence
+%{_libdir}/ghc-%{version}/containers-*/Data/Sequence/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Sequence/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Data/Sequence/Internal
+%{_libdir}/ghc-%{version}/containers-*/Data/Sequence/Internal/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Sequence/Internal/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/containers-*/Data/Set
 %{_libdir}/ghc-%{version}/containers-*/Data/Set/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Set/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/containers-*/Utils
+%dir %{_libdir}/ghc-%{version}/containers-*/Utils/Containers
+%dir %{_libdir}/ghc-%{version}/containers-*/Utils/Containers/Internal
+%{_libdir}/ghc-%{version}/containers-*/Utils/Containers/Internal/*.hi
+%{_libdir}/ghc-%{version}/containers-*/Utils/Containers/Internal/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/deepseq-*
 %{_libdir}/ghc-%{version}/deepseq-*/HSdeepseq-%{gpv_deepseq}.o
 %{_libdir}/ghc-%{version}/deepseq-*/libHSdeepseq-%{gpv_deepseq}.a
+%{_libdir}/ghc-%{version}/deepseq-*/libHSdeepseq-%{gpv_deepseq}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/deepseq-*/Control
 %{_libdir}/ghc-%{version}/deepseq-*/Control/*.hi
+%{_libdir}/ghc-%{version}/deepseq-*/Control/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/deepseq-*/Control/DeepSeq
+%{_libdir}/ghc-%{version}/deepseq-*/Control/DeepSeq/*.hi
+%{_libdir}/ghc-%{version}/deepseq-*/Control/DeepSeq/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/directory-*
 %{_libdir}/ghc-%{version}/directory-*/HSdirectory-%{gpv_directory}.o
 %{_libdir}/ghc-%{version}/directory-*/libHSdirectory-%{gpv_directory}.a
-%{_libdir}/ghc-%{version}/directory-*/include
+%{_libdir}/ghc-%{version}/directory-*/libHSdirectory-%{gpv_directory}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/directory-*/System
 %{_libdir}/ghc-%{version}/directory-*/System/*.hi
+%{_libdir}/ghc-%{version}/directory-*/System/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/directory-*/System/Directory
+%{_libdir}/ghc-%{version}/directory-*/System/Directory/*.hi
+%{_libdir}/ghc-%{version}/directory-*/System/Directory/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/directory-*/System/Directory/Internal
+%{_libdir}/ghc-%{version}/directory-*/System/Directory/Internal/*.hi
+%{_libdir}/ghc-%{version}/directory-*/System/Directory/Internal/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/exceptions-*
+%{_libdir}/ghc-%{version}/exceptions-*/HSexceptions-%{gpv_exceptions}.o
+%{_libdir}/ghc-%{version}/exceptions-*/libHSexceptions-%{gpv_exceptions}.a
+%{_libdir}/ghc-%{version}/exceptions-*/libHSexceptions-%{gpv_exceptions}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/exceptions-*/Control
+%dir %{_libdir}/ghc-%{version}/exceptions-*/Control/Monad
+%{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/*.hi
+%{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/Catch
+%{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/Catch/*.hi
+%{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/Catch/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/filepath-*
 %{_libdir}/ghc-%{version}/filepath-*/HSfilepath-%{gpv_filepath}.o
 %{_libdir}/ghc-%{version}/filepath-*/libHSfilepath-%{gpv_filepath}.a
+%{_libdir}/ghc-%{version}/filepath-*/libHSfilepath-%{gpv_filepath}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/filepath-*/System
 %{_libdir}/ghc-%{version}/filepath-*/System/*.hi
+%{_libdir}/ghc-%{version}/filepath-*/System/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/filepath-*/System/FilePath
 %{_libdir}/ghc-%{version}/filepath-*/System/FilePath/*.hi
+%{_libdir}/ghc-%{version}/filepath-*/System/FilePath/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}
 %{_libdir}/ghc-%{version}/ghc-%{version}/libHSghc-%{version}.a
+%{_libdir}/ghc-%{version}/ghc-%{version}/libHSghc-%{version}-ghc*.so
 %{_libdir}/ghc-%{version}/ghc-%{version}/include
 %{_libdir}/ghc-%{version}/ghc-%{version}/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Dwarf
+%{_libdir}/ghc-%{version}/ghc-%{version}/Dwarf/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/Dwarf/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/GHC
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Hs
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Hs/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Hs/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/PmCheck
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/PmCheck/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/PmCheck/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Platform
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Platform/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Platform/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/GHC/StgToCmm
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/StgToCmm/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/StgToCmm/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/Hoopl
 %{_libdir}/ghc-%{version}/ghc-%{version}/Hoopl/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/Hoopl/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/Llvm
 %{_libdir}/ghc-%{version}/ghc-%{version}/Llvm/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/Llvm/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/LlvmCodeGen
 %{_libdir}/ghc-%{version}/ghc-%{version}/LlvmCodeGen/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/LlvmCodeGen/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/PPC
 %{_libdir}/ghc-%{version}/ghc-%{version}/PPC/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/PPC/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/SPARC
 %{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/CodeGen
 %{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/CodeGen/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/CodeGen/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/X86
 %{_libdir}/ghc-%{version}/ghc-%{version}/X86/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/X86/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Graph
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Graph/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Graph/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/PPC
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/PPC/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/PPC/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/SPARC
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/SPARC/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/SPARC/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86/*.hi
-%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/*.hi
-%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Builtins
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Builtins/*.hi
-%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Generic
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Generic/*.hi
-%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Monad
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Monad/*.hi
-%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Type
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Type/*.hi
-%dir %{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Utils
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Utils/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86_64
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86_64/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86_64/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/StgLiftLams
+%{_libdir}/ghc-%{version}/ghc-%{version}/StgLiftLams/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/StgLiftLams/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-%{version}/SysTools
+%{_libdir}/ghc-%{version}/ghc-%{version}/SysTools/*.hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/SysTools/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/ghc-boot-%{version}
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/HSghc-boot-%{version}.o
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/libHSghc-boot-%{version}.a
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/libHSghc-boot-%{version}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/*.hi
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/Platform
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/Platform/*.hi
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/Platform/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/ghc-boot-th-%{version}
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/HSghc-boot-th-%{version}.o
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/libHSghc-boot-th-%{version}.a
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/libHSghc-boot-th-%{version}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/*.hi
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/ForeignSrcLang
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/ForeignSrcLang/*.hi
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/ForeignSrcLang/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/LanguageExtensions
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/LanguageExtensions/*.hi
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/LanguageExtensions/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/ghc-compact-*
+%{_libdir}/ghc-%{version}/ghc-compact-*/HSghc-compact-%{gpv_ghc_compact}.o
+%{_libdir}/ghc-%{version}/ghc-compact-*/libHSghc-compact-%{gpv_ghc_compact}.a
+%{_libdir}/ghc-%{version}/ghc-compact-*/libHSghc-compact-%{gpv_ghc_compact}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/ghc-compact-*/GHC
+%{_libdir}/ghc-%{version}/ghc-compact-*/GHC/*.hi
+%{_libdir}/ghc-%{version}/ghc-compact-*/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-compact-*/GHC/Compact
+%{_libdir}/ghc-%{version}/ghc-compact-*/GHC/Compact/*.hi
+%{_libdir}/ghc-%{version}/ghc-compact-*/GHC/Compact/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/ghc-heap-%{version}
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/HSghc-heap-%{version}.o
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/libHSghc-heap-%{version}.a
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/libHSghc-heap-%{version}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC
+%dir %{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/*.hi
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/*.hi
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/InfoTable
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/InfoTable/*.hi
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/InfoTable/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/ghc-prim-*
 %{_libdir}/ghc-%{version}/ghc-prim-*/HSghc-prim-%{gpv_ghc_prim}.o
 %{_libdir}/ghc-%{version}/ghc-prim-*/libHSghc-prim-%{gpv_ghc_prim}.a
+%{_libdir}/ghc-%{version}/ghc-prim-*/libHSghc-prim-%{gpv_ghc_prim}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/ghc-prim-*/GHC
 %{_libdir}/ghc-%{version}/ghc-prim-*/GHC/*.hi
-
-%dir %{_libdir}/ghc-%{version}/haskell2010-*
-%{_libdir}/ghc-%{version}/haskell2010-*/HShaskell2010-%{gpv_haskell2010}.o
-%{_libdir}/ghc-%{version}/haskell2010-*/libHShaskell2010-%{gpv_haskell2010}.a
-%{_libdir}/ghc-%{version}/haskell2010-*/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/Control
-%{_libdir}/ghc-%{version}/haskell2010-*/Control/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/Data
-%{_libdir}/ghc-%{version}/haskell2010-*/Data/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/Foreign
-%{_libdir}/ghc-%{version}/haskell2010-*/Foreign/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/Foreign/C
-%{_libdir}/ghc-%{version}/haskell2010-*/Foreign/C/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/Foreign/Marshal
-%{_libdir}/ghc-%{version}/haskell2010-*/Foreign/Marshal/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/System
-%{_libdir}/ghc-%{version}/haskell2010-*/System/*.hi
-%dir %{_libdir}/ghc-%{version}/haskell2010-*/System/IO
-%{_libdir}/ghc-%{version}/haskell2010-*/System/IO/*.hi
-
-%dir %{_libdir}/ghc-%{version}/haskell98-*
-%{_libdir}/ghc-%{version}/haskell98-*/HShaskell98-%{gpv_haskell98}.o
-%{_libdir}/ghc-%{version}/haskell98-*/libHShaskell98-%{gpv_haskell98}.a
-%{_libdir}/ghc-%{version}/haskell98-*/*.hi
-
-%dir %{_libdir}/ghc-%{version}/hoopl-*
-%{_libdir}/ghc-%{version}/hoopl-*/HShoopl-%{gpv_hoopl}.o
-%{_libdir}/ghc-%{version}/hoopl-*/libHShoopl-%{gpv_hoopl}.a
-%dir %{_libdir}/ghc-%{version}/hoopl-*/Compiler
-%{_libdir}/ghc-%{version}/hoopl-*/Compiler/*.hi
-%dir %{_libdir}/ghc-%{version}/hoopl-*/Compiler/Hoopl
-%{_libdir}/ghc-%{version}/hoopl-*/Compiler/Hoopl/*.hi
-%dir %{_libdir}/ghc-%{version}/hoopl-*/Compiler/Hoopl/Passes
-%{_libdir}/ghc-%{version}/hoopl-*/Compiler/Hoopl/Passes/*.hi
+%{_libdir}/ghc-%{version}/ghc-prim-*/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghc-prim-*/GHC/Prim
+%{_libdir}/ghc-%{version}/ghc-prim-*/GHC/Prim/*.hi
+%{_libdir}/ghc-%{version}/ghc-prim-*/GHC/Prim/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/ghci-%{version}
+%{_libdir}/ghc-%{version}/ghci-%{version}/HSghci-%{version}.o
+%{_libdir}/ghc-%{version}/ghci-%{version}/libHSghci-%{version}.a
+%{_libdir}/ghc-%{version}/ghci-%{version}/libHSghci-%{version}-ghc*.so
+%{_libdir}/ghc-%{version}/ghci-%{version}/*.hi
+%{_libdir}/ghc-%{version}/ghci-%{version}/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghci-%{version}/GHCi
+%{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/*.hi
+%{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/TH
+%{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/TH/*.hi
+%{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/TH/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/haskeline-*
+%{_libdir}/ghc-%{version}/haskeline-*/HShaskeline-%{gpv_haskeline}.o
+%{_libdir}/ghc-%{version}/haskeline-*/libHShaskeline-%{gpv_haskeline}.a
+%{_libdir}/ghc-%{version}/haskeline-*/libHShaskeline-%{gpv_haskeline}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/haskeline-*/System
+%dir %{_libdir}/ghc-%{version}/haskeline-*/System/Console
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/*.hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/*.hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/*.hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/Posix
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/Posix/*.hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/Posix/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Command/
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Command/*.hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Command/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/hpc-*
 %{_libdir}/ghc-%{version}/hpc-*/HShpc-%{gpv_hpc}.o
 %{_libdir}/ghc-%{version}/hpc-*/libHShpc-%{gpv_hpc}.a
+%{_libdir}/ghc-%{version}/hpc-*/libHShpc-%{gpv_hpc}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/hpc-*/Trace
 %dir %{_libdir}/ghc-%{version}/hpc-*/Trace/Hpc
 %{_libdir}/ghc-%{version}/hpc-*/Trace/Hpc/*.hi
+%{_libdir}/ghc-%{version}/hpc-*/Trace/Hpc/*.dyn_hi
 
+%ifnarch x32
 %dir %{_libdir}/ghc-%{version}/integer-gmp-*
 %{_libdir}/ghc-%{version}/integer-gmp-*/HSinteger-gmp-%{gpv_integer_gmp}.o
 %{_libdir}/ghc-%{version}/integer-gmp-*/libHSinteger-gmp-%{gpv_integer_gmp}.a
+%{_libdir}/ghc-%{version}/integer-gmp-*/libHSinteger-gmp-%{gpv_integer_gmp}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/integer-gmp-*/GHC
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/*.hi
+%{_libdir}/ghc-%{version}/integer-gmp-*/GHC/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/*.hi
+%{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/GMP
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/GMP/*.hi
+%{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/GMP/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/Logarithms
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/Logarithms/*.hi
+%{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/Logarithms/*.dyn_hi
+%{_libdir}/ghc-%{version}/integer-gmp-*/include
+%else
+%dir %{_libdir}/ghc-%{version}/integer-simple-*
+%{_libdir}/ghc-%{version}/integer-simple-*/HSinteger-simple-%{gpv_integer_simple}.o
+%{_libdir}/ghc-%{version}/integer-simple-*/libHSinteger-simple-%{gpv_integer_simple}-ghc*.so
+%{_libdir}/ghc-%{version}/integer-simple-*/libHSinteger-simple-%{gpv_integer_simple}.a
+%dir %{_libdir}/ghc-%{version}/integer-simple-*/GHC
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/*.hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/*.hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Logarithms
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Logarithms/*.hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Logarithms/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Simple
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Simple/*.hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Simple/*.dyn_hi
+%endif
 
-%dir %{_libdir}/ghc-%{version}/old-locale-*
-%{_libdir}/ghc-%{version}/old-locale-*/HSold-locale-%{gpv_old_locale}.o
-%{_libdir}/ghc-%{version}/old-locale-*/libHSold-locale-%{gpv_old_locale}.a
-%dir %{_libdir}/ghc-%{version}/old-locale-*/System
-%{_libdir}/ghc-%{version}/old-locale-*/System/*.hi
-
-%dir %{_libdir}/ghc-%{version}/old-time-*
-%{_libdir}/ghc-%{version}/old-time-*/HSold-time-%{gpv_old_time}.o
-%{_libdir}/ghc-%{version}/old-time-*/libHSold-time-%{gpv_old_time}.a
-%{_libdir}/ghc-%{version}/old-time-*/include
-%dir %{_libdir}/ghc-%{version}/old-time-*/System
-%{_libdir}/ghc-%{version}/old-time-*/System/*.hi
+%dir %{_libdir}/ghc-%{version}/libiserv-%{version}
+%{_libdir}/ghc-%{version}/libiserv-%{version}/HSlibiserv-%{version}.o
+%{_libdir}/ghc-%{version}/libiserv-%{version}/libHSlibiserv-%{version}.a
+%{_libdir}/ghc-%{version}/libiserv-%{version}/libHSlibiserv-%{version}-ghc*.so
+%{_libdir}/ghc-%{version}/libiserv-%{version}/*.hi
+%{_libdir}/ghc-%{version}/libiserv-%{version}/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/libiserv-%{version}/GHCi
+%{_libdir}/ghc-%{version}/libiserv-%{version}/GHCi/*.hi
+%{_libdir}/ghc-%{version}/libiserv-%{version}/GHCi/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/mtl-*
+%{_libdir}/ghc-%{version}/mtl-*/HSmtl-%{gpv_mtl}.o
+%{_libdir}/ghc-%{version}/mtl-*/libHSmtl-%{gpv_mtl}.a
+%{_libdir}/ghc-%{version}/mtl-*/libHSmtl-%{gpv_mtl}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Cont
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Cont/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Cont/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Error
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Error/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Error/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad/RWS
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/RWS/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/RWS/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Reader
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Reader/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Reader/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad/State
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/State/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/State/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Writer
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Writer/*.hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Writer/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/parsec-*
+%{_libdir}/ghc-%{version}/parsec-*/HSparsec-%{gpv_parsec}.o
+%{_libdir}/ghc-%{version}/parsec-*/libHSparsec-%{gpv_parsec}.a
+%{_libdir}/ghc-%{version}/parsec-*/libHSparsec-%{gpv_parsec}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/parsec-*/Text
+%{_libdir}/ghc-%{version}/parsec-*/Text/*.hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/parsec-*/Text/Parsec
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/*.hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/ByteString
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/ByteString/*.hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/ByteString/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/Text
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/Text/*.hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/Text/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators
+%{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/*.hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/Parsec
+%{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/Parsec/*.hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/Parsec/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/pretty-*
 %{_libdir}/ghc-%{version}/pretty-*/HSpretty-%{gpv_pretty}.o
 %{_libdir}/ghc-%{version}/pretty-*/libHSpretty-%{gpv_pretty}.a
+%{_libdir}/ghc-%{version}/pretty-*/libHSpretty-%{gpv_pretty}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/pretty-*/Text
 %{_libdir}/ghc-%{version}/pretty-*/Text/*.hi
+%{_libdir}/ghc-%{version}/pretty-*/Text/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint
 %{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/*.hi
+%{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/Annotated
+%{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/Annotated/*.hi
+%{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/Annotated/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/process-*
 %{_libdir}/ghc-%{version}/process-*/HSprocess-%{gpv_process}.o
 %{_libdir}/ghc-%{version}/process-*/libHSprocess-%{gpv_process}.a
+%{_libdir}/ghc-%{version}/process-*/libHSprocess-%{gpv_process}-ghc*.so
 %{_libdir}/ghc-%{version}/process-*/include
 %dir %{_libdir}/ghc-%{version}/process-*/System
 %{_libdir}/ghc-%{version}/process-*/System/*.hi
+%{_libdir}/ghc-%{version}/process-*/System/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/process-*/System/Process
 %{_libdir}/ghc-%{version}/process-*/System/Process/*.hi
+%{_libdir}/ghc-%{version}/process-*/System/Process/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/rts
+%if %{without system_libffi}
+%{_libdir}/ghc-%{version}/rts/libCffi.a
+%{_libdir}/ghc-%{version}/rts/libCffi_debug.a
+%{_libdir}/ghc-%{version}/rts/libCffi_l.a
+%{_libdir}/ghc-%{version}/rts/libCffi_thr.a
+%{_libdir}/ghc-%{version}/rts/libCffi_thr_debug.a
+%{_libdir}/ghc-%{version}/rts/libCffi_thr_l.a
+%{_libdir}/ghc-%{version}/rts/libffi.so
+%{_libdir}/ghc-%{version}/rts/libffi.so.7
+%{_libdir}/ghc-%{version}/rts/libffi.so.7.1.0
+%endif
+%{_libdir}/ghc-%{version}/rts/libHSrts-ghc%{version}.so
+%{_libdir}/ghc-%{version}/rts/libHSrts.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_debug-ghc%{version}.so
+%{_libdir}/ghc-%{version}/rts/libHSrts_debug.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_l-ghc%{version}.so
+%{_libdir}/ghc-%{version}/rts/libHSrts_l.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr-ghc%{version}.so
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr_debug-ghc%{version}.so
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr_debug.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr_l-ghc%{version}.so
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr_l.a
+
+%dir %{_libdir}/ghc-%{version}/stm-*
+%{_libdir}/ghc-%{version}/stm-*/HSstm-%{gpv_stm}.o
+%{_libdir}/ghc-%{version}/stm-*/libHSstm-%{gpv_stm}.a
+%{_libdir}/ghc-%{version}/stm-*/libHSstm-%{gpv_stm}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/stm-*/Control
+%dir %{_libdir}/ghc-%{version}/stm-*/Control/Concurrent
+%{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/*.hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/STM
+%{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/STM/*.hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/STM/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/stm-*/Control/Monad
+%{_libdir}/ghc-%{version}/stm-*/Control/Monad/*.hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Monad/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/stm-*/Control/Sequential
+%{_libdir}/ghc-%{version}/stm-*/Control/Sequential/*.hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Sequential/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/template-haskell-*
 %{_libdir}/ghc-%{version}/template-haskell-*/HStemplate-haskell-%{gpv_template_haskell}.o
 %{_libdir}/ghc-%{version}/template-haskell-*/libHStemplate-haskell-%{gpv_template_haskell}.a
+%{_libdir}/ghc-%{version}/template-haskell-*/libHStemplate-haskell-%{gpv_template_haskell}-ghc*.so
 %dir %{_libdir}/ghc-%{version}/template-haskell-*/Language
 %dir %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell
 %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/*.hi
+%{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH
 %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/*.hi
+%{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/Lib
+%{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/Lib/*.hi
+%{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/Lib/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/terminfo-*
+%{_libdir}/ghc-%{version}/terminfo-*/HSterminfo-%{gpv_terminfo}.o
+%{_libdir}/ghc-%{version}/terminfo-*/libHSterminfo-%{gpv_terminfo}.a
+%{_libdir}/ghc-%{version}/terminfo-*/libHSterminfo-%{gpv_terminfo}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/terminfo-*/System
+%dir %{_libdir}/ghc-%{version}/terminfo-*/System/Console
+%{_libdir}/ghc-%{version}/terminfo-*/System/Console/*.hi
+%{_libdir}/ghc-%{version}/terminfo-*/System/Console/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/terminfo-*/System/Console/Terminfo
+%{_libdir}/ghc-%{version}/terminfo-*/System/Console/Terminfo/*.hi
+%{_libdir}/ghc-%{version}/terminfo-*/System/Console/Terminfo/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/text-*
+%{_libdir}/ghc-%{version}/text-*/HStext-%{gpv_text}.o
+%{_libdir}/ghc-%{version}/text-*/libHStext-%{gpv_text}.a
+%{_libdir}/ghc-%{version}/text-*/libHStext-%{gpv_text}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/text-*/Data
+%{_libdir}/ghc-%{version}/text-*/Data/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text
+%{_libdir}/ghc-%{version}/text-*/Data/Text/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Encoding
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Encoding/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Encoding/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/Int
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/Int/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/Int/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/RealFloat
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/RealFloat/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/RealFloat/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/Fusion
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/Fusion/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/Fusion/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Fusion
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Fusion/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Fusion/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/Encoding
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/Encoding/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/Encoding/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Unsafe
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Unsafe/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Unsafe/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/Builder
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/Builder/*.hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/Builder/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/time-*
 %{_libdir}/ghc-%{version}/time-*/HStime-%{gpv_time}.o
 %{_libdir}/ghc-%{version}/time-*/libHStime-%{gpv_time}.a
+%{_libdir}/ghc-%{version}/time-*/libHStime-%{gpv_time}-ghc*.so
 %{_libdir}/ghc-%{version}/time-*/include
 %dir %{_libdir}/ghc-%{version}/time-*/Data
 %{_libdir}/ghc-%{version}/time-*/Data/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/time-*/Data/Time
 %{_libdir}/ghc-%{version}/time-*/Data/Time/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/time-*/Data/Time/Calendar
 %{_libdir}/ghc-%{version}/time-*/Data/Time/Calendar/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Calendar/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/time-*/Data/Time/Clock
 %{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/Internal
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/Internal/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/Internal/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/time-*/Data/Time/Format
 %{_libdir}/ghc-%{version}/time-*/Data/Time/Format/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime
-%{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime/*.hi
+%dir %{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Format
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Format/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Format/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Parse
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Parse/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Parse/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime/Internal
+%{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime/Internal/*.hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime/Internal/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/transformers-*
+%{_libdir}/ghc-%{version}/transformers-*/HStransformers-%{gpv_transformers}.o
+%{_libdir}/ghc-%{version}/transformers-*/libHStransformers-%{gpv_transformers}.a
+%{_libdir}/ghc-%{version}/transformers-*/libHStransformers-%{gpv_transformers}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control/Applicative
+%{_libdir}/ghc-%{version}/transformers-*/Control/Applicative/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Applicative/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control/Monad
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/RWS
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/RWS/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/RWS/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/State
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/State/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/State/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/Writer
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/Writer/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/Writer/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/transformers-*/Data
+%dir %{_libdir}/ghc-%{version}/transformers-*/Data/Functor
+%{_libdir}/ghc-%{version}/transformers-*/Data/Functor/*.hi
+%{_libdir}/ghc-%{version}/transformers-*/Data/Functor/*.dyn_hi
 
 %dir %{_libdir}/ghc-%{version}/unix-*
 %{_libdir}/ghc-%{version}/unix-*/HSunix-%{gpv_unix}.o
 %{_libdir}/ghc-%{version}/unix-*/libHSunix-%{gpv_unix}.a
+%{_libdir}/ghc-%{version}/unix-*/libHSunix-%{gpv_unix}-ghc*.so
 %{_libdir}/ghc-%{version}/unix-*/include
 %dir %{_libdir}/ghc-%{version}/unix-*/System
 %{_libdir}/ghc-%{version}/unix-*/System/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/ByteString
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/ByteString/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/ByteString/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Directory
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Directory/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Directory/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/DynamicLinker
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/DynamicLinker/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/DynamicLinker/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/DynamicLinker/Module
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/DynamicLinker/Module/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/DynamicLinker/Module/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Env
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Env/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Env/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Files
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Files/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Files/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/IO
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/IO/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/IO/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Process
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Process/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Process/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Signals
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Signals/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Signals/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Temp
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Temp/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Temp/*.dyn_hi
 %dir %{_libdir}/ghc-%{version}/unix-*/System/Posix/Terminal
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Terminal/*.hi
+%{_libdir}/ghc-%{version}/unix-*/System/Posix/Terminal/*.dyn_hi
+
+%dir %{_libdir}/ghc-%{version}/xhtml-*
+%{_libdir}/ghc-%{version}/xhtml-*/HSxhtml-%{gpv_xhtml}.o
+%{_libdir}/ghc-%{version}/xhtml-*/libHSxhtml-%{gpv_xhtml}.a
+%{_libdir}/ghc-%{version}/xhtml-*/libHSxhtml-%{gpv_xhtml}-ghc*.so
+%dir %{_libdir}/ghc-%{version}/xhtml-*/Text
+%{_libdir}/ghc-%{version}/xhtml-*/Text/*.hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/*.hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Frameset
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Frameset/*.hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Frameset/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Strict
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Strict/*.hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Strict/*.dyn_hi
+%dir %{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Transitional
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Transitional/*.hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Transitional/*.dyn_hi
 
 %files prof
 %defattr(644,root,root,755)
-%{_libdir}/ghc-%{version}/libHSrts_p.a
-%{_libdir}/ghc-%{version}/libHSrts_thr_p.a
-
 %{_libdir}/ghc-%{version}/Cabal-*/libHSCabal-%{gpv_Cabal}_p.a
+%{_libdir}/ghc-%{version}/Cabal-*/HSCabal-%{gpv_Cabal}.p_o
 %{_libdir}/ghc-%{version}/Cabal-*/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Backpack/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Internal/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Compat/Prelude/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/FieldGrammar/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Fields/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/PackageDescription/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Parsec/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/SPDX/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Build/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/InstallDirs/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/PreProcess/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Program/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Test/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Simple/Utils/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Benchmark/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/BuildInfo/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Executable/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/ForeignLib/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/GenericPackageDescription/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/InstalledPackageInfo/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/Library/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageDescription/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageId/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/PackageName/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SetupBuildInfo/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/SourceRepo/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/TestSuite/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Types/VersionRange/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Utils/*.p_hi
+%{_libdir}/ghc-%{version}/Cabal-*/Distribution/Verbosity/*.p_hi
 %{_libdir}/ghc-%{version}/Cabal-*/Language/Haskell/*.p_hi
 
 %{_libdir}/ghc-%{version}/array-*/libHSarray-%{gpv_array}_p.a
+%{_libdir}/ghc-%{version}/array-*/HSarray-%{gpv_array}.p_o
 %{_libdir}/ghc-%{version}/array-*/Data/*.p_hi
 %{_libdir}/ghc-%{version}/array-*/Data/Array/*.p_hi
 %{_libdir}/ghc-%{version}/array-*/Data/Array/IO/*.p_hi
@@ -799,31 +1576,47 @@ fi
 %{_libdir}/ghc-%{version}/array-*/Data/Array/Storable/*.p_hi
 
 %{_libdir}/ghc-%{version}/base-*/libHSbase-%{gpv_base}_p.a
+%{_libdir}/ghc-%{version}/base-*/HSbase-%{gpv_base}.p_o
 %{_libdir}/ghc-%{version}/base-*/*.p_hi
-%{_libdir}/ghc-%{version}/base-*/Control/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Control/Concurrent/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Control/Exception/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Control/Monad/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Control/Monad/IO/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Control/Monad/ST/Lazy/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Control/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Data/Functor/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Data/List/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Data/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Data/Semigroup/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Data/STRef/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Data/Typeable/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Data/Type/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Debug/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Foreign/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Foreign/C/*.p_hi
-%{_libdir}/ghc-%{version}/base-*/Foreign/Marshal/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Foreign/ForeignPtr/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Foreign/Marshal/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/Conc/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/Event/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Exception/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/ExecutionStack/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/Fingerprint/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/Float/*.p_hi
-%{_libdir}/ghc-%{version}/base-*/GHC/IO/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/GHCi/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/IO/Encoding/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/Lock/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/GHC/IO/Handle/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/IO/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/RTS/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/Stack/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/GHC/StaticPtr/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Numeric/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/System/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/System/Console/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/System/CPUTime/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/System/CPUTime/Posix/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/System/Environment/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/System/IO/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/System/Mem/*.p_hi
@@ -832,43 +1625,75 @@ fi
 %{_libdir}/ghc-%{version}/base-*/Text/ParserCombinators/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Text/Read/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Text/Show/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Type/*.p_hi
+%{_libdir}/ghc-%{version}/base-*/Type/Reflection/*.p_hi
 %{_libdir}/ghc-%{version}/base-*/Unsafe/*.p_hi
 
-%{_libdir}/ghc-%{version}/bin-package-db-*/libHSbin-package-db-%{gpv_bin_package_db}_p.a
-%{_libdir}/ghc-%{version}/bin-package-db-*/Distribution/InstalledPackageInfo/*.p_hi
-
-%{_libdir}/ghc-%{version}/binary-*/libHSbinary-%{gpv_binary}_p.a
+%{_libdir}/ghc-%{version}/binar*y-*/libHSbinary-%{gpv_binary}_p.a
+%{_libdir}/ghc-%{version}/binar*y-*/HSbinary-%{gpv_binary}.p_o
 %{_libdir}/ghc-%{version}/binary-*/Data/*.p_hi
 %{_libdir}/ghc-%{version}/binary-*/Data/Binary/*.p_hi
-%{_libdir}/ghc-%{version}/binary-*/Data/Binary/Builder/*.p_hi
+%{_libdir}/ghc-%{version}/binary-*/Data/Binary/Get/*.p_hi
 
 %{_libdir}/ghc-%{version}/bytestring-*/libHSbytestring-%{gpv_bytestring}_p.a
+%{_libdir}/ghc-%{version}/bytestring-*/HSbytestring-%{gpv_bytestring}.p_o
 %{_libdir}/ghc-%{version}/bytestring-*/Data/*.p_hi
 %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/*.p_hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/*.p_hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/*.p_hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Builder/Prim/Internal/*.p_hi
 %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/*.p_hi
 %{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/*.p_hi
-%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/BasicEncoding/*.p_hi
-%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Lazy/Builder/BasicEncoding/Internal/*.p_hi
+%{_libdir}/ghc-%{version}/bytestring-*/Data/ByteString/Short/*.p_hi
 
 %{_libdir}/ghc-%{version}/containers-*/libHScontainers-%{gpv_containers}_p.a
+%{_libdir}/ghc-%{version}/containers-*/HScontainers-%{gpv_containers}.p_o
 %{_libdir}/ghc-%{version}/containers-*/Data/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Containers/*.p_hi
 %{_libdir}/ghc-%{version}/containers-*/Data/IntMap/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Internal/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Merge/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/IntMap/Strict/*.p_hi
 %{_libdir}/ghc-%{version}/containers-*/Data/IntSet/*.p_hi
 %{_libdir}/ghc-%{version}/containers-*/Data/Map/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Internal/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Merge/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Map/Strict/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Sequence/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Data/Sequence/Internal/*.p_hi
 %{_libdir}/ghc-%{version}/containers-*/Data/Set/*.p_hi
+%{_libdir}/ghc-%{version}/containers-*/Utils/Containers/Internal/*.p_hi
 
 %{_libdir}/ghc-%{version}/deepseq-*/libHSdeepseq-%{gpv_deepseq}_p.a
+%{_libdir}/ghc-%{version}/deepseq-*/HSdeepseq-%{gpv_deepseq}.p_o
 %{_libdir}/ghc-%{version}/deepseq-*/Control/*.p_hi
+%{_libdir}/ghc-%{version}/deepseq-*/Control/DeepSeq/*.p_hi
 
 %{_libdir}/ghc-%{version}/directory-*/libHSdirectory-%{gpv_directory}_p.a
+%{_libdir}/ghc-%{version}/directory-*/HSdirectory-%{gpv_directory}.p_o
 %{_libdir}/ghc-%{version}/directory-*/System/*.p_hi
+%{_libdir}/ghc-%{version}/directory-*/System/Directory/*.p_hi
+%{_libdir}/ghc-%{version}/directory-*/System/Directory/Internal/*.p_hi
+
+%{_libdir}/ghc-%{version}/exceptions-*/libHSexceptions-%{gpv_exceptions}_p.a
+%{_libdir}/ghc-%{version}/exceptions-*/HSexceptions-%{gpv_exceptions}.p_o
+%{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/*.p_hi
+%{_libdir}/ghc-%{version}/exceptions-*/Control/Monad/Catch/*.p_hi
 
 %{_libdir}/ghc-%{version}/filepath-*/libHSfilepath-%{gpv_filepath}_p.a
+%{_libdir}/ghc-%{version}/filepath-*/HSfilepath-%{gpv_filepath}.p_o
 %{_libdir}/ghc-%{version}/filepath-*/System/*.p_hi
 %{_libdir}/ghc-%{version}/filepath-*/System/FilePath/*.p_hi
 
 %{_libdir}/ghc-%{version}/ghc-%{version}/libHSghc-%{version}_p.a
 %{_libdir}/ghc-%{version}/ghc-%{version}/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/Dwarf/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Hs/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/HsToCore/PmCheck/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/Platform/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/GHC/StgToCmm/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/Hoopl/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/Llvm/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/LlvmCodeGen/*.p_hi
@@ -879,73 +1704,180 @@ fi
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/PPC/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/SPARC/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/RegAlloc/Linear/X86_64/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/SPARC/CodeGen/*.p_hi
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/*.p_hi
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Builtins/*.p_hi
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Generic/*.p_hi
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Monad/*.p_hi
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Type/*.p_hi
-%{_libdir}/ghc-%{version}/ghc-%{version}/Vectorise/Utils/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/StgLiftLams/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-%{version}/SysTools/*.p_hi
 %{_libdir}/ghc-%{version}/ghc-%{version}/X86/*.p_hi
 
-%{_libdir}/ghc-%{version}/ghc-prim-*/libHSghc-prim-%{gpv_ghc_prim}_p.a
-%{_libdir}/ghc-%{version}/ghc-prim-*/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/libHSghc-boot-%{version}_p.a
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/HSghc-boot-%{version}.p_o
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-boot-%{version}/GHC/Platform/*.p_hi
 
-%{_libdir}/ghc-%{version}/haskell2010-*/libHShaskell2010-%{gpv_haskell2010}_p.a
-%{_libdir}/ghc-%{version}/haskell2010-*/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/Control/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/Data/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/Foreign/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/Foreign/C/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/Foreign/Marshal/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/System/*.p_hi
-%{_libdir}/ghc-%{version}/haskell2010-*/System/IO/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/libHSghc-boot-th-%{version}_p.a
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/HSghc-boot-th-%{version}.p_o
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/ForeignSrcLang/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-boot-th-%{version}/GHC/LanguageExtensions/*.p_hi
 
-%{_libdir}/ghc-%{version}/haskell98-*/libHShaskell98-%{gpv_haskell98}_p.a
-%{_libdir}/ghc-%{version}/haskell98-*/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-compact-*/libHSghc-compact-%{gpv_ghc_compact}_p.a
+%{_libdir}/ghc-%{version}/ghc-compact-*/HSghc-compact-%{gpv_ghc_compact}.p_o
+%{_libdir}/ghc-%{version}/ghc-compact-*/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-compact-*/GHC/Compact/*.p_hi
 
-%{_libdir}/ghc-%{version}/hoopl-*/libHShoopl-%{gpv_hoopl}_p.a
-%{_libdir}/ghc-%{version}/hoopl-*/Compiler/*.p_hi
-%{_libdir}/ghc-%{version}/hoopl-*/Compiler/Hoopl/*.p_hi
-%{_libdir}/ghc-%{version}/hoopl-*/Compiler/Hoopl/Passes/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/libHSghc-heap-%{version}_p.a
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/HSghc-heap-%{version}.p_o
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-heap-%{version}/GHC/Exts/Heap/InfoTable/*.p_hi
+
+%{_libdir}/ghc-%{version}/ghc-prim-*/libHSghc-prim-%{gpv_ghc_prim}_p.a
+%{_libdir}/ghc-%{version}/ghc-prim-*/HSghc-prim-%{gpv_ghc_prim}.p_o
+%{_libdir}/ghc-%{version}/ghc-prim-*/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/ghc-prim-*/GHC/Prim/*.p_hi
+
+%{_libdir}/ghc-%{version}/ghci-%{version}/libHSghci-%{version}_p.a
+%{_libdir}/ghc-%{version}/ghci-%{version}/HSghci-%{version}.p_o
+%{_libdir}/ghc-%{version}/ghci-%{version}/*.p_hi
+%{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/*.p_hi
+%{_libdir}/ghc-%{version}/ghci-%{version}/GHCi/TH/*.p_hi
+
+%{_libdir}/ghc-%{version}/haskeline-*/libHShaskeline-%{gpv_haskeline}_p.a
+%{_libdir}/ghc-%{version}/haskeline-*/HShaskeline-%{gpv_haskeline}.p_o
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/*.p_hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/*.p_hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/*.p_hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Backend/Posix/*.p_hi
+%{_libdir}/ghc-%{version}/haskeline-*/System/Console/Haskeline/Command/*.p_hi
 
 %{_libdir}/ghc-%{version}/hpc-*/libHShpc-%{gpv_hpc}_p.a
+%{_libdir}/ghc-%{version}/hpc-*/HShpc-%{gpv_hpc}.p_o
 %{_libdir}/ghc-%{version}/hpc-*/Trace/Hpc/*.p_hi
 
+%ifnarch x32
 %{_libdir}/ghc-%{version}/integer-gmp-*/libHSinteger-gmp-%{gpv_integer_gmp}_p.a
+%{_libdir}/ghc-%{version}/integer-gmp-*/HSinteger-gmp-%{gpv_integer_gmp}.p_o
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/*.p_hi
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/*.p_hi
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/GMP/*.p_hi
 %{_libdir}/ghc-%{version}/integer-gmp-*/GHC/Integer/Logarithms/*.p_hi
+%else
+%{_libdir}/ghc-%{version}/integer-simple-*/HSinteger-simple-%{gpv_integer_simple}.p_o
+%{_libdir}/ghc-%{version}/integer-simple-*/libHSinteger-simple-%{gpv_integer_simple}_p.a
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/*.p_hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/*.p_hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Logarithms/*.p_hi
+%{_libdir}/ghc-%{version}/integer-simple-*/GHC/Integer/Simple/*.p_hi
+%endif
 
-%{_libdir}/ghc-%{version}/old-locale-*/libHSold-locale-%{gpv_old_locale}_p.a
-%{_libdir}/ghc-%{version}/old-locale-*/System/*.p_hi
-
-%{_libdir}/ghc-%{version}/old-time-*/libHSold-time-%{gpv_old_time}_p.a
-%{_libdir}/ghc-%{version}/old-time-*/System/*.p_hi
+%{_libdir}/ghc-%{version}/libiserv-%{version}/libHSlibiserv-%{version}_p.a
+%{_libdir}/ghc-%{version}/libiserv-%{version}/HSlibiserv-%{version}.p_o
+%{_libdir}/ghc-%{version}/libiserv-%{version}/*.p_hi
+%{_libdir}/ghc-%{version}/libiserv-%{version}/GHCi/*.p_hi
+
+%{_libdir}/ghc-%{version}/mtl-*/libHSmtl-%{gpv_mtl}_p.a
+%{_libdir}/ghc-%{version}/mtl-*/HSmtl-%{gpv_mtl}.p_o
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/*.p_hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Cont/*.p_hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Error/*.p_hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/RWS/*.p_hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Reader/*.p_hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/State/*.p_hi
+%{_libdir}/ghc-%{version}/mtl-*/Control/Monad/Writer/*.p_hi
+
+%{_libdir}/ghc-%{version}/parsec-*/libHSparsec-%{gpv_parsec}_p.a
+%{_libdir}/ghc-%{version}/parsec-*/HSparsec-%{gpv_parsec}.p_o
+%{_libdir}/ghc-%{version}/parsec-*/Text/*.p_hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/*.p_hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/ByteString/*.p_hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/Parsec/Text/*.p_hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/*.p_hi
+%{_libdir}/ghc-%{version}/parsec-*/Text/ParserCombinators/Parsec/*.p_hi
 
 %{_libdir}/ghc-%{version}/pretty-*/libHSpretty-%{gpv_pretty}_p.a
+%{_libdir}/ghc-%{version}/pretty-*/HSpretty-%{gpv_pretty}.p_o
 %{_libdir}/ghc-%{version}/pretty-*/Text/*.p_hi
 %{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/*.p_hi
+%{_libdir}/ghc-%{version}/pretty-*/Text/PrettyPrint/Annotated/*.p_hi
 
 %{_libdir}/ghc-%{version}/process-*/libHSprocess-%{gpv_process}_p.a
+%{_libdir}/ghc-%{version}/process-*/HSprocess-%{gpv_process}.p_o
 %{_libdir}/ghc-%{version}/process-*/System/*.p_hi
 %{_libdir}/ghc-%{version}/process-*/System/Process/*.p_hi
 
+%if %{without system_libffi}
+%{_libdir}/ghc-%{version}/rts/libCffi_debug_p.a
+%{_libdir}/ghc-%{version}/rts/libCffi_p.a
+%{_libdir}/ghc-%{version}/rts/libCffi_thr_debug_p.a
+%{_libdir}/ghc-%{version}/rts/libCffi_thr_p.a
+%endif
+%{_libdir}/ghc-%{version}/rts/libHSrts_debug_p.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_p.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr_debug_p.a
+%{_libdir}/ghc-%{version}/rts/libHSrts_thr_p.a
+
+%{_libdir}/ghc-%{version}/stm-*/libHSstm-%{gpv_stm}_p.a
+%{_libdir}/ghc-%{version}/stm-*/HSstm-%{gpv_stm}.p_o
+%{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/*.p_hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Concurrent/STM/*.p_hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Monad/*.p_hi
+%{_libdir}/ghc-%{version}/stm-*/Control/Sequential/*.p_hi
+
 %{_libdir}/ghc-%{version}/template-haskell-*/libHStemplate-haskell-%{gpv_template_haskell}_p.a
+%{_libdir}/ghc-%{version}/template-haskell-*/HStemplate-haskell-%{gpv_template_haskell}.p_o
 %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/*.p_hi
 %{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/*.p_hi
+%{_libdir}/ghc-%{version}/template-haskell-*/Language/Haskell/TH/Lib/*.p_hi
+
+%{_libdir}/ghc-%{version}/terminfo-*/libHSterminfo-%{gpv_terminfo}_p.a
+%{_libdir}/ghc-%{version}/terminfo-*/HSterminfo-%{gpv_terminfo}.p_o
+%{_libdir}/ghc-%{version}/terminfo-*/System/Console/*.p_hi
+%{_libdir}/ghc-%{version}/terminfo-*/System/Console/Terminfo/*.p_hi
+
+%{_libdir}/ghc-%{version}/text-*/libHStext-%{gpv_text}_p.a
+%{_libdir}/ghc-%{version}/text-*/HStext-%{gpv_text}.p_o
+%{_libdir}/ghc-%{version}/text-*/Data/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Encoding/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/Int/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Builder/RealFloat/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Encoding/Fusion/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Fusion/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Lazy/Encoding/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Internal/Unsafe/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/*.p_hi
+%{_libdir}/ghc-%{version}/text-*/Data/Text/Lazy/Builder/*.p_hi
 
 %{_libdir}/ghc-%{version}/time-*/libHStime-%{gpv_time}_p.a
+%{_libdir}/ghc-%{version}/time-*/HStime-%{gpv_time}.p_o
 %{_libdir}/ghc-%{version}/time-*/Data/*.p_hi
 %{_libdir}/ghc-%{version}/time-*/Data/Time/*.p_hi
 %{_libdir}/ghc-%{version}/time-*/Data/Time/Calendar/*.p_hi
 %{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/*.p_hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Clock/Internal/*.p_hi
 %{_libdir}/ghc-%{version}/time-*/Data/Time/Format/*.p_hi
-%{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime/*.p_hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Format/*.p_hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/Format/Parse/*.p_hi
+%{_libdir}/ghc-%{version}/time-*/Data/Time/LocalTime/Internal/*.p_hi
+
+%{_libdir}/ghc-%{version}/transformers-*/libHStransformers-%{gpv_transformers}_p.a
+%{_libdir}/ghc-%{version}/transformers-*/HStransformers-%{gpv_transformers}.p_o
+%{_libdir}/ghc-%{version}/transformers-*/Control/Applicative/*.p_hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/*.p_hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/*.p_hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/RWS/*.p_hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/State/*.p_hi
+%{_libdir}/ghc-%{version}/transformers-*/Control/Monad/Trans/Writer/*.p_hi
+%{_libdir}/ghc-%{version}/transformers-*/Data/Functor/*.p_hi
 
 %{_libdir}/ghc-%{version}/unix-*/libHSunix-%{gpv_unix}_p.a
+%{_libdir}/ghc-%{version}/unix-*/HSunix-%{gpv_unix}.p_o
 %{_libdir}/ghc-%{version}/unix-*/System/*.p_hi
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/*.p_hi
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/ByteString/*.p_hi
@@ -960,8 +1892,16 @@ fi
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Temp/*.p_hi
 %{_libdir}/ghc-%{version}/unix-*/System/Posix/Terminal/*.p_hi
 
+%{_libdir}/ghc-%{version}/xhtml-*/libHSxhtml-%{gpv_xhtml}_p.a
+%{_libdir}/ghc-%{version}/xhtml-*/HSxhtml-%{gpv_xhtml}.p_o
+%{_libdir}/ghc-%{version}/xhtml-*/Text/*.p_hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/*.p_hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Frameset/*.p_hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Strict/*.p_hi
+%{_libdir}/ghc-%{version}/xhtml-*/Text/XHtml/Transitional/*.p_hi
+
 %if %{with doc}
 %files doc
 %defattr(644,root,root,755)
-%doc docs/comm docs-root/{html,*.pdf}
+%doc docs-root/html
 %endif
diff --git a/x32-use-native-x86_64-insn.patch b/x32-use-native-x86_64-insn.patch
new file mode 100644 (file)
index 0000000..f329f93
--- /dev/null
@@ -0,0 +1,27 @@
+Description: Use native x86_64 instructions on x32
+ This patch enables a few native 64-bit integer instructions
+ on x32 which are available on this architecture despite using
+ 32-bit pointers. These instructions are present on x86_64 but
+ not on x86 and ghc checks the size of (void *) to determine
+ that. This method fails on x32 since despite using 32-bit
+ pointers and hence sizeof(void *) == 4, it still uses the
+ full x86_64 instruction set and software-emulated variants
+ of the aforementioned 64-bit integer instructions are
+ therefore not present in the toolchain which will make ghc
+ fail to build on x32.
+ See: https://ghc.haskell.org/trac/ghc/ticket/11571
+ .
+
+Index: ghc-8.8.1+dfsg1/rts/RtsSymbols.c
+===================================================================
+--- ghc-8.8.1+dfsg1.orig/rts/RtsSymbols.c
++++ ghc-8.8.1+dfsg1/rts/RtsSymbols.c
+@@ -939,7 +939,7 @@
+ // 64-bit support functions in libgcc.a
+-#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
++#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32) && !(defined(__x86_64__) && defined(__ILP32__))
+ #define RTS_LIBGCC_SYMBOLS                             \
+       SymI_NeedsProto(__divdi3)                        \
+       SymI_NeedsProto(__udivdi3)                       \