<br><br><div class="gmail_quote">On Sat, Jan 31, 2009 at 04:01, John Goerzen <span dir="ltr">&lt;<a href="mailto:jgoerzen@complete.org">jgoerzen@complete.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="Ih2E3d">On Sat, Jan 31, 2009 at 01:51:54AM +0100, Krzysztof Skrz??tnicki wrote:<br>
&gt; The following change in .cabal file may solve the problems:---<br>
&gt; flag base4<br>
&gt; &nbsp; description: Choose base-4 if possible<br>
&gt; &nbsp; default: True<br>
&gt;<br>
&gt; library<br>
&gt; &nbsp; if flag(splitBase)<br>
&gt; &nbsp; &nbsp; if flag(base4)<br>
&gt; &nbsp; &nbsp; &nbsp; Build-Depends: base&gt;=4, old-time, time, bytestring, containers,<br>
&gt; old-locale<br>
&gt; &nbsp; &nbsp; else<br>
&gt; &nbsp; &nbsp; &nbsp; Build-Depends: base&gt;=3, old-time, time, bytestring, containers,<br>
&gt; old-locale<br>
&gt; &nbsp; else<br>
&gt; &nbsp; &nbsp; Build-Depends: base&lt;3<br>
&gt; &nbsp; Build-Depends: mtl, convertible &gt;= 1.0.1, utf8-string<br>
&gt; ---<br>
&gt;<br>
&gt; It works for me and I *think* will also work for other setups, most notably<br>
&gt; GHC 6.8.*.<br>
<br>
</div>Not out of the box. &nbsp;The base4 flag will be on by default for GHC<br>
6.8.x too, and they&#39;ll get the base &gt;= 4 dep, which will break.<br>
They&#39;d have to configure with the option to disable a flag (-f -base4<br>
if memory serves), which is neither intuitive nor automatic.<br></blockquote></div><br><div>No, not really. I downloaded GHC 6.8.3 to test it, and&nbsp;it works:</div><div>&nbsp;</div><div><div>D:\biblioteki\HDBC-2.0.0&gt;cabal install -w c:\ghc\ghc-6.8.3\bin\ghc</div>
<div>Resolving dependencies...</div><div>Configuring HDBC-2.0.0.2...</div><div>Preprocessing library HDBC-2.0.0.2...</div><div>Preprocessing executables for HDBC-2.0.0.2...</div><div>Building HDBC-2.0.0.2...</div><div>[1 of 7] Compiling Database.HDBC.SqlValue ( Database/HDBC/SqlValue.hs, dist\build/Database/HDBC/SqlValue.o )</div>
<div>[2 of 7] Compiling Database.HDBC.ColTypes ( Database/HDBC/ColTypes.hs, dist\build/Database/HDBC/ColTypes.o )</div><div>[3 of 7] Compiling Database.HDBC.Statement ( Database/HDBC/Statement.hs, dist\build/Database/HDBC/Statement.o )</div>
<div><br></div><div>Database/HDBC/Statement.hs:15:0:</div><div>&nbsp;&nbsp; &nbsp;Warning: Module `Control.Exception&#39; is imported, but nothing from it is used,</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; except perhaps instances visible in `Control.Exception&#39;</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; To suppress this warning, use: import Control.Exception()</div><div>[4 of 7] Compiling Database.HDBC.Types ( Database/HDBC/Types.hs, dist\build/Database/HDBC/Types.o )</div><div>[5 of 7] Compiling Database.HDBC.Utils ( Database/HDBC/Utils.hs, dist\build/Database/HDBC/Utils.o )</div>
<div>[6 of 7] Compiling Database.HDBC.DriverUtils ( Database/HDBC/DriverUtils.hs, dist\build/Database/HDBC/DriverUtils.o )</div><div>[7 of 7] Compiling Database.HDBC &nbsp; &nbsp;( Database/HDBC.hs, dist\build/Database/HDBC.o )</div>
<div>C:\ghc\ghc-6.10.1\bin\ar.exe: creating dist\build\libHSHDBC-2.0.0.2.a</div><div>Installing library in C:\Program Files\Haskell\HDBC-2.0.0.2\ghc-6.8.3</div><div>Registering HDBC-2.0.0.2...</div><div>Reading package info from &quot;dist\\installed-pkg-config&quot; ... done.</div>
<div>Saving old package config file... done.</div><div>Writing new package config file... done.</div><div><br></div><div>Checking:</div><div><br></div><div><div>C:\ghc\ghc-6.8.3\bin&gt;ghc-pkg list HDBC</div><div>C:/ghc/ghc-6.8.3\package.conf:</div>
<div>&nbsp;&nbsp; &nbsp;HDBC-2.0.0.2</div><div><br></div><div>So both 6.8.3 and 6.10.1 work as expected.</div><div><br></div><div>I can&#39;t remember the exact page in docs, but as far as i remember if Cabal fails to satisfy conditions with certain flag on its default settings the flag is changed and dependency calculation restarts.</div>
<div><br></div><div>All best</div><div><br></div><div>Christopher SkrzÄ™tnicki</div><div><br></div></div></div>