[fossil-users] Makefile
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
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
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
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
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