Re: [fossil-users] Fossil build improvements...

2016-02-08 Thread David Macek
On 8. 2. 2016 9:47, Jan Nijtmans wrote:
> 2016-02-07 19:12 GMT+01:00 David Macek:
>> The reason is to reduce unexpected behavior. In MSYS2, we want to build 
>> software as close as
>> reasonably possible to Linux "originals". I can see that the WIN32/CYGWIN 
>> stuff is there for a
>> reason, but it's more suited for Fossil as a stand-alone app on otherwise 
>> graphical Windows.
> 
> Yes, I see. You are using msys2 as a kind of "minimal cygwin". Does
> that also mean that your
> fossil.exe depends on msys dll's? If so, I don't think that's suitable
> for a large public, it will
> work fine only in an msys2 environment.
> 
> However, I looked at your patch, and I see the goal behind it. Thanks!

No. I'm building with mingw-w64. MSYS2 is there only for the build system.

>>> BROKEN_MINGW_CMDLINE is meant for the original mingw only, for
>>> mingw-w64 everything's fine. For details, see:
>>> 
>>
>> I tried it just now with v1.34 and I need to explicitly define it, otherwise 
>> the build breaks with `undefined reference to `WinMain'` because of the 
>> main/wmain change. It seems that in trunk, it gets defined automatically now.
> 
> This looks like a missing "-municode" linker option. For details how to
> create a UNICODE-aware executable with mingw-w64, see:
> 
> (B.T.W. : defining _UNICODE/UNICODE is not necessary for fossil, because
> it implicitly uses the wide API everywhere already).
> 
> This is the only way I know which enables the use of _all_  unicode
> characters on the command line, not only the ones in the current
> windows code-page.

Hmm, that sounds right. Could the build system use it instead of 
BROKEN_MINGW_CMDLINE when on mingw-w64?

I'll try to test if it works this way when I get home (in about 10 hours).

-- 
David Macek



smime.p7s
Description: S/MIME Cryptographic Signature
___
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 build improvements...

2016-02-08 Thread Jan Nijtmans
2016-02-07 19:12 GMT+01:00 David Macek:
> The reason is to reduce unexpected behavior. In MSYS2, we want to build 
> software as close as
> reasonably possible to Linux "originals". I can see that the WIN32/CYGWIN 
> stuff is there for a
> reason, but it's more suited for Fossil as a stand-alone app on otherwise 
> graphical Windows.

Yes, I see. You are using msys2 as a kind of "minimal cygwin". Does
that also mean that your
fossil.exe depends on msys dll's? If so, I don't think that's suitable
for a large public, it will
work fine only in an msys2 environment.

However, I looked at your patch, and I see the goal behind it. Thanks!

>> BROKEN_MINGW_CMDLINE is meant for the original mingw only, for
>> mingw-w64 everything's fine. For details, see:
>> 
>
> I tried it just now with v1.34 and I need to explicitly define it, otherwise 
> the build breaks with `undefined reference to `WinMain'` because of the 
> main/wmain change. It seems that in trunk, it gets defined automatically now.

This looks like a missing "-municode" linker option. For details how to
create a UNICODE-aware executable with mingw-w64, see:

(B.T.W. : defining _UNICODE/UNICODE is not necessary for fossil, because
it implicitly uses the wide API everywhere already).

This is the only way I know which enables the use of _all_  unicode
characters on the command line, not only the ones in the current
windows code-page.

Regards,
   Jan Nijtmans
___
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 build improvements...

2016-02-07 Thread David Macek
On 7. 2. 2016 2:53, Joe Mistachkin wrote:
> 
> I'm unable to test with MingW64; however, I think Jan Nijtmans uses it.

Hmm. So hopefully he's watching the list.

One of my problems is with the linenoise library. It requires  and 
possibly other POSIX-only stuff. Is there a way to override it to use 
editline/readline?

Is f5f81a2a583bd45a going into trunk at some point? My builds are linked 
dynamically and I think this change would break that.

Slightly off-topic: Is there a chance that some of the `#if defined(_WIN32) || 
defined(__CYGWIN__)` stuff can be put under an additional condition? I disable 
a bunch of these using a patch, but using a define instead would be nicer.

Is FOSSIL_ENABLE_MINIZ in Makefile used at all? I get `FOSSIL_ENABLE_MINIZ = 
@FOSSIL_ENABLE_MINIZ@` in my Makefile.

Is BROKEN_MINGW_CMDLINE supposed to be defined on mingw-w64? It seems to build 
and work regardless (both globbing and non-ASCII characters in filenames), but 
maybe I'm missing something.

Cheers.

-- 
David Macek



smime.p7s
Description: S/MIME Cryptographic Signature
___
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 build improvements...

2016-02-07 Thread Baruch Burstein
On Sun, Feb 7, 2016 at 3:12 PM, David Macek  wrote:

> On 7. 2. 2016 2:53, Joe Mistachkin wrote:
> >
> > I'm unable to test with MingW64; however, I think Jan Nijtmans uses it.
>
> Hmm. So hopefully he's watching the list.
>
> One of my problems is with the linenoise library. It requires 
> and possibly other POSIX-only stuff. Is there a way to override it to use
> editline/readline?
>
> Is f5f81a2a583bd45a going into trunk at some point? My builds are linked
> dynamically and I think this change would break that.
>
> Slightly off-topic: Is there a chance that some of the `#if
> defined(_WIN32) || defined(__CYGWIN__)` stuff can be put under an
> additional condition? I disable a bunch of these using a patch, but using a
> define instead would be nicer.
>
> Is FOSSIL_ENABLE_MINIZ in Makefile used at all? I get `FOSSIL_ENABLE_MINIZ
> = @FOSSIL_ENABLE_MINIZ@` in my Makefile.
>
> Is BROKEN_MINGW_CMDLINE supposed to be defined on mingw-w64? It seems to
> build and work regardless (both globbing and non-ASCII characters in
> filenames), but maybe I'm missing something.


I have successfully built fossil using mingw64 using bote the new
configure/make and the old makefile.mingw. I haven't tested any settings
other than the default using the new way, but using plain configure/make I
got a working binary. Using the old makefile, I have compiled with X64=1
from the msys shell, and with X64=1 and USE_WINDOWS=1 from the windows
command line, with various combinations of SSL and miniz support, all
successfully. I have never had to either set or unset BROKEN_MINGW_CMDLINE.
No idea what it does, but the build seems to work anyway.


-- 
˙uʍop-ǝpısdn sı ɹoʇıuoɯ ɹnoʎ 'sıɥʇ pɐǝɹ uɐɔ noʎ ɟı
___
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 build improvements...

2016-02-07 Thread Jan Nijtmans
2016-02-07 14:12 GMT+01:00 David Macek:
> Hmm. So hopefully he's watching the list.

Yes, I am watching this list. I always build fossil using
win/Makefile.mingw or win/Makefile.mingw.mistachkin,
they work fine in the combinations I normally use. My (64-bit
mingw-w64) build can be found here:


> One of my problems is with the linenoise library. It requires  and 
> possibly other POSIX-only stuff. Is there a way to override it to use 
> editline/readline?

I didn't try to enable lineoise, I just was assuming it wouldn't work on win32.

> Slightly off-topic: Is there a chance that some of the `#if defined(_WIN32) 
> || defined(__CYGWIN__)` stuff can be put under an additional condition? I 
> disable a bunch of these using a patch, but using a define instead would be 
> nicer.

Well, I'm interested in your patch, and the reason for disabling those
parts. I'm not aware of any trouble those sections might cause, but
I'm aware of the trouble that might be caused by leaving them out ;-)

> Is FOSSIL_ENABLE_MINIZ in Makefile used at all? I get `FOSSIL_ENABLE_MINIZ = 
> @FOSSIL_ENABLE_MINIZ@` in my Makefile.

I don't think using miniz gives any advantage, linking in zlib
statically is what I always do.

> Is BROKEN_MINGW_CMDLINE supposed to be defined on mingw-w64? It seems to 
> build and work regardless (both globbing and non-ASCII characters in 
> filenames), but maybe I'm missing something.

BROKEN_MINGW_CMDLINE is meant for the original mingw only, for
mingw-w64 everything's fine. For details, see:


Regards,
 Jan Nijtmans
___
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 build improvements...

2016-02-07 Thread bch
On Feb 7, 2016 5:12 AM, "David Macek"  wrote:
>
> On 7. 2. 2016 2:53, Joe Mistachkin wrote:
> >
> > I'm unable to test with MingW64; however, I think Jan Nijtmans uses it.
>
> Hmm. So hopefully he's watching the list.
>
> One of my problems is with the linenoise library. It requires 
and possibly other POSIX-only stuff. Is there a way to override it to use
editline/readline?

A worthwhile experiment, but remember readline is GPL. Editline is,
however, BSD.

> Is f5f81a2a583bd45a going into trunk at some point? My builds are linked
dynamically and I think this change would break that.
>
> Slightly off-topic: Is there a chance that some of the `#if
defined(_WIN32) || defined(__CYGWIN__)` stuff can be put under an
additional condition? I disable a bunch of these using a patch, but using a
define instead would be nicer.
>
> Is FOSSIL_ENABLE_MINIZ in Makefile used at all? I get
`FOSSIL_ENABLE_MINIZ = @FOSSIL_ENABLE_MINIZ@` in my Makefile.
>
> Is BROKEN_MINGW_CMDLINE supposed to be defined on mingw-w64? It seems to
build and work regardless (both globbing and non-ASCII characters in
filenames), but maybe I'm missing something.
>
> Cheers.
>
> --
> David Macek
>
>
> ___
> 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 build improvements...

2016-02-07 Thread David Macek
On 7. 2. 2016 15:24, Jan Nijtmans wrote:
> 2016-02-07 14:12 GMT+01:00 David Macek:
>> Hmm. So hopefully he's watching the list.
> 
> Yes, I am watching this list. I always build fossil using
> win/Makefile.mingw or win/Makefile.mingw.mistachkin,
> they work fine in the combinations I normally use. My (64-bit
> mingw-w64) build can be found here:
> 

I use configure+make. Maybe that's the reason for the things I see.

>> One of my problems is with the linenoise library. It requires  
>> and possibly other POSIX-only stuff. Is there a way to override it to use 
>> editline/readline?
> 
> I didn't try to enable lineoise, I just was assuming it wouldn't work on 
> win32.

Me neither, it just tried to compile. See above.

>> Slightly off-topic: Is there a chance that some of the `#if defined(_WIN32) 
>> || defined(__CYGWIN__)` stuff can be put under an additional condition? I 
>> disable a bunch of these using a patch, but using a define instead would be 
>> nicer.
> 
> Well, I'm interested in your patch, and the reason for disabling those
> parts. I'm not aware of any trouble those sections might cause, but
> I'm aware of the trouble that might be caused by leaving them out ;-)

Current patch here: 
https://github.com/elieux/MINGW-packages/blob/ec40fa2f7fcd1f4958b48c7870a4de7dfb52d708/mingw-w64-fossil/win.patch

The reason is to reduce unexpected behavior. In MSYS2, we want to build 
software as close as reasonably possible to Linux "originals". I can see that 
the WIN32/CYGWIN stuff is there for a reason, but it's more suited for Fossil 
as a stand-alone app on otherwise graphical Windows.

>> Is FOSSIL_ENABLE_MINIZ in Makefile used at all? I get `FOSSIL_ENABLE_MINIZ = 
>> @FOSSIL_ENABLE_MINIZ@` in my Makefile.
> 
> I don't think using miniz gives any advantage, linking in zlib
> statically is what I always do.

I wasn't planning on using miniz. I'm asking why it's not substituted from 
Makefile.in into Makefile. See above.

>> Is BROKEN_MINGW_CMDLINE supposed to be defined on mingw-w64? It seems to 
>> build and work regardless (both globbing and non-ASCII characters in 
>> filenames), but maybe I'm missing something.
> 
> BROKEN_MINGW_CMDLINE is meant for the original mingw only, for
> mingw-w64 everything's fine. For details, see:
> 

I tried it just now with v1.34 and I need to explicitly define it, otherwise 
the build breaks with `undefined reference to `WinMain'` because of the 
main/wmain change. It seems that in trunk, it gets defined automatically now.

-- 
David Macek



smime.p7s
Description: S/MIME Cryptographic Signature
___
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 build improvements...

2016-02-07 Thread Andreas Kupries

> On Sun, Feb 7, 2016 at 3:12 PM, David Macek  wrote:
> 
> > On 7. 2. 2016 2:53, Joe Mistachkin wrote:
> > >
> > > I'm unable to test with MingW64; however, I think Jan Nijtmans uses it.
> >
> > Hmm. So hopefully he's watching the list.
> >
> > One of my problems is with the linenoise library. It requires 
> > and possibly other POSIX-only stuff. Is there a way to override it to use
> > editline/readline?

Note that Steve Bennet of JimTcl has a fork of linenoise which has
code making it usable for Windows.

-- 
So long,
Andreas Kupries 

Developer @ Hewlett Packard Enterprise
---




___
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 build improvements...

2016-02-07 Thread Steve Bennett

> On 8 Feb 2016, at 11:28 am, Andreas Kupries  wrote:
> 
> 
>> On Sun, Feb 7, 2016 at 3:12 PM, David Macek  wrote:
>> 
>>> On 7. 2. 2016 2:53, Joe Mistachkin wrote:
 
 I'm unable to test with MingW64; however, I think Jan Nijtmans uses it.
>>> 
>>> Hmm. So hopefully he's watching the list.
>>> 
>>> One of my problems is with the linenoise library. It requires 
>>> and possibly other POSIX-only stuff. Is there a way to override it to use
>>> editline/readline?
> 
> Note that Steve Bennet of JimTcl has a fork of linenoise which has
> code making it usable for Windows.

Indeed: https://github.com/msteveb/linenoise

This is the version used in Jim Tcl.

> 
> -- 
> So long,
>   Andreas Kupries 
>   
>   Developer @ Hewlett Packard Enterprise
> ---
> 
> 
> 
> 
> ___
> fossil-users mailing list
> fossil-users@lists.fossil-scm.org
> http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

--
Embedded Systems Specialists - http://workware.net.au/
WorkWare Systems Pty Ltd
W: www.workware.net.au  P: +61 434 921 300
E: ste...@workware.net.au







___
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 build improvements...

2016-02-06 Thread David Macek
On 17. 1. 2016 0:31, Joe Mistachkin wrote:
> I've made some enhancements to the standard Fossil build process using
> configure and make.  I would appreciate feedback and testing for the
> tip of the "mingwConfigure" branch, on whatever platform(s) you have
> handy.  A quick summary of the enhancements is:
> 
>   1. Add the "tree" option to --with-openssl to build using OpenSSL
>  source code contained in the "compat/openssl" sub-directory of
>  the tree (i.e. it must be manually downloaded, extracted, and
>  built there first).
> 
>   2. Make it possible to use vanilla configure and make on MinGW.
> 
> Again, any feedback and/or testing for these changes would be greatly
> appreciated.

Hi. I'd like to discuss some issues I ran into building fossil with mingw-w64, 
but I don't have anything coherent for you at the moment. Shall we discuss on 
IRC, or is it better if I write things down here on the list?

-- 
David Macek



smime.p7s
Description: S/MIME Cryptographic Signature
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users