[fossil-users] Makefile

2010-07-07 Thread Michael Richter
I'd like to re-engineer the Makefile approach in fossil so that it's easier
to work out what needs to be put in place for any given platform.  Is there
enough interest in this that it's worth doing the work in my private branch
for inspection?

-- 
Perhaps people don't believe this, but throughout all of the discussions of
entering China our focus has really been what's best for the Chinese people.
It's not been about our revenue or profit or whatnot.
--Sergey Brin, demonstrating the emptiness of the don't be evil mantra.
___
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] Makefile

2010-07-07 Thread Michael Richter
I'm looking more at having separate included .mk files for platform-specific
stuff as well as better support for compiling under Windows as you've noted.
 Ideally I'd like to have a decent selection of platforms including:
- Linux
- *BSD
- Solaris
- Windows

I'd also like to explore making compiler choices configurable through simple
environment variable settings or the like with support for these out of the
box:
- gcc (obviously)
- clang
- Visual Studio?


On 7 July 2010 18:34, Paul Ruizendaal p...@planet.nl wrote:

 On Wed, 7 Jul 2010 16:34:31 +0800, Michael Richter ttmrich...@gmail.com
 wrote:
  I'd like to re-engineer the Makefile approach in fossil so that it's
 easier
  to work out what needs to be put in place for any given platform.  Is
 there
  enough interest in this that it's worth doing the work in my private
 branch
  for inspection?

 I find that building on Linux and FreeBSD works out of the box, and I'm
 told that cross-building Win executables on Linux with gcc-mingw installed
 also works out of the box. Building on Windows itself with gcc-mingw
 doesn't work for me (just mingw installed, not cygwin or msys). I keep
 finding myself making the following adjustments to Makefile and
 src/main.mk:

 - change from slash to backslash in the file paths
 - create VERSION.h by hand: even with awk installed, the quoting involved
 doesn't work

 There was an attempt to fix both issues a few weeks back, but is was a
 botched attempt and the changes were backed out. The slash/backslash thing
 should not be too hard to correct, and I'm thinking to have a little C
 program to generate VERSION.h instead of using awk for that. The source is
 already heavily preprocessed, so building one more tool should not upset
 the build design.

 Perhaps others can comment on building fossil on OS X and Solaris.

 How can I help?

 Paul

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




-- 
Perhaps people don't believe this, but throughout all of the discussions of
entering China our focus has really been what's best for the Chinese people.
It's not been about our revenue or profit or whatnot.
--Sergey Brin, demonstrating the emptiness of the don't be evil mantra.
___
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] Makefile

2010-07-07 Thread Ross Berteig
At 03:34 AM 7/7/2010, Paul Ruizendaal wrote:
  Building on Windows itself with gcc-mingw
 doesn't work for me (just mingw installed, not cygwin or msys).

Building within an MSYS shell worked out of the box for me, once
I obtained a suitable packagine of zlib (I used the GnuWin32 port).

 I keep finding myself making the following adjustments to
 Makefile and src/main.mk:
 
 - change from slash to backslash in the file paths
 - create VERSION.h by hand: even with awk installed, the quoting
 involved
 doesn't work
 
 There was an attempt to fix both issues a few weeks back, but is
 was a botched attempt and the changes were backed out. The
 slash/backslash thing should not be too hard to correct, and I'm
 thinking to have a little C program to generate VERSION.h instead
 of using awk for that. The source is already heavily
 preprocessed, so building one more tool should not upset the
 build design.

I suspect that with some (nearly) magical environment variable
tweakage make could be taught to use the MSYS bash as its shell,
and could then happily build from a CMD prompt as well. But it
would still require MSYS be installed.

It should be possible in principle to make it possible to build
with only MinGW32, Gnu Make, and enough ported unix-like core
utities from the GnuWin32 project, but I didn't take the time to
work out the stumbling blocks.

As long as Gnu Make is used, there should be no need to convert
between slashes and backslashes. Both are legal and understood by
the Windows API. It is just that the DOS heritage of the command
prompt (and its CPM heritage before that) tends to tread slash as
an option starter.

If the Makefile is careful to only use utilities and shell
features that are either common between /bin/sh and CMD.EXE or
provided in a readily available distribution like MinGW32 (for
GCC) and from the GnuWin32 project then it should be possible to
make it work on either *nix or Windows without any edits at all.

That said, replacing the cryptic AWK invokations with a tiny C
program seems like a decent idea. It wouldn't be difficult for it
to be generically useful for any project that happens to use
fossil, as this is a common need.

Useful GnuWin32 packages include:
http://gnuwin32.sourceforge.net/packages/make.htm
http://gnuwin32.sourceforge.net/packages/coreutils.htm
http://gnuwin32.sourceforge.net/packages/sed.htm
http://gnuwin32.sourceforge.net/packages/gawk.htm
http://gnuwin32.sourceforge.net/packages/zlib.htm
http://gnuwin32.sourceforge.net/packages/zip.htm
http://gnuwin32.sourceforge.net/packages/unzip.htm
http://gnuwin32.sourceforge.net/packages/cygutils.htm
http://gnuwin32.sourceforge.net/packages/diffutils.htm
http://gnuwin32.sourceforge.net/packages/patch.htm


Ross Berteig   r...@cheshireeng.com
Cheshire Engineering Corp.   http://www.CheshireEng.com/

___
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] Makefile

2010-07-07 Thread Dan
  Yep.. I build fossil in cmd.exe on vista regularly..

I have also managed to get ssh,git,perl + many other non windows friendly 
packages to work natively

I do have mingw+msys installed, but the biggest hassle was a lot of time 
getting 
the PATH environment right.. especially the order of the paths, so that things 
cascade through the various versions of different utils (especially ssh)

for a while i had some custom edits to the makefile.w32, but the latest version 
from trunk now works fine as is..


On 8/07/2010 7:38 AM, Ross Berteig wrote:
 At 03:34 AM 7/7/2010, Paul Ruizendaal wrote:
    Building on Windows itself with gcc-mingw
   doesn't work for me (just mingw installed, not cygwin or msys).

 Building within an MSYS shell worked out of the box for me, once
 I obtained a suitable packagine of zlib (I used the GnuWin32 port).

   I keep finding myself making the following adjustments to
   Makefile and src/main.mk:
   
   - change from slash to backslash in the file paths
   - create VERSION.h by hand: even with awk installed, the quoting
   involved
   doesn't work
   
   There was an attempt to fix both issues a few weeks back, but is
   was a botched attempt and the changes were backed out. The
   slash/backslash thing should not be too hard to correct, and I'm
   thinking to have a little C program to generate VERSION.h instead
   of using awk for that. The source is already heavily
   preprocessed, so building one more tool should not upset the
   build design.

 I suspect that with some (nearly) magical environment variable
 tweakage make could be taught to use the MSYS bash as its shell,
 and could then happily build from a CMD prompt as well. But it
 would still require MSYS be installed.

 It should be possible in principle to make it possible to build
 with only MinGW32, Gnu Make, and enough ported unix-like core
 utities from the GnuWin32 project, but I didn't take the time to
 work out the stumbling blocks.

 As long as Gnu Make is used, there should be no need to convert
 between slashes and backslashes. Both are legal and understood by
 the Windows API. It is just that the DOS heritage of the command
 prompt (and its CPM heritage before that) tends to tread slash as
 an option starter.

 If the Makefile is careful to only use utilities and shell
 features that are either common between /bin/sh and CMD.EXE or
 provided in a readily available distribution like MinGW32 (for
 GCC) and from the GnuWin32 project then it should be possible to
 make it work on either *nix or Windows without any edits at all.

 That said, replacing the cryptic AWK invokations with a tiny C
 program seems like a decent idea. It wouldn't be difficult for it
 to be generically useful for any project that happens to use
 fossil, as this is a common need.

 Useful GnuWin32 packages include:
 http://gnuwin32.sourceforge.net/packages/make.htm
 http://gnuwin32.sourceforge.net/packages/coreutils.htm
 http://gnuwin32.sourceforge.net/packages/sed.htm
 http://gnuwin32.sourceforge.net/packages/gawk.htm
 http://gnuwin32.sourceforge.net/packages/zlib.htm
 http://gnuwin32.sourceforge.net/packages/zip.htm
 http://gnuwin32.sourceforge.net/packages/unzip.htm
 http://gnuwin32.sourceforge.net/packages/cygutils.htm
 http://gnuwin32.sourceforge.net/packages/diffutils.htm
 http://gnuwin32.sourceforge.net/packages/patch.htm


 Ross Berteig   r...@cheshireeng.com
 Cheshire Engineering Corp.   http://www.CheshireEng.com/

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

___
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] fossil-users Digest, Vol 30, Issue 4

2010-07-07 Thread jim Schimpf
Builds fine out of the box in various versions of OS X.  (10.5 and  
10.6) You just have to have X code installed.

--jim

On Jul 7, 2010, at 8:00 AM, fossil-users-requ...@lists.fossil-scm.org  
wrote:

 Send fossil-users mailing list submissions to
   fossil-users@lists.fossil-scm.org

 To subscribe or unsubscribe via the World Wide Web, visit
   http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil- 
 users

 or, via email, send a message with subject or body 'help' to
   fossil-users-requ...@lists.fossil-scm.org

 You can reach the person managing the list at
   fossil-users-ow...@lists.fossil-scm.org

 When replying, please edit your Subject line so it is more specific
 than Re: Contents of fossil-users digest...


 Today's Topics:

   1. Makefile (Michael Richter)
   2. Re: Makefile (Paul Ruizendaal)


 --

 Message: 1
 Date: Wed, 7 Jul 2010 16:34:31 +0800
 From: Michael Richter ttmrich...@gmail.com
 Subject: [fossil-users] Makefile
 To: fossil-users@lists.fossil-scm.org
 Message-ID:
   aanlktimzbhdx0-fxfyiiz_yp3rjei7kw3uwzqfiae...@mail.gmail.com
 Content-Type: text/plain; charset=utf-8

 I'd like to re-engineer the Makefile approach in fossil so that it's  
 easier
 to work out what needs to be put in place for any given platform.   
 Is there
 enough interest in this that it's worth doing the work in my private  
 branch
 for inspection?

 -- 
 Perhaps people don't believe this, but throughout all of the  
 discussions of
 entering China our focus has really been what's best for the Chinese  
 people.
 It's not been about our revenue or profit or whatnot.
 --Sergey Brin, demonstrating the emptiness of the don't be evil  
 mantra.
 -- next part --
 An HTML attachment was scrubbed...
 URL: 
 http://lists.fossil-scm.org:8080/pipermail/fossil-users/attachments/20100707/33c1059a/attachment-0001.html

 --

 Message: 2
 Date: Wed, 07 Jul 2010 12:34:52 +0200
 From: Paul Ruizendaal p...@planet.nl
 Subject: Re: [fossil-users] Makefile
 To: fossil-users@lists.fossil-scm.org
 Message-ID: 7501112d1ad5951ac50fd5a1e9b6c...@127.0.0.1
 Content-Type: text/plain; charset=UTF-8

 On Wed, 7 Jul 2010 16:34:31 +0800, Michael Richter ttmrich...@gmail.com 
 
 wrote:
 I'd like to re-engineer the Makefile approach in fossil so that it's
 easier
 to work out what needs to be put in place for any given platform.  Is
 there
 enough interest in this that it's worth doing the work in my private
 branch
 for inspection?

 I find that building on Linux and FreeBSD works out of the box, and  
 I'm
 told that cross-building Win executables on Linux with gcc-mingw  
 installed
 also works out of the box. Building on Windows itself with gcc-mingw
 doesn't work for me (just mingw installed, not cygwin or msys). I keep
 finding myself making the following adjustments to Makefile and
 src/main.mk:

 - change from slash to backslash in the file paths
 - create VERSION.h by hand: even with awk installed, the quoting  
 involved
 doesn't work

 There was an attempt to fix both issues a few weeks back, but is was a
 botched attempt and the changes were backed out. The slash/backslash  
 thing
 should not be too hard to correct, and I'm thinking to have a little C
 program to generate VERSION.h instead of using awk for that. The  
 source is
 already heavily preprocessed, so building one more tool should not  
 upset
 the build design.

 Perhaps others can comment on building fossil on OS X and Solaris.

 How can I help?

 Paul



 --

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


 End of fossil-users Digest, Vol 30, Issue 4
 ***

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