Re: [fossil-users] autosetup build issues

2012-02-19 Thread Steve Bennett
On 19/02/2012, at 1:44 PM, Jan Danielsson wrote:

 Hello,
 
   I've been trying to get fossil to build using the auto-configurator
 on Solaris/sparc 9, and have encountered some minor bumps in the road.
 
   For the record (in case someone finds this via a web search): I think
 there's something odd about the openssl detection. I had built openssl
 without the shared option (so I only had the shared libraries). But

Building without shared meant you only had the shared libraries??

 even with configure --static (in fossil), I ran into linking problems.
 Building openssl with the shared option made those problems go away. I
 haven't looked into it more closely, as the workaround is trivial, and I
 think most people will have the shared libraries laying around anyway.

With the fix I sent earlier, does openssl detection work properly?

 
   Now there are just two issues remaining, and unfortunately I'm not
 quite sure what to do about them.
 
   1) The SunStudio compiler doesn't support -static; it uses -Bstatic
 and -Bdynamic.
 
   2) While zlib is a system library on Solaris 9, it doesn't appear to
 have libz.a (only libz.so). This means that the final link line needs to
 look something like this:
 
   [...] -Bdynamic -L/opt/openssl-1.0.0g/lib -lz -ldl -Bstatic -lssl
 -lcrypto -lnsl -lsocket
 
 
   My Tcl-Fu is painfully limited and hence I understand near-zero of
 autosetup, but as far as I can gather the current autosetup/auto.def
 isn't really designed to handle compiler differences and mix static and
 dynamic linking?
 
   What I would like to do:
 
   1) Add compiler detection (In this case: find sunstudio, default to
 whatever gcc does)
 
   2) Set dynamic/static link flags (-static vs -Bstatic, etc) depending
 on compiler
 
   3) Introduce a DLIBS which will unconditionally be dynamically
 linked, regardless of whether --static is used or not.

How about forget about static linking and just use dynamic linking?
Even on Linux, static linking is a bit of a minefield.

Can we address the dynamic configure/build issues, and then possibly
revisit static linking?

Cheers,
Steve

 
   I realize there's something conceptually very wrong about dynamically
 linking when it was explicitly requested by the users that static
 linking be used. At the same time, the way I look at it, the project
 should build and run on standard OS installations, with as few separate
 dependencies as possible.
 
   Input is welcome.
 
 -- 
 Kind regards,
 Jan Danielsson
 
 ___
 fossil-users mailing list
 fossil-users@lists.fossil-scm.org
 http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

--
µWeb: Embedded Web Framework - http://uweb.workware.net.au/
WorkWare Systems Pty Ltd
W: www.workware.net.au  P: +61 434 921 300
E: ste...@workware.net.au   F: +61 7 3391 6002





___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] autosetup build issues

2012-02-19 Thread Jan Danielsson
On 02/19/12 23:28, Steve Bennett wrote:
   For the record (in case someone finds this via a web search): I think
 there's something odd about the openssl detection. I had built openssl
 without the shared option (so I only had the shared libraries). But
 
 Building without shared meant you only had the shared libraries??

   Oops; I meant I only had static libraries. Sorry for the confusion.

 even with configure --static (in fossil), I ran into linking problems.
 Building openssl with the shared option made those problems go away. I
 haven't looked into it more closely, as the workaround is trivial, and I
 think most people will have the shared libraries laying around anyway.
 With the fix I sent earlier, does openssl detection work properly?

   It started working once I had built the dynamic OpenSSL libraries.
That's what I thought felt odd -- the detection seemed to fail to find
the OpenSSL static libs, even though --static was passed.

[---]
 How about forget about static linking and just use dynamic linking?

   Oh, I got dynamic linking working yesterday; that's not a problem --
but as I wrote in my other mail, I'm specifically looking to dynamically
link (more specifically: with OpenSSL).

   (I stress that this is not something I'm doing to torture myself, I'm
using a network of several Solaris systems, and I want to be able to
build one fossil binary and move it around; so there's a practical
reason for my battle with static builds on Solaris).

 Can we address the dynamic configure/build issues, and then possibly
 revisit static linking?

   The dynamic linking works, but unfortunately on these particular
systems I want static linking. :)

-- 
Kind regards,
Jan Danielsson

___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] autosetup build issues

2012-02-19 Thread Richard Hipp
On Sun, Feb 19, 2012 at 7:11 PM, Jan Danielsson
jan.m.daniels...@gmail.comwrote:


  Can we address the dynamic configure/build issues, and then possibly
  revisit static linking?

The dynamic linking works, but unfortunately on these particular
 [Solaris]
 systems I want static linking. :)



I agree that static linking is nice.  Unfortunately, the Solaris developers
of Sun and now Oracle disagree.

Hal Pomeranz at http://www.deer-run.com/~hal/sol-static.txt writes
that Solaris
has historically made it difficult to statically compile interesting
binaries.

Beginning with Solaris 10, static linking is not just difficult, it has
become impossible.  See
https://blogs.oracle.com/rie/entry/static_linking_where_did_it for details.


-- 
D. Richard Hipp
d...@sqlite.org
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] autosetup build issues

2012-02-19 Thread Jan Danielsson
On 02/20/12 01:24, Richard Hipp wrote:
[---]
The dynamic linking works, but unfortunately on these particular
 [Solaris]
 systems I want static linking. :)
 
 I agree that static linking is nice.  Unfortunately, the Solaris developers
 of Sun and now Oracle disagree.
[---]

   It seems I'm in an uphill struggle; even more so than I initially
thought. I won't put any more work into the static linking then, as I
suspect I'm a corner case.

   Anywho, my primary concern was getting OpenSSL statically linked into
fossil -- and using a slightly modified version of the final link
command line I got what I wanted. And if anyone else needs/wants it, the
information is easily found via a web search.

-- 
Kind regards,
Jan Danielsson

___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] autosetup build issues

2012-02-19 Thread Steve Bennett
On 20/02/2012, at 11:16 AM, Jan Danielsson wrote:

 On 02/20/12 01:24, Richard Hipp wrote:
 [---]
   The dynamic linking works, but unfortunately on these particular
 [Solaris]
 systems I want static linking. :)
 
 I agree that static linking is nice.  Unfortunately, the Solaris developers
 of Sun and now Oracle disagree.
 [---]
 
   It seems I'm in an uphill struggle; even more so than I initially
 thought. I won't put any more work into the static linking then, as I
 suspect I'm a corner case.
 
   Anywho, my primary concern was getting OpenSSL statically linked into
 fossil -- and using a slightly modified version of the final link
 command line I got what I wanted. And if anyone else needs/wants it, the
 information is easily found via a web search.

That works for me. I don't think it is worth it to try to make this work
out of the box.

Cheers,
Steve

--
µWeb: Embedded Web Framework - http://uweb.workware.net.au/
WorkWare Systems Pty Ltd
W: www.workware.net.au  P: +61 434 921 300
E: ste...@workware.net.au   F: +61 7 3391 6002





___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


[fossil-users] autosetup build issues

2012-02-18 Thread Jan Danielsson
Hello,

   I've been trying to get fossil to build using the auto-configurator
on Solaris/sparc 9, and have encountered some minor bumps in the road.

   For the record (in case someone finds this via a web search): I think
there's something odd about the openssl detection. I had built openssl
without the shared option (so I only had the shared libraries). But
even with configure --static (in fossil), I ran into linking problems.
Building openssl with the shared option made those problems go away. I
haven't looked into it more closely, as the workaround is trivial, and I
think most people will have the shared libraries laying around anyway.

   Now there are just two issues remaining, and unfortunately I'm not
quite sure what to do about them.

   1) The SunStudio compiler doesn't support -static; it uses -Bstatic
and -Bdynamic.

   2) While zlib is a system library on Solaris 9, it doesn't appear to
have libz.a (only libz.so). This means that the final link line needs to
look something like this:

   [...] -Bdynamic -L/opt/openssl-1.0.0g/lib -lz -ldl -Bstatic -lssl
-lcrypto -lnsl -lsocket


   My Tcl-Fu is painfully limited and hence I understand near-zero of
autosetup, but as far as I can gather the current autosetup/auto.def
isn't really designed to handle compiler differences and mix static and
dynamic linking?

   What I would like to do:

   1) Add compiler detection (In this case: find sunstudio, default to
whatever gcc does)

   2) Set dynamic/static link flags (-static vs -Bstatic, etc) depending
on compiler

   3) Introduce a DLIBS which will unconditionally be dynamically
linked, regardless of whether --static is used or not.

   I realize there's something conceptually very wrong about dynamically
linking when it was explicitly requested by the users that static
linking be used. At the same time, the way I look at it, the project
should build and run on standard OS installations, with as few separate
dependencies as possible.

   Input is welcome.

-- 
Kind regards,
Jan Danielsson

___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users