RE: Windows build

2022-03-18 Thread Bert Huijben



-Original Message-
From: Nathan Hartman  
Sent: Tuesday, March 15, 2022 4:21 PM
To: Daniel Sahlberg 
Cc: Subversion Development 
Subject: Re: Windows build

On Tue, Mar 15, 2022 at 11:10 AM Daniel Sahlberg  
wrote:
>
> Hi,
>
> I'm once again restarting my efforts on a solid Windows build environment. 
> I've been checking the scripts in build/win32 and believe these might be a 
> reasonable starting point.

I still have a set of files to build Subversion and most dependencies as part 
of the SharpSvn build, which used to drive a few Windows buildbots as well. (I 
think they are still offline after the recent buildbot master upgrade).

The scripts also allow building Subversion and its dependencies on GitHub 
actions. (The SlikSvn Subversion binaries are built on that environment).

https://github.com/AmpScm/SharpSvn/ is the new canonical url, after moving away 
from open.collab.net.
(dependency scripts are all in the imports subdirectory)


I just upgraded the scripts there to build on Visual Studio 2022 (see r1899028 
for the changes on the Subversion side) as that is now the default build 
environment on GitHub's 'windows-latest' actions.


Bert



Re: Windows build

2022-03-15 Thread Adam Humpherys
I have shared this before, but hopefully it’s helpful. I found documentation 
incredibly confusing. This is what I use myself. It does need some minor 
updating for VS 2022, newer JDK, etc but it’s functional.

https://gist.github.com/ahwm/47dca1ae4290094a539d5dcc30338fb9

Based on the work here: https://github.com/Jan-E/svn-windows


From: Nathan Hartman 
Sent: Tuesday, March 15, 2022 09:21
To: Daniel Sahlberg 
Cc: Subversion Development 
Subject: Re: Windows build

On Tue, Mar 15, 2022 at 11:10 AM Daniel Sahlberg
 wrote:
>
> Hi,
>
> I'm once again restarting my efforts on a solid Windows build environment. 
> I've been checking the scripts in build/win32 and believe these might be a 
> reasonable starting point.
>
> Does anyone have recent (or not so recent...) notes on what you did to set it 
> up?
>
> If you feel the notes are not in shape to share publically, send them offlist 
> and I can edit them.
>
> Thanks,
> Daniel Sahlberg

You'll probably want to start with this thread:

"Building SVN (dependencies) on Windows" started April 20, 2020:
https://lists.apache.org/thread/qf1tfohrwjrjk4qm1j1l8z11hfthlcq3

That's a collection of Johan's notes on the subject.

The thread seems to be discontiguous in the archives. There's more
discussion that follows, though it is less relevant:
https://lists.apache.org/thread/qdvl8hdb19fnq75qfx5wmxm5b1ylkdzd

The first message above is the most important one.

Around that time, I wanted to setup a Windows build and test
environment also. Other things got in the way but I'd still like to do
it and have more than one person around who can build and test on
Windows!!

There are also some notes in INSTALL:
https://svn.apache.org/viewvc/subversion/trunk/INSTALL?view=markup

Though some of the information there is dated...

Cheers,
Nathan


Re: Windows build

2022-03-15 Thread Daniel Shahaf
Daniel Sahlberg wrote on Tue, Mar 15, 2022 at 16:09:51 +0100:
> Hi,
> 
> I'm once again restarting my efforts on a solid Windows build environment.
> I've been checking the scripts in build/win32 and believe these might be a
> reasonable starting point.
> 
> Does anyone have recent (or not so recent...) notes on what you did to set
> it up?

tools/dev/windows-build/

tools/dev/build-svn-deps-win.pl

https://svn.apache.org/repos/infra/infrastructure/buildbot/aegis/buildmaster/master1/projects/subversion.conf?p=1078449
(peg revision because the directory was deleted in the peg revision; I don't 
know the new home, if any)

Cheers,

Daniel


> If you feel the notes are not in shape to share publically, send them
> offlist and I can edit them.
> 
> Thanks,
> Daniel Sahlberg


Re: Windows build

2022-03-15 Thread Nathan Hartman
On Tue, Mar 15, 2022 at 11:10 AM Daniel Sahlberg
 wrote:
>
> Hi,
>
> I'm once again restarting my efforts on a solid Windows build environment. 
> I've been checking the scripts in build/win32 and believe these might be a 
> reasonable starting point.
>
> Does anyone have recent (or not so recent...) notes on what you did to set it 
> up?
>
> If you feel the notes are not in shape to share publically, send them offlist 
> and I can edit them.
>
> Thanks,
> Daniel Sahlberg

You'll probably want to start with this thread:

"Building SVN (dependencies) on Windows" started April 20, 2020:
https://lists.apache.org/thread/qf1tfohrwjrjk4qm1j1l8z11hfthlcq3

That's a collection of Johan's notes on the subject.

The thread seems to be discontiguous in the archives. There's more
discussion that follows, though it is less relevant:
https://lists.apache.org/thread/qdvl8hdb19fnq75qfx5wmxm5b1ylkdzd

The first message above is the most important one.

Around that time, I wanted to setup a Windows build and test
environment also. Other things got in the way but I'd still like to do
it and have more than one person around who can build and test on
Windows!!

There are also some notes in INSTALL:
https://svn.apache.org/viewvc/subversion/trunk/INSTALL?view=markup

Though some of the information there is dated...

Cheers,
Nathan


Windows build

2022-03-15 Thread Daniel Sahlberg
Hi,

I'm once again restarting my efforts on a solid Windows build environment.
I've been checking the scripts in build/win32 and believe these might be a
reasonable starting point.

Does anyone have recent (or not so recent...) notes on what you did to set
it up?

If you feel the notes are not in shape to share publically, send them
offlist and I can edit them.

Thanks,
Daniel Sahlberg


Re: Windows Build

2021-03-08 Thread Alan Fry
On Sat, Feb 27, 2021 at 8:31 AM Daniel Shahaf 
wrote:

> Alan Fry wrote on Fri, Feb 26, 2021 at 11:19:27 -0500:
> > "Visual Studio".  I'm brand new to open source development.  And since
> I've
> > lived in a MS world at work, I made the automatic "Windows = Visual
> > Studio".  I'd like to ask up-front for any advice.  Is the expectation
> for
> > build(s) to be vendor neutral and/or would it be helpful if the build was
> > specific for VS and maybe GNU (assuming there is a windows version)?
>
> Apache projects are required to be vendor-neutral since The ASF is
> a 501(c)3 charity.
>
> That doesn't rule out having a VS-specific build process.  Rather, it
> means that if someone shows up with a patch adding a ${competitor_of_VS}
> build process, that patch should be considered on its merits; it can't
> just be waved off with "we're a VS project".
>

Ok, good to know.

Given this information, I'm likely going to do a VS specific build process
first (since it's what I'm most familiar with).


Re: Windows Build

2021-02-27 Thread Daniel Shahaf
Alan Fry wrote on Fri, Feb 26, 2021 at 11:19:27 -0500:
> "Visual Studio".  I'm brand new to open source development.  And since I've
> lived in a MS world at work, I made the automatic "Windows = Visual
> Studio".  I'd like to ask up-front for any advice.  Is the expectation for
> build(s) to be vendor neutral and/or would it be helpful if the build was
> specific for VS and maybe GNU (assuming there is a windows version)?

Apache projects are required to be vendor-neutral since The ASF is
a 501(c)3 charity.

That doesn't rule out having a VS-specific build process.  Rather, it
means that if someone shows up with a patch adding a ${competitor_of_VS}
build process, that patch should be considered on its merits; it can't
just be waved off with "we're a VS project".

Cheers,

Daniel

> "nmake vs. cmake".  I read some threads that talked about moving to cmake?
> Is this something that would be desirable?  Anyone have any comments about
> this?
> On Wed, Feb 24, 2021 at 10:27 AM Adam Humpherys 
> wrote:
> 
> > I'm pretty sure I've shared this previously, but wanted to bring it up
> > again - https://gist.github.com/ahwm/47dca1ae4290094a539d5dcc30338fb9
> >
> > This mimics my build environment. I've not tried TortoiseSVN's builds so
> > I'm not sure how they compare. The binaries shipped with TSVN don't have
> > the modules and that's primarily what I've looked for so I haven't explored
> > there too much.
> >
> > I also haven't had the chance to update it to use SVN 1.14.1 either.
> >
> > --
> > Adam Humpherys
> > TheScripters
> > "Bringing the World to You"
> > Contact: a...@thescripters.com
> >
> >
> >
> > On Wed, Feb 24, 2021 at 7:14 AM Alan Fry  wrote:
> >
> >> This is great information, thank you Daniel.
> >>
> >> I'm traveling for work right now and will be back on the 8th of March.
> >> Then I can dig into the details of a windows build.  I'll mention again
> >> that I'm a windows developer, so this should be significantly faster, and
> >> require less help :).
> >>
> >> You had mentioned before that TSVN uses NAnt?  Is there some feature that
> >> you like?  I've never used it and don't know much about it.
> >>
> >> Building ground up from source is a technique I've used over the years
> >> and has it's benefits.  These days external components are generally nuget
> >> packages and our build process(s) pull each build (this is for an internal
> >> product used at the company I work for).  I don't know in the open-source
> >> world which option is best, build everything from source, or take
> >> "official" libraries for dependencies.  Any insight would be great on this,
> >> I can do either.
> >>
> >>
> >>
> >>
> >>
> >> On Wed, Feb 17, 2021 at 6:25 PM Daniel Sahlberg <
> >> daniel.l.sahlb...@gmail.com> wrote:
> >>
> >>> Den ons 17 feb. 2021 kl 17:31 skrev Nathan Hartman <
> >>> hartman.nat...@gmail.com>:
> >>> >
> >>> > On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
> >>> > > For all that helped w/ the Linux build, thank you, I have a set of
> >>> > > repeatable build instructions for Subversion on linux.  If there is
> >>> > > value, I'd be happy to post those.  I verified those instructions
> >>> > > last night, building from ground up a VM that builds and
> >>> > > successfully runs 'make check'.
> >>> >
> >>> > Yes, please do! It will likely help others. Also perhaps others will
> >>> > chime in and offer suggestions on easier ways to do some things.
> >>> >
> >>> > > I'd like to do the same with Windows.  Several have sent me links
> >>> > > for instructions, however I'd like to ask if there is a recent,
> >>> > > relatively agreed upon set of instructions, before I start.
> >>> > > Otherwise, I'll just pick one and give it a try.
> >>> >
> >>> > The thread "Building SVN (dependencies) on Windows" to our dev@ list
> >>> > on 20 Apr 2020 has a collection of useful information. That  can be
> >>> > found at any of these links:
> >>> >
> >>> > https://svn.haxx.se/dev/archive-2020-04/0090.shtml
> >>> >
> >>> >
> >>> https://mail-archives.apache.org/mod_mbox/subversion-dev/202004.mbox/%3cCAB84uBW0RTUkNj30zXFLOtT3=xbhxdarvlnuotnmbg-xqq6...@

Re: Windows Build

2021-02-26 Thread Alan Fry
On Wed, Feb 24, 2021 at 5:41 PM Daniel Sahlberg 
wrote:

> Den ons 24 feb. 2021 kl 15:14 skrev Alan Fry :
>
>> This is great information, thank you Daniel.
>>
>> I'm traveling for work right now and will be back on the 8th of March.
>> Then I can dig into the details of a windows build.  I'll mention again
>> that I'm a windows developer, so this should be significantly faster, and
>> require less help :).
>>
>> You had mentioned before that TSVN uses NAnt?  Is there some feature that
>> you like?  I've never used it and don't know much about it.
>>
>
> It uses some quite clever XML based "makefiles", but the project seems
> fairly dead. I havn't touched the build scripts, only built it on a few
> different computers and it is a very straight forward process, building all
> dependencies from source. (Including building Subversion both as DLL files
> and as command line executables).
>
> Building ground up from source is a technique I've used over the years and
>> has it's benefits.  These days external components are generally nuget
>> packages and our build process(s) pull each build (this is for an internal
>> product used at the company I work for).  I don't know in the open-source
>> world which option is best, build everything from source, or take
>> "official" libraries for dependencies.  Any insight would be great on this,
>> I can do either.
>>
>
> If we would have to build all dependencies from source, then it might be
> beneficial to look at what they are using and see if something could be
> re-used. I'm guessing that TSVN is maintaining their build scripts by hand
> which would be good to avoid.
>

I'll take a look at it.


>
> Someone mentioned CMake (and I think they also talked about using it on
> Linux) and any work done on Windows might even be groundwork for a new
> crossplatform build system :-)
>
>
I know that Cmake is now supported in Visual studio.  But that's a vendor
app.

Would a cmake cross platform build be a good target?


Re: Windows Build

2021-02-26 Thread Alan Fry
Thanks Adam,

I am actually going to start with this particular script (yes, you had
shared it before).

This might be a good time to ask some Windows Specific build questions:

"Visual Studio".  I'm brand new to open source development.  And since I've
lived in a MS world at work, I made the automatic "Windows = Visual
Studio".  I'd like to ask up-front for any advice.  Is the expectation for
build(s) to be vendor neutral and/or would it be helpful if the build was
specific for VS and maybe GNU (assuming there is a windows version)?

"nmake vs. cmake".  I read some threads that talked about moving to cmake?
Is this something that would be desirable?  Anyone have any comments about
this?

On Wed, Feb 24, 2021 at 10:27 AM Adam Humpherys 
wrote:

> I'm pretty sure I've shared this previously, but wanted to bring it up
> again - https://gist.github.com/ahwm/47dca1ae4290094a539d5dcc30338fb9
>
> This mimics my build environment. I've not tried TortoiseSVN's builds so
> I'm not sure how they compare. The binaries shipped with TSVN don't have
> the modules and that's primarily what I've looked for so I haven't explored
> there too much.
>
> I also haven't had the chance to update it to use SVN 1.14.1 either.
>
> --
> Adam Humpherys
> TheScripters
> "Bringing the World to You"
> Contact: a...@thescripters.com
>
>
>
> On Wed, Feb 24, 2021 at 7:14 AM Alan Fry  wrote:
>
>> This is great information, thank you Daniel.
>>
>> I'm traveling for work right now and will be back on the 8th of March.
>> Then I can dig into the details of a windows build.  I'll mention again
>> that I'm a windows developer, so this should be significantly faster, and
>> require less help :).
>>
>> You had mentioned before that TSVN uses NAnt?  Is there some feature that
>> you like?  I've never used it and don't know much about it.
>>
>> Building ground up from source is a technique I've used over the years
>> and has it's benefits.  These days external components are generally nuget
>> packages and our build process(s) pull each build (this is for an internal
>> product used at the company I work for).  I don't know in the open-source
>> world which option is best, build everything from source, or take
>> "official" libraries for dependencies.  Any insight would be great on this,
>> I can do either.
>>
>>
>>
>>
>>
>> On Wed, Feb 17, 2021 at 6:25 PM Daniel Sahlberg <
>> daniel.l.sahlb...@gmail.com> wrote:
>>
>>> Den ons 17 feb. 2021 kl 17:31 skrev Nathan Hartman <
>>> hartman.nat...@gmail.com>:
>>> >
>>> > On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
>>> > > For all that helped w/ the Linux build, thank you, I have a set of
>>> > > repeatable build instructions for Subversion on linux.  If there is
>>> > > value, I'd be happy to post those.  I verified those instructions
>>> > > last night, building from ground up a VM that builds and
>>> > > successfully runs 'make check'.
>>> >
>>> > Yes, please do! It will likely help others. Also perhaps others will
>>> > chime in and offer suggestions on easier ways to do some things.
>>> >
>>> > > I'd like to do the same with Windows.  Several have sent me links
>>> > > for instructions, however I'd like to ask if there is a recent,
>>> > > relatively agreed upon set of instructions, before I start.
>>> > > Otherwise, I'll just pick one and give it a try.
>>> >
>>> > The thread "Building SVN (dependencies) on Windows" to our dev@ list
>>> > on 20 Apr 2020 has a collection of useful information. That  can be
>>> > found at any of these links:
>>> >
>>> > https://svn.haxx.se/dev/archive-2020-04/0090.shtml
>>> >
>>> >
>>> https://mail-archives.apache.org/mod_mbox/subversion-dev/202004.mbox/%3cCAB84uBW0RTUkNj30zXFLOtT3=xbhxdarvlnuotnmbg-xqq6...@mail.gmail.com%3e
>>> >
>>> >
>>> https://lists.apache.org/thread.html/r59a30aabaab7bf69effa909b331eaa177418325280ea25859e8fa294%40%3Cdev.subversion.apache.org%3E
>>>
>>> In addition to this excellent thread it might be interesting to take a
>>> look at TortoiseSVN's build process [1].
>>>
>>> As far as I understand it, all dependencies are build from source.
>>> Dependencies sit in [2], some (such as OpenSSL) are simply copied into
>>> the repository (I'm guessing from release tarballs, sometimes with
>>> local patches on top) and some (such as Subversion and APR) are
>>> svn:externals.
>>>
>>> TSVN uses NAnt [3] with a homegrown build script.
>>>
>>> I'm out of time to dig around at building on Win myself but I'm happy
>>> to test out any instructions.
>>>
>>> Kind regards,
>>> Daniel Sahlberg
>>>
>>> [1] https://svn.osdn.net/svnroot/tortoisesvn/trunk/build.txt
>>> [2] https://svn.osdn.net/svnroot/tortoisesvn/trunk/ext
>>> [3] http://nant.sourceforge.net/
>>>
>>


Re: Windows Build

2021-02-24 Thread Daniel Sahlberg
Den ons 24 feb. 2021 kl 15:14 skrev Alan Fry :

> This is great information, thank you Daniel.
>
> I'm traveling for work right now and will be back on the 8th of March.
> Then I can dig into the details of a windows build.  I'll mention again
> that I'm a windows developer, so this should be significantly faster, and
> require less help :).
>
> You had mentioned before that TSVN uses NAnt?  Is there some feature that
> you like?  I've never used it and don't know much about it.
>

It uses some quite clever XML based "makefiles", but the project seems
fairly dead. I havn't touched the build scripts, only built it on a few
different computers and it is a very straight forward process, building all
dependencies from source. (Including building Subversion both as DLL files
and as command line executables).

Building ground up from source is a technique I've used over the years and
> has it's benefits.  These days external components are generally nuget
> packages and our build process(s) pull each build (this is for an internal
> product used at the company I work for).  I don't know in the open-source
> world which option is best, build everything from source, or take
> "official" libraries for dependencies.  Any insight would be great on this,
> I can do either.
>

If we would have to build all dependencies from source, then it might be
beneficial to look at what they are using and see if something could be
re-used. I'm guessing that TSVN is maintaining their build scripts by hand
which would be good to avoid.

Someone mentioned CMake (and I think they also talked about using it on
Linux) and any work done on Windows might even be groundwork for a new
crossplatform build system :-)

Kind regards,
Daniel Sahlberg


Re: Windows Build

2021-02-24 Thread Adam Humpherys
I'm pretty sure I've shared this previously, but wanted to bring it up
again - https://gist.github.com/ahwm/47dca1ae4290094a539d5dcc30338fb9

This mimics my build environment. I've not tried TortoiseSVN's builds so
I'm not sure how they compare. The binaries shipped with TSVN don't have
the modules and that's primarily what I've looked for so I haven't explored
there too much.

I also haven't had the chance to update it to use SVN 1.14.1 either.

--
Adam Humpherys
TheScripters
"Bringing the World to You"
Contact: a...@thescripters.com



On Wed, Feb 24, 2021 at 7:14 AM Alan Fry  wrote:

> This is great information, thank you Daniel.
>
> I'm traveling for work right now and will be back on the 8th of March.
> Then I can dig into the details of a windows build.  I'll mention again
> that I'm a windows developer, so this should be significantly faster, and
> require less help :).
>
> You had mentioned before that TSVN uses NAnt?  Is there some feature that
> you like?  I've never used it and don't know much about it.
>
> Building ground up from source is a technique I've used over the years and
> has it's benefits.  These days external components are generally nuget
> packages and our build process(s) pull each build (this is for an internal
> product used at the company I work for).  I don't know in the open-source
> world which option is best, build everything from source, or take
> "official" libraries for dependencies.  Any insight would be great on this,
> I can do either.
>
>
>
>
>
> On Wed, Feb 17, 2021 at 6:25 PM Daniel Sahlberg <
> daniel.l.sahlb...@gmail.com> wrote:
>
>> Den ons 17 feb. 2021 kl 17:31 skrev Nathan Hartman <
>> hartman.nat...@gmail.com>:
>> >
>> > On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
>> > > For all that helped w/ the Linux build, thank you, I have a set of
>> > > repeatable build instructions for Subversion on linux.  If there is
>> > > value, I'd be happy to post those.  I verified those instructions
>> > > last night, building from ground up a VM that builds and
>> > > successfully runs 'make check'.
>> >
>> > Yes, please do! It will likely help others. Also perhaps others will
>> > chime in and offer suggestions on easier ways to do some things.
>> >
>> > > I'd like to do the same with Windows.  Several have sent me links
>> > > for instructions, however I'd like to ask if there is a recent,
>> > > relatively agreed upon set of instructions, before I start.
>> > > Otherwise, I'll just pick one and give it a try.
>> >
>> > The thread "Building SVN (dependencies) on Windows" to our dev@ list
>> > on 20 Apr 2020 has a collection of useful information. That  can be
>> > found at any of these links:
>> >
>> > https://svn.haxx.se/dev/archive-2020-04/0090.shtml
>> >
>> >
>> https://mail-archives.apache.org/mod_mbox/subversion-dev/202004.mbox/%3cCAB84uBW0RTUkNj30zXFLOtT3=xbhxdarvlnuotnmbg-xqq6...@mail.gmail.com%3e
>> >
>> >
>> https://lists.apache.org/thread.html/r59a30aabaab7bf69effa909b331eaa177418325280ea25859e8fa294%40%3Cdev.subversion.apache.org%3E
>>
>> In addition to this excellent thread it might be interesting to take a
>> look at TortoiseSVN's build process [1].
>>
>> As far as I understand it, all dependencies are build from source.
>> Dependencies sit in [2], some (such as OpenSSL) are simply copied into
>> the repository (I'm guessing from release tarballs, sometimes with
>> local patches on top) and some (such as Subversion and APR) are
>> svn:externals.
>>
>> TSVN uses NAnt [3] with a homegrown build script.
>>
>> I'm out of time to dig around at building on Win myself but I'm happy
>> to test out any instructions.
>>
>> Kind regards,
>> Daniel Sahlberg
>>
>> [1] https://svn.osdn.net/svnroot/tortoisesvn/trunk/build.txt
>> [2] https://svn.osdn.net/svnroot/tortoisesvn/trunk/ext
>> [3] http://nant.sourceforge.net/
>>
>


Re: Windows Build

2021-02-24 Thread Alan Fry
This is great information, thank you Daniel.

I'm traveling for work right now and will be back on the 8th of March.
Then I can dig into the details of a windows build.  I'll mention again
that I'm a windows developer, so this should be significantly faster, and
require less help :).

You had mentioned before that TSVN uses NAnt?  Is there some feature that
you like?  I've never used it and don't know much about it.

Building ground up from source is a technique I've used over the years and
has it's benefits.  These days external components are generally nuget
packages and our build process(s) pull each build (this is for an internal
product used at the company I work for).  I don't know in the open-source
world which option is best, build everything from source, or take
"official" libraries for dependencies.  Any insight would be great on this,
I can do either.





On Wed, Feb 17, 2021 at 6:25 PM Daniel Sahlberg 
wrote:

> Den ons 17 feb. 2021 kl 17:31 skrev Nathan Hartman <
> hartman.nat...@gmail.com>:
> >
> > On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
> > > For all that helped w/ the Linux build, thank you, I have a set of
> > > repeatable build instructions for Subversion on linux.  If there is
> > > value, I'd be happy to post those.  I verified those instructions
> > > last night, building from ground up a VM that builds and
> > > successfully runs 'make check'.
> >
> > Yes, please do! It will likely help others. Also perhaps others will
> > chime in and offer suggestions on easier ways to do some things.
> >
> > > I'd like to do the same with Windows.  Several have sent me links
> > > for instructions, however I'd like to ask if there is a recent,
> > > relatively agreed upon set of instructions, before I start.
> > > Otherwise, I'll just pick one and give it a try.
> >
> > The thread "Building SVN (dependencies) on Windows" to our dev@ list
> > on 20 Apr 2020 has a collection of useful information. That  can be
> > found at any of these links:
> >
> > https://svn.haxx.se/dev/archive-2020-04/0090.shtml
> >
> >
> https://mail-archives.apache.org/mod_mbox/subversion-dev/202004.mbox/%3cCAB84uBW0RTUkNj30zXFLOtT3=xbhxdarvlnuotnmbg-xqq6...@mail.gmail.com%3e
> >
> >
> https://lists.apache.org/thread.html/r59a30aabaab7bf69effa909b331eaa177418325280ea25859e8fa294%40%3Cdev.subversion.apache.org%3E
>
> In addition to this excellent thread it might be interesting to take a
> look at TortoiseSVN's build process [1].
>
> As far as I understand it, all dependencies are build from source.
> Dependencies sit in [2], some (such as OpenSSL) are simply copied into
> the repository (I'm guessing from release tarballs, sometimes with
> local patches on top) and some (such as Subversion and APR) are
> svn:externals.
>
> TSVN uses NAnt [3] with a homegrown build script.
>
> I'm out of time to dig around at building on Win myself but I'm happy
> to test out any instructions.
>
> Kind regards,
> Daniel Sahlberg
>
> [1] https://svn.osdn.net/svnroot/tortoisesvn/trunk/build.txt
> [2] https://svn.osdn.net/svnroot/tortoisesvn/trunk/ext
> [3] http://nant.sourceforge.net/
>


Re: Windows Build

2021-02-24 Thread Alan Fry
Agreed, as soon as I saw the embedded year, I thought "why" to myself.

The goal is to get something in Windows to work next, then circle back and
begin to look at how to document the creation of a build environment.  At
this point, as long as we get a repeatable documented process we should be
good.

On Fri, Feb 19, 2021 at 11:27 AM Daniel Shahaf 
wrote:

> Alan Fry wrote on Fri, 19 Feb 2021 16:13 +00:00:
> > Setup SQLLite:
> >
> > # cd ~/src
> > # wget https://www.sqlite.org/2021/sqlite-amalgamation-3340100.zip
> >
> > unzip the zip file.
> > Rename the unzipped directory to "sqlite-amalgamation"
> > and move it to subversion-1.14.1
>
> It should have been possible to replace these steps by
> «SQLITE_VERSION=3.34.1 ./get-deps.sh sqlite», but it turns out
> get-deps.sh doesn't make the "year" part of the URL configurable.
>
> Cheers,
>
> Daniel
> (who wonders why the SQLite folks put the release year in the URL)
>
>


Re: Windows Build

2021-02-19 Thread Daniel Shahaf
Alan Fry wrote on Fri, 19 Feb 2021 16:13 +00:00:
> Setup SQLLite:
> 
> # cd ~/src
> # wget https://www.sqlite.org/2021/sqlite-amalgamation-3340100.zip
> 
> unzip the zip file.
> Rename the unzipped directory to "sqlite-amalgamation"
> and move it to subversion-1.14.1

It should have been possible to replace these steps by
«SQLITE_VERSION=3.34.1 ./get-deps.sh sqlite», but it turns out
get-deps.sh doesn't make the "year" part of the URL configurable.

Cheers,

Daniel
(who wonders why the SQLite folks put the release year in the URL)



Re: Windows Build

2021-02-19 Thread Alan Fry
Try #2, this time with entire set of instructions:
-

To generate a virtual machine that builds SVN
Download iso: ubuntu-20.04.2-desktop-amd64.iso



Create a new virtual machine in Virtualbox
Name:  SVN Build
OS: Linux / Ubuntu 64bit
4096MB of ram
virtual hard disk
VDI (Virtualbox Disk image)
Dymanic allocated
Max 200g

Select your VM and click settings:

System tab:
Deselect floppy
Set to 4 processors

Display Tab:
Set video memory to 128k

Start
Select ubuntu-20.04.2-desktop-amd64.iso at boot



At install complete, let the system reboot

When it comes back up, install guest additions :

$ sudo add-apt-repository multiverse
$ sudo apt install virtualbox-guest-dkms virtualbox-guest-x11

restart machine

Your VM machine is now setup.  Log in as the user you have setup.

Now to build Subversion

Pull source code:
# cd ~; mkdir src; cd src
# wget http://ftp.cixug.es/apache/subversion/subversion-1.14.1.tar.gz
# tar xvzf subversion-*
# cd subversion-1.14.1

Install some prereqs:

sudo apt-get install build-essential git libtool libtool-bin unzip
sudo apt-get install libapr1 libapr1-dev
sudo apt-get install libaprutil1-dev
sudo apt install zlib1g
sudo apt install zlib1g-dev

Setup SQLLite:

# cd ~/src
# wget https://www.sqlite.org/2021/sqlite-amalgamation-3340100.zip

unzip the zip file.
Rename the unzipped directory to "sqlite-amalgamation"
and move it to subversion-1.14.1

---
The tests didn't work, 3 failed, but this "fixed" them:
This is a workaround I had to do for python, however it's probably not
correct:

Problem scenario:  /usr/bin/env: ‘python’: No such file or directory
# whereis python3
Then we create a symlink to it:
# sudo ln -s /usr/bin/python3 /usr/bin/python
---


# ./configure --with-lz4=internal --with-utf8proc=internal
# make
# make check



# sudo make install
# svn

(if you get: svn: error while loading shared libraries:
libsvn_ra_svn-1.so.0: cannot open shared object file: No such file or
directory)
fixed forcing ldconfig:

# sudo ldconfig

# svn --version  --quiet
1.14.1

(You should have a completed, functioning SVN server.. however missing some
optional capabilities at this point)


On Fri, Feb 19, 2021 at 2:20 AM Thomas Singer 
wrote:

> Hi Alan,
>
> This reads for me just like setting up Ubuntu 20.04 in Virtualbox, but
> is not related to Subversion. Did you miss some Subversion-relevant
> steps at the end?
>
> BR
> Tom
>
>
> On 2021-02-18 19:47, Alan Fry wrote:
> > On Wed, Feb 17, 2021 at 11:31 AM Nathan Hartman <
> hartman.nat...@gmail.com>
> > wrote:
> >
> >> On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
> >>> For all that helped w/ the Linux build, thank you, I have a set of
> >>> repeatable build instructions for Subversion on linux.  If there is
> >>> value, I'd be happy to post those.  I verified those instructions
> >>> last night, building from ground up a VM that builds and
> >>> successfully runs 'make check'.
> >>
> >> Yes, please do! It will likely help others. Also perhaps others will
> >> chime in and offer suggestions on easier ways to do some things.
> >>
> >
> > Sure.  For anyone who would like them, they are below.  Note that I have
> > not formatted them, so maybe soon I'll write up a nice html/markdown for
> > them.
> >
> >  start
> >
> > To generate a virtual machine that builds SVN
> > Download iso: ubuntu-20.04.2-desktop-amd64.iso
> >
> > 
> >
> > Create a new virtual machine in Virtualbox
> > Name:  SVN Build
> > OS: Linux / Ubuntu 64bit
> > 4096MB of ram
> > virtual hard disk
> > VDI (Virtualbox Disk image)
> > Dymanic allocated
> > Max 200g
> >
> > Select your VM and click settings:
> >
> > System tab:
> > Deselect floppy
> > Set to 4 processors
> >
> > Display Tab:
> > Set video memory to 128k
> >
> > Start
> > Select ubuntu-20.04.2-desktop-amd64.iso at boot
> >
> > 
> >
> > At install complete, let the system reboot
> >
> > When it comes back up, install guest additions :
> >
> > $ sudo add-apt-repository multiverse
> > $ sudo apt install virtualbox-guest-dkms virtualbox-guest-x11
> >
> > restart machine
> >
> > Your VM machine is now setup.  Log in as the user you have setup.
> >
>


Re: Windows Build

2021-02-19 Thread Jan Ehrhardt
Daniel Sahlberg in gmane.comp.version-control.subversion.devel (Thu, 18
Feb 2021 00:25:06 +0100):
>In addition to this excellent thread it might be interesting to take a
>look at TortoiseSVN's build process [1].
>
>As far as I understand it, all dependencies are build from source.
>Dependencies sit in [2], some (such as OpenSSL) are simply copied into
>the repository (I'm guessing from release tarballs, sometimes with
>local patches on top) and some (such as Subversion and APR) are
>svn:externals.
>
>TSVN uses NAnt [3] with a homegrown build script.
>
>[1] https://svn.osdn.net/svnroot/tortoisesvn/trunk/build.txt
>[2] https://svn.osdn.net/svnroot/tortoisesvn/trunk/ext
>[3] http://nant.sourceforge.net/

I am building Subversion against some existing dependencies like OpenSSL,
Apache on AppVeyor. Build script here:
https://github.com/Jan-E/svn-windows
Sample build logs:
https://ci.appveyor.com/project/Jan-E/svn-windows/builds/37712846/job/al50so06ak3y6v2h?fullLog=true
The resulting binaries are in the artifacts of each job:
https://ci.appveyor.com/project/Jan-E/svn-windows/builds/37712846/job/al50so06ak3y6v2h/artifacts
-- 
Jan



Re: Windows Build

2021-02-18 Thread Thomas Singer

Hi Alan,

This reads for me just like setting up Ubuntu 20.04 in Virtualbox, but 
is not related to Subversion. Did you miss some Subversion-relevant 
steps at the end?


BR
Tom


On 2021-02-18 19:47, Alan Fry wrote:

On Wed, Feb 17, 2021 at 11:31 AM Nathan Hartman 
wrote:


On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:

For all that helped w/ the Linux build, thank you, I have a set of
repeatable build instructions for Subversion on linux.  If there is
value, I'd be happy to post those.  I verified those instructions
last night, building from ground up a VM that builds and
successfully runs 'make check'.


Yes, please do! It will likely help others. Also perhaps others will
chime in and offer suggestions on easier ways to do some things.



Sure.  For anyone who would like them, they are below.  Note that I have
not formatted them, so maybe soon I'll write up a nice html/markdown for
them.

 start

To generate a virtual machine that builds SVN
Download iso: ubuntu-20.04.2-desktop-amd64.iso



Create a new virtual machine in Virtualbox
Name:  SVN Build
OS: Linux / Ubuntu 64bit
4096MB of ram
virtual hard disk
VDI (Virtualbox Disk image)
Dymanic allocated
Max 200g

Select your VM and click settings:

System tab:
Deselect floppy
Set to 4 processors

Display Tab:
Set video memory to 128k

Start
Select ubuntu-20.04.2-desktop-amd64.iso at boot



At install complete, let the system reboot

When it comes back up, install guest additions :

$ sudo add-apt-repository multiverse
$ sudo apt install virtualbox-guest-dkms virtualbox-guest-x11

restart machine

Your VM machine is now setup.  Log in as the user you have setup.



Re: Windows Build

2021-02-18 Thread Alan Fry
On Wed, Feb 17, 2021 at 11:31 AM Nathan Hartman 
wrote:

> On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
> > For all that helped w/ the Linux build, thank you, I have a set of
> > repeatable build instructions for Subversion on linux.  If there is
> > value, I'd be happy to post those.  I verified those instructions
> > last night, building from ground up a VM that builds and
> > successfully runs 'make check'.
>
> Yes, please do! It will likely help others. Also perhaps others will
> chime in and offer suggestions on easier ways to do some things.
>

Sure.  For anyone who would like them, they are below.  Note that I have
not formatted them, so maybe soon I'll write up a nice html/markdown for
them.

 start

To generate a virtual machine that builds SVN
Download iso: ubuntu-20.04.2-desktop-amd64.iso



Create a new virtual machine in Virtualbox
Name:  SVN Build
OS: Linux / Ubuntu 64bit
4096MB of ram
virtual hard disk
VDI (Virtualbox Disk image)
Dymanic allocated
Max 200g

Select your VM and click settings:

System tab:
Deselect floppy
Set to 4 processors

Display Tab:
Set video memory to 128k

Start
Select ubuntu-20.04.2-desktop-amd64.iso at boot



At install complete, let the system reboot

When it comes back up, install guest additions :

$ sudo add-apt-repository multiverse
$ sudo apt install virtualbox-guest-dkms virtualbox-guest-x11

restart machine

Your VM machine is now setup.  Log in as the user you have setup.


Re: Windows Build

2021-02-17 Thread Daniel Sahlberg
Den ons 17 feb. 2021 kl 17:31 skrev Nathan Hartman :
>
> On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
> > For all that helped w/ the Linux build, thank you, I have a set of
> > repeatable build instructions for Subversion on linux.  If there is
> > value, I'd be happy to post those.  I verified those instructions
> > last night, building from ground up a VM that builds and
> > successfully runs 'make check'.
>
> Yes, please do! It will likely help others. Also perhaps others will
> chime in and offer suggestions on easier ways to do some things.
>
> > I'd like to do the same with Windows.  Several have sent me links
> > for instructions, however I'd like to ask if there is a recent,
> > relatively agreed upon set of instructions, before I start.
> > Otherwise, I'll just pick one and give it a try.
>
> The thread "Building SVN (dependencies) on Windows" to our dev@ list
> on 20 Apr 2020 has a collection of useful information. That  can be
> found at any of these links:
>
> https://svn.haxx.se/dev/archive-2020-04/0090.shtml
>
> https://mail-archives.apache.org/mod_mbox/subversion-dev/202004.mbox/%3cCAB84uBW0RTUkNj30zXFLOtT3=xbhxdarvlnuotnmbg-xqq6...@mail.gmail.com%3e
>
> https://lists.apache.org/thread.html/r59a30aabaab7bf69effa909b331eaa177418325280ea25859e8fa294%40%3Cdev.subversion.apache.org%3E

In addition to this excellent thread it might be interesting to take a
look at TortoiseSVN's build process [1].

As far as I understand it, all dependencies are build from source.
Dependencies sit in [2], some (such as OpenSSL) are simply copied into
the repository (I'm guessing from release tarballs, sometimes with
local patches on top) and some (such as Subversion and APR) are
svn:externals.

TSVN uses NAnt [3] with a homegrown build script.

I'm out of time to dig around at building on Win myself but I'm happy
to test out any instructions.

Kind regards,
Daniel Sahlberg

[1] https://svn.osdn.net/svnroot/tortoisesvn/trunk/build.txt
[2] https://svn.osdn.net/svnroot/tortoisesvn/trunk/ext
[3] http://nant.sourceforge.net/


Re: Windows Build

2021-02-17 Thread Nathan Hartman
On Wed, Feb 17, 2021 at 11:12 AM Alan Fry  wrote:
> For all that helped w/ the Linux build, thank you, I have a set of
> repeatable build instructions for Subversion on linux.  If there is
> value, I'd be happy to post those.  I verified those instructions
> last night, building from ground up a VM that builds and
> successfully runs 'make check'.

Yes, please do! It will likely help others. Also perhaps others will
chime in and offer suggestions on easier ways to do some things.

> I'd like to do the same with Windows.  Several have sent me links
> for instructions, however I'd like to ask if there is a recent,
> relatively agreed upon set of instructions, before I start.
> Otherwise, I'll just pick one and give it a try.

The thread "Building SVN (dependencies) on Windows" to our dev@ list
on 20 Apr 2020 has a collection of useful information. That  can be
found at any of these links:

https://svn.haxx.se/dev/archive-2020-04/0090.shtml

https://mail-archives.apache.org/mod_mbox/subversion-dev/202004.mbox/%3cCAB84uBW0RTUkNj30zXFLOtT3=xbhxdarvlnuotnmbg-xqq6...@mail.gmail.com%3e

https://lists.apache.org/thread.html/r59a30aabaab7bf69effa909b331eaa177418325280ea25859e8fa294%40%3Cdev.subversion.apache.org%3E

Feel free to ask as many questions as you need to.

Nathan

P.S., At any time, if you'd like to help improve the documentation
that we have on the website or in files that ship with Subversion,
feel free to send patches!


Windows Build

2021-02-17 Thread Alan Fry
For all that helped w/ the Linux build, thank you, I have a set of
repeatable build instructions for Subversion on linux.  If there is value,
I'd be happy to post those.  I verified those instructions last night,
building from ground up a VM that builds and successfully runs 'make
check'.

I'd like to do the same with Windows.  Several have sent me links for
instructions, however I'd like to ask if there is a recent, relatively
agreed upon set of instructions, before I start.  Otherwise, I'll just pick
one and give it a try.


Re: Windows build error introduced in revision 1850611

2019-01-16 Thread Bert Huijben
  Hi,

I happened to find this issue myself today, short before your message was
moderated through. I applied a fix to build.conf in r1851462, which should
fix the problem. (It is currently being tested by our buildbot).

Thanks,
   Bert

On Wed, Jan 16, 2019 at 5:04 PM Alexander Miloslavskiy <
alexandr.miloslavs...@gmail.com> wrote:

> Hello,
>
> I'm not subscribed, please CC me in answers.
>
> For reference, build error text:
> svndumpfilter.obj : error LNK2001: unresolved external symbol
> svn_relpath__make_internal
> [...\build\win32\vcnet-vcproj\svndumpfilter.vcxproj]
>
> In revision 1850611 function was moved to new header
> svn_dirent_uri_private.h which wasn't properly added to 'build.conf'.
> This causes the generated 'libsvn_subr.def' file to not export the
> function, which in turns causes 'unresolved external symbol'.
>
> Please fix this by adding 'private\svn_dirent_uri_private.h' near line
> 370 in 'build.conf'.
>
> Thanks!
>


Windows build error introduced in revision 1850611

2019-01-16 Thread Alexander Miloslavskiy

Hello,

I'm not subscribed, please CC me in answers.

For reference, build error text:
svndumpfilter.obj : error LNK2001: unresolved external symbol 
svn_relpath__make_internal 
[...\build\win32\vcnet-vcproj\svndumpfilter.vcxproj]


In revision 1850611 function was moved to new header 
svn_dirent_uri_private.h which wasn't properly added to 'build.conf'. 
This causes the generated 'libsvn_subr.def' file to not export the 
function, which in turns causes 'unresolved external symbol'.


Please fix this by adding 'private\svn_dirent_uri_private.h' near line 
370 in 'build.conf'.


Thanks!


svnauth ssl cert support -- please check windows build

2013-07-09 Thread Stefan Sperling
Here's a rough patch that makes svnauth show SSL certs as a list
of fields, rather than a long base64 string.

I'm adding a dependency on OpenSSL for certificate parsing.
I hope this is fine. If OpenSSL is not available svnauth falls
back to printing the base64 encoded form of the certificate.

Since I'm tweaking the build system, it would be nice if someone
could check whether this breaks the Windows build, or the build on
other *nix platforms. And if it does, help me with fixing my patch.

Thanks!

Index: Makefile.in
===
--- Makefile.in (revision 1501587)
+++ Makefile.in (working copy)
@@ -48,6 +48,7 @@ SVN_GPG_AGENT_LIBS = @SVN_GPG_AGENT_LIBS@
 SVN_GNOME_KEYRING_LIBS = @SVN_GNOME_KEYRING_LIBS@
 SVN_KWALLET_LIBS = @SVN_KWALLET_LIBS@
 SVN_MAGIC_LIBS = @SVN_MAGIC_LIBS@
+SVN_OPENSSL_LIBS = @SVN_OPENSSL_LIBS@
 SVN_SASL_LIBS = @SVN_SASL_LIBS@
 SVN_SERF_LIBS = @SVN_SERF_LIBS@
 SVN_SQLITE_LIBS = @SVN_SQLITE_LIBS@
@@ -123,7 +124,7 @@ LT_CXX_LIBADD = @LT_CXX_LIBADD@
 INCLUDES = -I$(top_srcdir)/subversion/include -I$(top_builddir)/subversion \
@SVN_APR_INCLUDES@ @SVN_APRUTIL_INCLUDES@ 
@SVN_APR_MEMCACHE_INCLUDES@ \
@SVN_DB_INCLUDES@ @SVN_GNOME_KEYRING_INCLUDES@ \
-   @SVN_KWALLET_INCLUDES@ @SVN_MAGIC_INCLUDES@ \
+   @SVN_KWALLET_INCLUDES@ @SVN_MAGIC_INCLUDES@ @SVN_OPENSSL_INCLUDES@ \
@SVN_SASL_INCLUDES@ @SVN_SERF_INCLUDES@ @SVN_SQLITE_INCLUDES@ \
@SVN_XML_INCLUDES@ @SVN_ZLIB_INCLUDES@
 
Index: aclocal.m4
===
--- aclocal.m4  (revision 1501587)
+++ aclocal.m4  (working copy)
@@ -39,6 +39,7 @@ sinclude(build/ac-macros/berkeley-db.m4)
 sinclude(build/ac-macros/compiler.m4)
 sinclude(build/ac-macros/ctypesgen.m4)
 sinclude(build/ac-macros/java.m4)
+sinclude(build/ac-macros/openssl.m4)
 sinclude(build/ac-macros/sasl.m4)
 sinclude(build/ac-macros/serf.m4)
 sinclude(build/ac-macros/sqlite.m4)
Index: build/ac-macros/openssl.m4
===
--- build/ac-macros/openssl.m4  (revision 0)
+++ build/ac-macros/openssl.m4  (working copy)
@@ -0,0 +1,106 @@
+dnl ===
+dnl   Licensed to the Apache Software Foundation (ASF) under one
+dnl   or more contributor license agreements.  See the NOTICE file
+dnl   distributed with this work for additional information
+dnl   regarding copyright ownership.  The ASF licenses this file
+dnl   to you under the Apache License, Version 2.0 (the
+dnl   License); you may not use this file except in compliance
+dnl   with the License.  You may obtain a copy of the License at
+dnl
+dnl http://www.apache.org/licenses/LICENSE-2.0
+dnl
+dnl   Unless required by applicable law or agreed to in writing,
+dnl   software distributed under the License is distributed on an
+dnl   AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+dnl   KIND, either express or implied.  See the License for the
+dnl   specific language governing permissions and limitations
+dnl   under the License.
+dnl ===
+dnl
+dnl  SVN_LIB_OPENSSL
+dnl
+dnl  Check configure options and assign variables related to
+dnl  the OpenSSL library.
+dnl
+dnl  If we find the library, set the shell variable
+dnl  `svn_lib_openssl' to `yes'.  Otherwise, set `svn_lib_openssl'
+dnl  to `no'.
+
+AC_DEFUN(SVN_LIB_OPENSSL,
+[
+  AC_ARG_WITH(openssl, [AS_HELP_STRING([--with-openssl=PATH],
+   [Compile with OpenSSL in PATH])],
+  [
+with_openssl=$withval
+required=yes
+  ],
+  [
+with_openssl=yes
+required=no
+  ])
+
+  AC_MSG_CHECKING([whether to look for OpenSSL])
+
+  if test ${with_openssl} = no; then
+AC_MSG_RESULT([no])
+svn_lib_openssl=no
+  else
+AC_MSG_RESULT([yes])
+saved_LDFLAGS=$LDFLAGS
+saved_CPPFLAGS=$CPPFLAGS
+
+if test $with_openssl = yes; then
+  AC_MSG_NOTICE([Looking in default locations])
+  AC_CHECK_HEADER(openssl/ssl.h,
+   [AC_CHECK_LIB(crypto, d2i_X509,
+ [AC_CHECK_LIB(ssl, SSL_library_init, 
+   svn_lib_openssl=yes,
+   svn_lib_openssl=no,
+   -lcrypto)],
+ svn_lib_openssl=no)],
+   svn_lib_openssl=no)
+  if test $svn_lib_openssl = no; then
+with_openssl=/usr/local
+  fi
+else
+  svn_lib_openssl=no
+fi
+
+if test $svn_lib_openssl = no; then
+  SVN_OPENSSL_INCLUDES=-I${with_openssl}/include
+  CPPFLAGS=$CPPFLAGS $SVN_OPENSSL_INCLUDES
+  LDFLAGS=$LDFLAGS `SVN_REMOVE_STANDARD_LIB_DIRS(-L${with_openssl}/lib)`
+
+  AC_CHECK_HEADER(openssl/ssl.h,
+   [AC_CHECK_LIB(crypto, d2i_X509,
+ [AC_CHECK_LIB(ssl, SSL_library_init, 
+   svn_lib_openssl=yes,
+   svn_lib_openssl=no,
+   -lcrypto

Re: svnauth ssl cert support -- please check windows build

2013-07-09 Thread Ivan Zhakov
On Wed, Jul 10, 2013 at 5:33 AM, Stefan Sperling s...@elego.de wrote:
 Here's a rough patch that makes svnauth show SSL certs as a list
 of fields, rather than a long base64 string.

 I'm adding a dependency on OpenSSL for certificate parsing.
 I hope this is fine. If OpenSSL is not available svnauth falls
 back to printing the base64 encoded form of the certificate.

 Since I'm tweaking the build system, it would be nice if someone
 could check whether this breaks the Windows build, or the build on
 other *nix platforms. And if it does, help me with fixing my patch.

Add direct OpenSSL dependency to svnauth doesn't seem right idea for
me. At least because serf may use other SSL libraries in future. Why
not use serf_ssl_load_cert_file()?

-- 
Ivan Zhakov
CTO | VisualSVN | http://www.visualsvn.com


Re: Making the Windows Build Easier

2013-05-07 Thread Ben Reser
On Mon, May 6, 2013 at 4:47 PM, Mark Phippard markp...@gmail.com wrote:
 I have Update 2 installed.
 http://www.microsoft.com/en-us/download/details.aspx?id=38188

I've installed update 2, still get a completely finished build.

Can you look to see that there is a line like this in all the vcxproj
files under modules\proxy\balancers:
PropertyGroupTrackFileAccessfalse/TrackFileAccess/PropertyGroup

The scripting that adds that bit is not really the greatest.  Perhaps
it's failing for you for some reason.  One possibility here is a
different version of Perl.  I'm using Perl 5.16.3.1603 from:
http://www.activestate.com/activeperl/downloads

If the above doesn't help, can you try the attached script (adjusting
paths).  I know it's ugly it's basically just a find2perl script that
I threw together to find failed builds while I was using this.  Just
run it while the cd is the trunk and it should point out which bits of
the build have Build FAILED in them.  You can then look at those logs
and you should get a more detailed error.  You very well may only find
what you've already found.

The other comment I have is I did this on Windows 8 x64 (though I only
built 32-bit binaries).  I'm not sure what version of Windows you're
using, but this might be another possible source of issues.


Re: Making the Windows Build Easier

2013-05-07 Thread Mark Phippard
On Tue, May 7, 2013 at 2:06 AM, Ben Reser b...@reser.org wrote:
 On Mon, May 6, 2013 at 4:47 PM, Mark Phippard markp...@gmail.com wrote:
 I have Update 2 installed.
 http://www.microsoft.com/en-us/download/details.aspx?id=38188

 I've installed update 2, still get a completely finished build.

I started over fresh overnight and got the same problem.

 Can you look to see that there is a line like this in all the vcxproj
 files under modules\proxy\balancers:
 PropertyGroupTrackFileAccessfalse/TrackFileAccess/PropertyGroup

Yes, next to last line right before the closing Project tag.

 The scripting that adds that bit is not really the greatest.  Perhaps
 it's failing for you for some reason.  One possibility here is a
 different version of Perl.  I'm using Perl 5.16.3.1603 from:
 http://www.activestate.com/activeperl/downloads

I am also using ActiveState.  5.12.2 in my case.

 If the above doesn't help, can you try the attached script (adjusting
 paths).  I know it's ugly it's basically just a find2perl script that
 I threw together to find failed builds while I was using this.  Just
 run it while the cd is the trunk and it should point out which bits of
 the build have Build FAILED in them.  You can then look at those logs
 and you should get a more detailed error.  You very well may only find
 what you've already found.

There were no attachments.

 The other comment I have is I did this on Windows 8 x64 (though I only
 built 32-bit binaries).  I'm not sure what version of Windows you're
 using, but this might be another possible source of issues.

Windows 7 x64, doing a 32-bit build.

--
Thanks

Mark Phippard
http://markphip.blogspot.com/


Re: Making the Windows Build Easier

2013-05-07 Thread Ben Reser
On Tue, May 7, 2013 at 6:14 AM, Mark Phippard markp...@gmail.com wrote:
 On Tue, May 7, 2013 at 2:06 AM, Ben Reser b...@reser.org wrote:
 Can you look to see that there is a line like this in all the vcxproj
 files under modules\proxy\balancers:
 PropertyGroupTrackFileAccessfalse/TrackFileAccess/PropertyGroup

 Yes, next to last line right before the closing Project tag.

Now I'm wondering if it isn't recognizing this property setting.  Can
you check your path to make sure you don't have some other tools on
the path?  If you run devenv from the terminal you were running this
in does it start Visual Studio 2012 or some previous version?

 The scripting that adds that bit is not really the greatest.  Perhaps
 it's failing for you for some reason.  One possibility here is a
 different version of Perl.  I'm using Perl 5.16.3.1603 from:
 http://www.activestate.com/activeperl/downloads

 I am also using ActiveState.  5.12.2 in my case.

Yeah well if the lines are there it shouldn't be an issue.

 If the above doesn't help, can you try the attached script (adjusting
 paths).  I know it's ugly it's basically just a find2perl script that
 I threw together to find failed builds while I was using this.  Just
 run it while the cd is the trunk and it should point out which bits of
 the build have Build FAILED in them.  You can then look at those logs
 and you should get a more detailed error.  You very well may only find
 what you've already found.

 There were no attachments.

Oops.  Attached this time.

 The other comment I have is I did this on Windows 8 x64 (though I only
 built 32-bit binaries).  I'm not sure what version of Windows you're
 using, but this might be another possible source of issues.

 Windows 7 x64, doing a 32-bit build.

Okay I'll try it on Windows 7 x64 if I get a chance to later today.


failed-build.pl
Description: Binary data


Re: Making the Windows Build Easier

2013-05-07 Thread Mark Phippard
On Tue, May 7, 2013 at 12:46 PM, Ben Reser b...@reser.org wrote:
 On Tue, May 7, 2013 at 6:14 AM, Mark Phippard markp...@gmail.com wrote:
 On Tue, May 7, 2013 at 2:06 AM, Ben Reser b...@reser.org wrote:
 Can you look to see that there is a line like this in all the vcxproj
 files under modules\proxy\balancers:
 PropertyGroupTrackFileAccessfalse/TrackFileAccess/PropertyGroup

 Yes, next to last line right before the closing Project tag.

 Now I'm wondering if it isn't recognizing this property setting.  Can
 you check your path to make sure you don't have some other tools on
 the path?  If you run devenv from the terminal you were running this
 in does it start Visual Studio 2012 or some previous version?

I am using the VS 2012 command prompt and it opens VS 2012.

 The scripting that adds that bit is not really the greatest.  Perhaps
 it's failing for you for some reason.  One possibility here is a
 different version of Perl.  I'm using Perl 5.16.3.1603 from:
 http://www.activestate.com/activeperl/downloads

 I am also using ActiveState.  5.12.2 in my case.

 Yeah well if the lines are there it shouldn't be an issue.

 If the above doesn't help, can you try the attached script (adjusting
 paths).  I know it's ugly it's basically just a find2perl script that
 I threw together to find failed builds while I was using this.  Just
 run it while the cd is the trunk and it should point out which bits of
 the build have Build FAILED in them.  You can then look at those logs
 and you should get a more detailed error.  You very well may only find
 what you've already found.

 There were no attachments.

 Oops.  Attached this time.

 The other comment I have is I did this on Windows 8 x64 (though I only
 built 32-bit binaries).  I'm not sure what version of Windows you're
 using, but this might be another possible source of issues.

 Windows 7 x64, doing a 32-bit build.

 Okay I'll try it on Windows 7 x64 if I get a chance to later today.

I am attaching the log file it found.  I also searched the
httxt2dbm.vcxproj file, which seems to be the relevant file, and it
does NOT seem to have that property you set about TrackFiles.  I note
this project file is in the support folder.  Does your script touch
those projects too?


--
Thanks

Mark Phippard
http://markphip.blogspot.com/


httxt2dbm.log
Description: Binary data


httxt2dbm.vcxproj
Description: Binary data


Re: Making the Windows Build Easier

2013-05-07 Thread Ben Reser
On Tue, May 7, 2013 at 10:43 AM, Mark Phippard markp...@gmail.com wrote:
 I am attaching the log file it found.  I also searched the
 httxt2dbm.vcxproj file, which seems to be the relevant file, and it
 does NOT seem to have that property you set about TrackFiles.  I note
 this project file is in the support folder.  Does your script touch
 those projects too?

I think we're dealing with a race condition that's just not happening
on my setup.  I noticed that the modules that failed for me were
somewhat random.  So I guess due to differences in systems I'm just
not seeing the failures in the support tree.

I've added the support tree to the tree of files that I turn off
tracking of file accesses in the projects in the latest commit.

Can you give that a try?

Thanks for your patience in dealing with this.


Re: Making the Windows Build Easier

2013-05-07 Thread Mark Phippard
On Tue, May 7, 2013 at 2:47 PM, Ben Reser b...@reser.org wrote:
 On Tue, May 7, 2013 at 10:43 AM, Mark Phippard markp...@gmail.com wrote:
 I am attaching the log file it found.  I also searched the
 httxt2dbm.vcxproj file, which seems to be the relevant file, and it
 does NOT seem to have that property you set about TrackFiles.  I note
 this project file is in the support folder.  Does your script touch
 those projects too?

 I think we're dealing with a race condition that's just not happening
 on my setup.  I noticed that the modules that failed for me were
 somewhat random.  So I guess due to differences in systems I'm just
 not seeing the failures in the support tree.

 I've added the support tree to the tree of files that I turn off
 tracking of file accesses in the projects in the latest commit.

 Can you give that a try?

 Thanks for your patience in dealing with this.

Yes, started it over from scratch as I was not sure if just re-running
would be the right thing to do.

In general, what is the process in the future when there are new
versions of components.  Should I be able to just update the version
number and re-run the script or should I always start from scratch?


--
Thanks

Mark Phippard
http://markphip.blogspot.com/


Re: Making the Windows Build Easier

2013-05-07 Thread Mark Phippard
On Tue, May 7, 2013 at 2:50 PM, Mark Phippard markp...@gmail.com wrote:
 On Tue, May 7, 2013 at 2:47 PM, Ben Reser b...@reser.org wrote:
 On Tue, May 7, 2013 at 10:43 AM, Mark Phippard markp...@gmail.com wrote:
 I am attaching the log file it found.  I also searched the
 httxt2dbm.vcxproj file, which seems to be the relevant file, and it
 does NOT seem to have that property you set about TrackFiles.  I note
 this project file is in the support folder.  Does your script touch
 those projects too?

 I think we're dealing with a race condition that's just not happening
 on my setup.  I noticed that the modules that failed for me were
 somewhat random.  So I guess due to differences in systems I'm just
 not seeing the failures in the support tree.

 I've added the support tree to the tree of files that I turn off
 tracking of file accesses in the projects in the latest commit.

 Can you give that a try?

 Thanks for your patience in dealing with this.

 Yes, started it over from scratch as I was not sure if just re-running
 would be the right thing to do.

 In general, what is the process in the future when there are new
 versions of components.  Should I be able to just update the version
 number and re-run the script or should I always start from scratch?

Looks like that latest commit solved it!  Thanks.

Now on to the next steps where I actually build SVN to use the dependencies.

--
Thanks

Mark Phippard
http://markphip.blogspot.com/


Re: Making the Windows Build Easier

2013-05-07 Thread Mark Phippard
On Sat, Apr 13, 2013 at 8:46 PM, Ben Reser b...@reser.org wrote:

 gen-make.py -t vcproj --vsnet-version=2012
 --with-berkeley-db=c:\Users\breser\svn-trunk-deps

Is this right?  Specifying the root folder?  I think it is because you
have a lib and include in it.  However, it tells me that BDB is not
found and the fs will not be built when I run this.  Everything else
seems OK.


--
Thanks

Mark Phippard
http://markphip.blogspot.com/


Re: Making the Windows Build Easier

2013-05-07 Thread Ben Reser
On Tue, May 7, 2013 at 11:50 AM, Mark Phippard markp...@gmail.com wrote:
 Yes, started it over from scratch as I was not sure if just re-running
 would be the right thing to do.

 In general, what is the process in the future when there are new
 versions of components.  Should I be able to just update the version
 number and re-run the script or should I always start from scratch?

For now probably best to start from scratch.  However, I should be
able to make it able to deal with that.


Re: Making the Windows Build Easier

2013-05-07 Thread Ben Reser
On Tue, May 7, 2013 at 12:38 PM, Mark Phippard markp...@gmail.com wrote:
 Is this right?  Specifying the root folder?  I think it is because you
 have a lib and include in it.  However, it tells me that BDB is not
 found and the fs will not be built when I run this.  Everything else
 seems OK.

It is but it looks like the windows build generator only knows about
berkeley db versions up to 4.8.

See _find_bdb() in build/generators/gen_win.py.

Adding 53 to that list of version numbers should fix it.  I'm
testing it right now.


Re: Making the Windows Build Easier

2013-05-06 Thread Mark Phippard
On Sat, Apr 13, 2013 at 8:46 PM, Ben Reser b...@reser.org wrote:

 The result is the build-svn-deps-win.pl script that I've commited in r1467714.

 This script is far from perfect.  It still needs some work on it, but
 it's probably about 90% of the way there to turning setting up a
 Windows development environment into about an hour effort from a
 couple day slog that you have no hope of being able to reproduce.

Giving this a try with 1.8.x RC1

 a) Pick a location to do the build and make a directory to build the
 deps, in my case I put it in C:\Users\breser\svn-trunk-deps.  Download
 the script at 
 http://svn.apache.org/repos/asf/subversion/trunk/tools/dev/build-svn-deps-win.pl
 and put it in this directory.  Open the script in a text editor and
 make sure you install the few dependencies you'll need (Perl, Python,
 7-Zip and CMake).  Python actually may not be needed for this but it's
 needed for the Subversion build itself.  If presented the option to
 add the commands to your path accept it (Python and Perl will do this
 by default, CMake you have to explicitly decide to do this).  7-zip
 doesn't have one so make a note of where you installed it for later.
 Once you have the dependencies downloaded open the VS2012 x86 Native
 Tools Command Prompt (usually found in the Visual Studio Tools
 group).  cd to your directory and run build-svn-deps-win.pl.  If
 7z.exe is not in C:\Program Files\7-Zip\7z.exe you can override this
 by passing SEVEN_ZIP=C:\Path\To\7z.exe to the script.  The script
 will then download and build the dependencies for you.  For me on my
 VM setup it takes about 45 minutes for this to run.

I used this option.  Ran into two quick problems that were easy to solve:

1) Script got a 404 when downloading zlib 1.2.7.  I recall seeing
messages about 1.2.8 on the list here so I changed the version in the
script and that solved that problem.

2) Got an error about invalid command line option when it tried to use
7-zip to unpack the tarballs.  Turned out I had an old version
installed.  I installed the latest and that resolved it.

I like that the script can be re-run.

The script then started chugging along and building.  It looks like it
failed at the end of building httpd.  Not really sure why or what is
wrong:

== Build: 7 succeeded, 0 failed, 0 up-to-date, 0 skipped ==
== Build: 118 succeeded, 1 failed, 0 up-to-date, 0 skipped ==
NMAKE : fatal error U1077: 'C:\Program Files (x86)\Microsoft Visual Studio 11.0
\Common7\IDE\devenv.COM' : return code '0x1'
Stop.
NMAKE : fatal error U1077: 'C:\Program Files (x86)\Microsoft Visual Studio 11.0
\VC\BIN\nmake.exe' : return code '0x2'
Stop.
Failed building/installing httpd/apr/apu/api (exit code: 512) at build-svn-deps-
win.pl line 245.

Any ideas?  I searched the output for what Failed and do not see
anything referenced.

Searching for all instanced of Error.  It might be this:

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon.ta
rgets(347,5): error MSB6003: The specified task executable CL.exe could not be
 run. The process cannot access the file 'C:\SVN\deps-1.8.x\build\httpd\modules\
proxy\balancers\Release\cl.write.1.tlog' because it is being used by another pro
cess.


--
Thanks

Mark Phippard
http://markphip.blogspot.com/


Re: Making the Windows Build Easier

2013-05-06 Thread Ben Reser
On Mon, May 6, 2013 at 3:40 PM, Mark Phippard markp...@gmail.com wrote:
 I like that the script can be re-run.

Yes, I tried to make it smart enough to avoid redoing work that was
already done.

 The script then started chugging along and building.  It looks like it
 failed at the end of building httpd.  Not really sure why or what is
 wrong:

 == Build: 7 succeeded, 0 failed, 0 up-to-date, 0 skipped ==
 == Build: 118 succeeded, 1 failed, 0 up-to-date, 0 skipped ==
 NMAKE : fatal error U1077: 'C:\Program Files (x86)\Microsoft Visual Studio 
 11.0
 \Common7\IDE\devenv.COM' : return code '0x1'
 Stop.
 NMAKE : fatal error U1077: 'C:\Program Files (x86)\Microsoft Visual Studio 
 11.0
 \VC\BIN\nmake.exe' : return code '0x2'
 Stop.
 Failed building/installing httpd/apr/apu/api (exit code: 512) at 
 build-svn-deps-
 win.pl line 245.

 Any ideas?  I searched the output for what Failed and do not see
 anything referenced.

 Searching for all instanced of Error.  It might be this:

 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon.ta
 rgets(347,5): error MSB6003: The specified task executable CL.exe could not 
 be
  run. The process cannot access the file 
 'C:\SVN\deps-1.8.x\build\httpd\modules\
 proxy\balancers\Release\cl.write.1.tlog' because it is being used by another 
 pro
 cess.

The above error is a bug in the httpd build process related to newer
versions of Visual Studio.  Since everything shares the same
intermediate directories concurrent builds start blowing up over this
log file.  The correct fix for this is to use different intermediate
build directories for each module.  This is a major change to the
httpd build system so I didn't do it.  Rather I applied a workaround
by setting a flag that tells Visual Studio not to use the files that
create the problem.

Let me see if I can reproduce this on my end.

What's the exact version of Visual Studio 2012 that you're using?  I'm
on 11.0.50727.1.  I haven't bothered to apply the updates to it.


Re: Making the Windows Build Easier

2013-05-06 Thread Mark Phippard
I have Update 2 installed. 
http://www.microsoft.com/en-us/download/details.aspx?id=38188

Sent from my iPad

On May 6, 2013, at 7:29 PM, Ben Reser b...@reser.org wrote:

 On Mon, May 6, 2013 at 3:40 PM, Mark Phippard markp...@gmail.com wrote:
 I like that the script can be re-run.
 
 Yes, I tried to make it smart enough to avoid redoing work that was
 already done.
 
 The script then started chugging along and building.  It looks like it
 failed at the end of building httpd.  Not really sure why or what is
 wrong:
 
 == Build: 7 succeeded, 0 failed, 0 up-to-date, 0 skipped ==
 == Build: 118 succeeded, 1 failed, 0 up-to-date, 0 skipped ==
 NMAKE : fatal error U1077: 'C:\Program Files (x86)\Microsoft Visual Studio 
 11.0
 \Common7\IDE\devenv.COM' : return code '0x1'
 Stop.
 NMAKE : fatal error U1077: 'C:\Program Files (x86)\Microsoft Visual Studio 
 11.0
 \VC\BIN\nmake.exe' : return code '0x2'
 Stop.
 Failed building/installing httpd/apr/apu/api (exit code: 512) at 
 build-svn-deps-
 win.pl line 245.
 
 Any ideas?  I searched the output for what Failed and do not see
 anything referenced.
 
 Searching for all instanced of Error.  It might be this:
 
 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon.ta
 rgets(347,5): error MSB6003: The specified task executable CL.exe could 
 not be
 run. The process cannot access the file 
 'C:\SVN\deps-1.8.x\build\httpd\modules\
 proxy\balancers\Release\cl.write.1.tlog' because it is being used by another 
 pro
 cess.
 
 The above error is a bug in the httpd build process related to newer
 versions of Visual Studio.  Since everything shares the same
 intermediate directories concurrent builds start blowing up over this
 log file.  The correct fix for this is to use different intermediate
 build directories for each module.  This is a major change to the
 httpd build system so I didn't do it.  Rather I applied a workaround
 by setting a flag that tells Visual Studio not to use the files that
 create the problem.
 
 Let me see if I can reproduce this on my end.
 
 What's the exact version of Visual Studio 2012 that you're using?  I'm
 on 11.0.50727.1.  I haven't bothered to apply the updates to it.


AW: Making the Windows Build Easier

2013-04-22 Thread Markus Schaber
Hi,

Berts SharpSVN build also includes a way to pull all the dependencies, using 
msbuild.

However, it does not work with the express editions yet, AFAICS, so your script 
clearly has at least one advantage. :-)

Will it work using the VS 2010 command prompt?

Best regards

Markus Schaber

CODESYS® a trademark of 3S-Smart Software Solutions GmbH

Inspiring Automation Solutions

3S-Smart Software Solutions GmbH
Dipl.-Inf. Markus Schaber | Product Development Core Technology
Memminger Str. 151 | 87439 Kempten | Germany
Tel. +49-831-54031-979 | Fax +49-831-54031-50

E-Mail: m.scha...@codesys.com | Web: http://www.codesys.com | CODESYS store: 
http://store.codesys.com
CODESYS forum: http://forum.codesys.com

Managing Directors: Dipl.Inf. Dieter Hess, Dipl.Inf. Manfred Werner | Trade 
register: Kempten HRB 6186 | Tax ID No.: DE 167014915

 -Ursprüngliche Nachricht-
 Von: Ben Reser [mailto:b...@reser.org]
 Gesendet: Sonntag, 14. April 2013 02:46
 An: Subversion Development
 Betreff: Making the Windows Build Easier
 
 As we've discussed previously a big part of the problem in getting the
 Windows build working has been getting the dependencies built.
 Everyone I've talked to manages to get this done, then has no idea how
 to duplicate what they've done.
 
 This past week I wanted to use some static analysis tools that were only
 available on Windows.  So I set out to build Subversion on Windows.  I
 spent about 2 days fighting with it, taking notes the whole way so I
 could try and reproduce it.  On the 3rd day I realized that taking notes
 wasn't going to work and that by the time I finished I'd have some
 instructions that left some important detail out or didn't explain it
 fully.  So I started writing a script to automate this annoying process.
 
 The result is the build-svn-deps-win.pl script that I've commited in
 r1467714.
 
 This script is far from perfect.  It still needs some work on it, but
 it's probably about 90% of the way there to turning setting up a Windows
 development environment into about an hour effort from a couple day slog
 that you have no hope of being able to reproduce.
 
 A lot of credit goes to pburba for his blog post here:
 http://blogs.collab.net/subversion/building-subversion-on-windows-a-
 walk-through
 
 Without it I would have spent even more time doing this than I did.
 
 So with all that said, here are some details.
 
 It downloads the following things:
 bdb
 zlib
 pcre
 httpd
 apr
 apr-util
 apr-iconv
 sqlite-amalgamation
 serf
 
 It builds all of the above expect for sqlite and serf which get built as
 part of the Subversion build itself (zlib could be built there as well
 but I built it so that mod_deflate would work in httpd).
 
 The script is built to use an entirely modern tool chain and
 dependencies.  Everything is the current released version.  That means
 httpd-2.4.4, Visual Studio 2012, etc...  It does not build or deal with
 neon, though that could be trivially added.
 
 Unfortunately, it does not work with Visual Studio 2012 Windows Desktop
 Express due to the lack of devenv.(com|exe).  However, the script is
 written to produce a the binaries in a way that they can be packaged.
 There's still some work to do here in making the package as minimal as
 possible (some of it possibly in our build system).
 
 At current the script only builds a Win32 Release build.  But I expect
 to change that in the near future.
 
 So without further ado, here are some instructions:
 
 1) Get the dependencies.  If you have a full version of Visual Studio
 (not an Express version) you can follow a) or b) depending on your
 preference.  For Visual Studio Express you have to follow b).
 
 a) Pick a location to do the build and make a directory to build the
 deps, in my case I put it in C:\Users\breser\svn-trunk-deps.  Download
 the script at
 http://svn.apache.org/repos/asf/subversion/trunk/tools/dev/build-svn-
 deps-win.pl
 and put it in this directory.  Open the script in a text editor and make
 sure you install the few dependencies you'll need (Perl, Python, 7-Zip
 and CMake).  Python actually may not be needed for this but it's needed
 for the Subversion build itself.  If presented the option to add the
 commands to your path accept it (Python and Perl will do this by default,
 CMake you have to explicitly decide to do this).  7-zip doesn't have one
 so make a note of where you installed it for later.
 Once you have the dependencies downloaded open the VS2012 x86 Native
 Tools Command Prompt (usually found in the Visual Studio Tools group).
 cd to your directory and run build-svn-deps-win.pl.  If 7z.exe is not in
 C:\Program Files\7-Zip\7z.exe you can override this by passing
 SEVEN_ZIP=C:\Path\To\7z.exe to the script.  The script will then
 download and build the dependencies for you.  For me on my VM setup it
 takes about 45 minutes for this to run.
 
 b) Download http://ben.reser.org/svn-windows-deps/svn-trunk-deps-win32-
 release-20130413.7z
 and extract it.  You can

Re: Making the Windows Build Easier

2013-04-15 Thread Mario Brandt
On 14 April 2013 02:46, Ben Reser b...@reser.org wrote:
 Unfortunately, it does not work with Visual Studio 2012 Windows
 Desktop Express due to the lack of devenv.(com|exe).  However, the
 script is written to produce a the binaries in a way that they can be
 packaged.  There's still some work to do here in making the package as
 minimal as possible (some of it possibly in our build system).

I'm not sure, but maybe it is worth to take a look at
https://github.com/winlibs/apache how it is done.


Re: Making the Windows Build Easier

2013-04-14 Thread Branko Čibej
On 14.04.2013 02:46, Ben Reser wrote:
 As we've discussed previously a big part of the problem in getting the
 Windows build working has been getting the dependencies built.
 Everyone I've talked to manages to get this done, then has no idea how
 to duplicate what they've done.

 This past week I wanted to use some static analysis tools that were
 only available on Windows.  So I set out to build Subversion on
 Windows.  I spent about 2 days fighting with it, taking notes the
 whole way so I could try and reproduce it.  On the 3rd day I realized
 that taking notes wasn't going to work and that by the time I finished
 I'd have some instructions that left some important detail out or
 didn't explain it fully.  So I started writing a script to automate
 this annoying process.

 The result is the build-svn-deps-win.pl script that I've commited in r1467714.

Have you seen:

https://github.com/brainy/subversion-windeps

I haven't had time to expand on that but I certainly intend to make time
during 1.9 development. It'll mean making considerable changes to our
Windows build generator (mainly removing a bunch of assumptions), but
that's all for the better.

-- Brane

-- Brane


-- 
Branko Čibej
Director of Subversion | WANdisco | www.wandisco.com



Re: Making the Windows Build Easier

2013-04-14 Thread Ben Reser
On Sun, Apr 14, 2013 at 10:24 AM, Branko Čibej br...@wandisco.com wrote:
 Have you seen:

 https://github.com/brainy/subversion-windeps

No I had not.  I'd known that you'd done some work but didn't realize
you'd gotten so far.

I'm not sure which approach is better.  I see that you've given
yourself standard Unix tools.  I went with Perl since I could get away
without having them.  I was also trying to keep the required
dependencies to use it down to a minimum.

Both of us appear to want to be able to look for things in bin,
include and lib dirs, which the build system doesn't really want to do
at current.

 I haven't had time to expand on that but I certainly intend to make time
 during 1.9 development. It'll mean making considerable changes to our
 Windows build generator (mainly removing a bunch of assumptions), but
 that's all for the better.

Yup, part of the reason my packaged up output is so big is I'm
shipping a lot of crap I don't want to because of the assumptions of
the build system.


Re: Making the Windows Build Easier

2013-04-14 Thread Mark Phippard
On Sun, Apr 14, 2013 at 1:48 PM, Ben Reser b...@reser.org wrote:
 On Sun, Apr 14, 2013 at 10:24 AM, Branko Čibej br...@wandisco.com wrote:
 Have you seen:

 https://github.com/brainy/subversion-windeps

 No I had not.  I'd known that you'd done some work but didn't realize
 you'd gotten so far.

 I'm not sure which approach is better.  I see that you've given
 yourself standard Unix tools.  I went with Perl since I could get away
 without having them.  I was also trying to keep the required
 dependencies to use it down to a minimum.

I am not sure where he keeps it, but Bert has an msbuild script that
does everything as well.  I believe the only thing you needed to have
installed was a recent Windows SDK and it used the compiler from that.
 I do not recall how he handled different bindings, but I recall the
script could even build Python from source so you did not need any of
it installed.

For SVN Edge we used his script as a starting point and then modified
it so that we could use pre-built zips of things we do not want to
rebuild every time like Perl/Python:

https://ctf.open.collab.net/integration/viewvc/viewvc.cgi/trunk/svn-server/windows/?root=svnedgesystem=exsy1005

I know we are using VS 2008 and not the SDK.  I do not recall if that
is because we ran into an issue where we needed it or not.

I think these scripts are useful for people doing packaging, but I am
not sure how good they are if you want to hack on Subversion using
Visual Studio where you want to use the debugger and have incremental
rebuilds etc.  I think those are the kinds of docs that would be
needed.

TortoiseSVN build also uses a lot of the same concepts:

https://code.google.com/p/tortoisesvn/source/browse/trunk/build.txt

--
Thanks

Mark Phippard
http://markphip.blogspot.com/


Re: Making the Windows Build Easier

2013-04-14 Thread Branko Čibej
On 14.04.2013 20:18, Mark Phippard wrote:
 On Sun, Apr 14, 2013 at 1:48 PM, Ben Reser b...@reser.org wrote:
 On Sun, Apr 14, 2013 at 10:24 AM, Branko Čibej br...@wandisco.com wrote:
 Have you seen:

 https://github.com/brainy/subversion-windeps
 No I had not.  I'd known that you'd done some work but didn't realize
 you'd gotten so far.

 I'm not sure which approach is better.  I see that you've given
 yourself standard Unix tools.  I went with Perl since I could get away
 without having them.  I was also trying to keep the required
 dependencies to use it down to a minimum.
 I am not sure where he keeps it, but Bert has an msbuild script that
 does everything as well.  I believe the only thing you needed to have
 installed was a recent Windows SDK and it used the compiler from that.
  I do not recall how he handled different bindings, but I recall the
 script could even build Python from source so you did not need any of
 it installed.

I've seen the MSBuild script, but I found it way too complicated to
support in our code base. A matter of taste, I suppose.

-- Brane


-- 
Branko Čibej
Director of Subversion | WANdisco | www.wandisco.com



Making the Windows Build Easier

2013-04-13 Thread Ben Reser
As we've discussed previously a big part of the problem in getting the
Windows build working has been getting the dependencies built.
Everyone I've talked to manages to get this done, then has no idea how
to duplicate what they've done.

This past week I wanted to use some static analysis tools that were
only available on Windows.  So I set out to build Subversion on
Windows.  I spent about 2 days fighting with it, taking notes the
whole way so I could try and reproduce it.  On the 3rd day I realized
that taking notes wasn't going to work and that by the time I finished
I'd have some instructions that left some important detail out or
didn't explain it fully.  So I started writing a script to automate
this annoying process.

The result is the build-svn-deps-win.pl script that I've commited in r1467714.

This script is far from perfect.  It still needs some work on it, but
it's probably about 90% of the way there to turning setting up a
Windows development environment into about an hour effort from a
couple day slog that you have no hope of being able to reproduce.

A lot of credit goes to pburba for his blog post here:
http://blogs.collab.net/subversion/building-subversion-on-windows-a-walk-through

Without it I would have spent even more time doing this than I did.

So with all that said, here are some details.

It downloads the following things:
bdb
zlib
pcre
httpd
apr
apr-util
apr-iconv
sqlite-amalgamation
serf

It builds all of the above expect for sqlite and serf which get built
as part of the Subversion build itself (zlib could be built there as
well but I built it so that mod_deflate would work in httpd).

The script is built to use an entirely modern tool chain and
dependencies.  Everything is the current released version.  That means
httpd-2.4.4, Visual Studio 2012, etc...  It does not build or deal
with neon, though that could be trivially added.

Unfortunately, it does not work with Visual Studio 2012 Windows
Desktop Express due to the lack of devenv.(com|exe).  However, the
script is written to produce a the binaries in a way that they can be
packaged.  There's still some work to do here in making the package as
minimal as possible (some of it possibly in our build system).

At current the script only builds a Win32 Release build.  But I expect
to change that in the near future.

So without further ado, here are some instructions:

1) Get the dependencies.  If you have a full version of Visual Studio
(not an Express version) you can follow a) or b) depending on your
preference.  For Visual Studio Express you have to follow b).

a) Pick a location to do the build and make a directory to build the
deps, in my case I put it in C:\Users\breser\svn-trunk-deps.  Download
the script at 
http://svn.apache.org/repos/asf/subversion/trunk/tools/dev/build-svn-deps-win.pl
and put it in this directory.  Open the script in a text editor and
make sure you install the few dependencies you'll need (Perl, Python,
7-Zip and CMake).  Python actually may not be needed for this but it's
needed for the Subversion build itself.  If presented the option to
add the commands to your path accept it (Python and Perl will do this
by default, CMake you have to explicitly decide to do this).  7-zip
doesn't have one so make a note of where you installed it for later.
Once you have the dependencies downloaded open the VS2012 x86 Native
Tools Command Prompt (usually found in the Visual Studio Tools
group).  cd to your directory and run build-svn-deps-win.pl.  If
7z.exe is not in C:\Program Files\7-Zip\7z.exe you can override this
by passing SEVEN_ZIP=C:\Path\To\7z.exe to the script.  The script
will then download and build the dependencies for you.  For me on my
VM setup it takes about 45 minutes for this to run.

b) Download 
http://ben.reser.org/svn-windows-deps/svn-trunk-deps-win32-release-20130413.7z
and extract it.  You can rename the folder but it should be named
svn-trunk-deps.  In my case I put it in
C:\Users\breser\svn-trunk-deps.  The file is 116MB and it's compressed
with 7-zip (sorry but it was less than half the size using 7-zip over
normal zip).  You'll need at least Python which you can find a URL to
at the top of the build-svn-deps-win.pl script in the svn-trunk-deps.
You may need Perl but I'm not sure, I had it on my setup since I was
originally trying to do step a with Express.  You won't need CMake for
sure though.  There is a GPG signature of the file for the
appropriately cautious:
http://ben.reser.org/svn-windows-deps/svn-trunk-deps-win32-release-20130413.7z.asc

2) Get Subversion's source.  At this point I haven't tested this with
anything other than trunk, so you'll need a Subversion client to do a
checkout.

3) Configure Subversion.  In the VS2012 Command Prompt cd into the
Subversion source you checked out and run the following (adjusting the
paths  so that C:\Users\breser\svn-trunk-deps is wherever you put the
dependencies:
gen-make.py -t vcproj --vsnet-version=2012
--with-berkeley-db=c:\Users\breser

Re: Making the Windows Build Easier

2013-04-13 Thread Ben Reser
On Sat, Apr 13, 2013 at 5:46 PM, Ben Reser b...@reser.org wrote:
 The result is the build-svn-deps-win.pl script that I've commited in r1467714.

 This script is far from perfect.  It still needs some work on it, but
 it's probably about 90% of the way there to turning setting up a
 Windows development environment into about an hour effort from a
 couple day slog that you have no hope of being able to reproduce.

For what it's worth I forgot to mention that the script and the
instructions are only for trunk/1.8.0.  At first it looked like it
would work since the Subversion build was just unhappy about neon
(which I gave it) and then it didn't know about 2012 in gen-make.py so
I told it 2010 and converted the project.  But when you try to build
it, it ends up with a ton of errors about not being able to open
source files.  Maybe we should back port the 2012 generator to 1.7.x.


Re: Windows build still requires apr-util?

2013-03-14 Thread Mario Brandt
Hi,

On 13 March 2013 18:51,  kmra...@rockwellcollins.com wrote:

 Doesn't Apache officially only support vc6 builds for httpd on Windows?

The ASF supports no binaries at all. Indeed Bill used to compile httpd
with VC6, but the plans are to go to newer compiler. You may have
noticed that there weren't any windows binaries with the last
releases.

How ever Gregg Smith made the build files for 1.5.1 see
http://mail-archives.apache.org/mod_mbox/apr-dev/201303.mbox/%3C513C5A5F.7010605%40gknw.net%3E

Cheers
Mario


Re: Windows build still requires apr-util?

2013-03-14 Thread Sergei Antonov
On 13 March 2013 19:15, Bert Huijben b...@qqmail.nl wrote:


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: woensdag 13 maart 2013 18:47
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?

 Gentle reminder: VS 2010 doesn't compile the latest revision.
 Please, add #include time.h into
 subversion\libsvn_subr\win32_crashrpt.c and commit.

 I think that is somehow dependant on other settings as it just compiles for 
 me with 2010 (and 2012 and 2008).

Do you compile this file at all?

 Can you explain what makes your environment different

You do not have SVN_USE_WIN32_CRASHHANDLER?
You use different revision? (mine is 1456399)

Open VS 2010 .sln, navigate to 'win32_crashrpt.c' in project
'libsvn_subr', choose Build-Compile. What do you see? I see this:

1-- Build started: Project: libsvn_subr (Libraries\libsvn_subr),
Configuration: Debug Win32 --
1Build started 14.03.2013 13:26:47.
1ClCompile:
1  win32_crashrpt.c
1..\..\..\subversion\libsvn_subr\win32_crashrpt.c(706): error C4013:
'time' undefined; assuming extern returning int
1..\..\..\subversion\libsvn_subr\win32_crashrpt.c(707): error C4013:
'strftime' undefined; assuming extern returning int
1..\..\..\subversion\libsvn_subr\win32_crashrpt.c(707): error C4013:
'localtime' undefined; assuming extern returning int

1
1Build FAILED.
1
1Time Elapsed 00:00:00.96
== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==

 , because just adding includes everywhere is not the way to fix these things

Every translation unit with a call to localtime/time/strftime must
include time.h. So it IS a way to fix these things.


RE: Windows build still requires apr-util?

2013-03-14 Thread Bert Huijben


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: donderdag 14 maart 2013 13:33
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?
 
 On 13 March 2013 19:15, Bert Huijben b...@qqmail.nl wrote:
 
 
  -Original Message-
  From: Sergei Antonov [mailto:sap...@gmail.com]
  Sent: woensdag 13 maart 2013 18:47
  To: dev@subversion.apache.org
  Subject: Re: Windows build still requires apr-util?
 
  Gentle reminder: VS 2010 doesn't compile the latest revision.
  Please, add #include time.h into
  subversion\libsvn_subr\win32_crashrpt.c and commit.
 
  I think that is somehow dependant on other settings as it just compiles for
 me with 2010 (and 2012 and 2008).
 
 Do you compile this file at all?
 
  Can you explain what makes your environment different
 
 You do not have SVN_USE_WIN32_CRASHHANDLER?
 You use different revision? (mine is 1456399)
 
 Open VS 2010 .sln, navigate to 'win32_crashrpt.c' in project
 'libsvn_subr', choose Build-Compile. What do you see? I see this:
 
 1-- Build started: Project: libsvn_subr (Libraries\libsvn_subr),
 Configuration: Debug Win32 --
 1Build started 14.03.2013 13:26:47.
 1ClCompile:
 1  win32_crashrpt.c
 1..\..\..\subversion\libsvn_subr\win32_crashrpt.c(706): error C4013:
 'time' undefined; assuming extern returning int
 1..\..\..\subversion\libsvn_subr\win32_crashrpt.c(707): error C4013:
 'strftime' undefined; assuming extern returning int
 1..\..\..\subversion\libsvn_subr\win32_crashrpt.c(707): error C4013:
 'localtime' undefined; assuming extern returning int
 
 1
 1Build FAILED.
 1
 1Time Elapsed 00:00:00.96
 == Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped
 ==
 
  , because just adding includes everywhere is not the way to fix these things
 
 Every translation unit with a call to localtime/time/strftime must
 include time.h. So it IS a way to fix these things.

My apr.h includes time.h.

apr.hw defines APR_HAVE_TIME and the generated apr.h then includes time.h for 
me.

Why should we include this file manually?

Bert



RE: Windows build still requires apr-util?

2013-03-14 Thread Bert Huijben


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: donderdag 14 maart 2013 14:13
 To: Bert Huijben
 Subject: Re: Windows build still requires apr-util?
 
 On 14 March 2013 13:44, Bert Huijben b...@qqmail.nl wrote:
 
 
  -Original Message-
  From: Sergei Antonov [mailto:sap...@gmail.com]
  Sent: donderdag 14 maart 2013 13:31
  To: Bert Huijben
  Subject: Re: Windows build still requires apr-util?
 
  On 13 March 2013 19:15, Bert Huijben b...@qqmail.nl wrote:
  
  
   -Original Message-
   From: Sergei Antonov [mailto:sap...@gmail.com]
   Sent: woensdag 13 maart 2013 18:47
   To: dev@subversion.apache.org
   Subject: Re: Windows build still requires apr-util?
  
   Gentle reminder: VS 2010 doesn't compile the latest revision.
   Please, add #include time.h into
   subversion\libsvn_subr\win32_crashrpt.c and commit.
  
   I think that is somehow dependant on other settings as it just compiles
 for
  me with 2010 (and 2012 and 2008).
 
  Do not compile this file at all?
 
   Can you explain what makes your environment different
 
  You do not have SVN_USE_WIN32_CRASHHANDLER?
  You use different revision? (mine is 1456399)
 
  Open VS 2010 .sln, navigate to 'win32_crashrpt.c' in project
  'libsvn_subr', choose Build-Compile. What do you see? I see this:
 
  I use the crash handler. (Standard settings) and I usually build Subversion
 trunk multiple times per day with different Visual Studio versions. The file
 hasn't changed in this respect for years.
 
  time.h is included by apr.h for me.
 
 My apr.h is attached. Can you compare it with yours?
 
  I don't see why we would have to duplicate the include here in my
 environment.
 
 Is time.h from apr.h guaranteed?

Yes, in apr 0.9.X and 1.x it is always included on Windows, see apr.hw from the 
apr project. Their compatibility rules are the same as ours.

We don't declare apr 2.X support in Subversion, so I would guess that is 
untested. But I would guess it is still included there.
(And unless it was an actual decision to remove it, I would call it a bug if it 
is no longer included)

But APR is supported on another mailinglist, than this one.

Bert



Re: Windows build still requires apr-util?

2013-03-14 Thread Sergei Antonov
On 14 March 2013 15:00, Bert Huijben b...@qqmail.nl wrote:


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: donderdag 14 maart 2013 14:13
 To: Bert Huijben
 Subject: Re: Windows build still requires apr-util?

 On 14 March 2013 13:44, Bert Huijben b...@qqmail.nl wrote:
 
 
  -Original Message-
  From: Sergei Antonov [mailto:sap...@gmail.com]
  Sent: donderdag 14 maart 2013 13:31
  To: Bert Huijben
  Subject: Re: Windows build still requires apr-util?
 
  On 13 March 2013 19:15, Bert Huijben b...@qqmail.nl wrote:
  
  
   -Original Message-
   From: Sergei Antonov [mailto:sap...@gmail.com]
   Sent: woensdag 13 maart 2013 18:47
   To: dev@subversion.apache.org
   Subject: Re: Windows build still requires apr-util?
  
   Gentle reminder: VS 2010 doesn't compile the latest revision.
   Please, add #include time.h into
   subversion\libsvn_subr\win32_crashrpt.c and commit.
  
   I think that is somehow dependant on other settings as it just compiles
 for
  me with 2010 (and 2012 and 2008).
 
  Do not compile this file at all?
 
   Can you explain what makes your environment different
 
  You do not have SVN_USE_WIN32_CRASHHANDLER?
  You use different revision? (mine is 1456399)
 
  Open VS 2010 .sln, navigate to 'win32_crashrpt.c' in project
  'libsvn_subr', choose Build-Compile. What do you see? I see this:
 
  I use the crash handler. (Standard settings) and I usually build Subversion
 trunk multiple times per day with different Visual Studio versions. The file
 hasn't changed in this respect for years.
 
  time.h is included by apr.h for me.

 My apr.h is attached. Can you compare it with yours?

  I don't see why we would have to duplicate the include here in my
 environment.

 Is time.h from apr.h guaranteed?

 Yes

Hard to believe. I don't know about apr specifically, but usually
library headers (like apr.h) are means to deliver library's (i.e.
APR's) functions/types/constants and not means to deliver system
headers. And when they do, it is just a side effect.

 We don't declare apr 2.X support in Subversion, so I would guess that is 
 untested.

Didn't know about not supporting 2.X in subversion. Thanks for
telling. It is not mentioned in 'INSTALL'.

 But I would guess it is still included there.

I used apr 2.0. No time.h there, see the apr.h I sent you.


RE: Windows build still requires apr-util?

2013-03-14 Thread Bert Huijben


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: donderdag 14 maart 2013 16:02
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?
 
 On 14 March 2013 15:00, Bert Huijben b...@qqmail.nl wrote:
 
 
  -Original Message-
  From: Sergei Antonov [mailto:sap...@gmail.com]
  Sent: donderdag 14 maart 2013 14:13
  To: Bert Huijben
  Subject: Re: Windows build still requires apr-util?
 
  On 14 March 2013 13:44, Bert Huijben b...@qqmail.nl wrote:
  
  
   -Original Message-
   From: Sergei Antonov [mailto:sap...@gmail.com]
   Sent: donderdag 14 maart 2013 13:31
   To: Bert Huijben
   Subject: Re: Windows build still requires apr-util?
  
   On 13 March 2013 19:15, Bert Huijben b...@qqmail.nl wrote:
   
   
-Original Message-
From: Sergei Antonov [mailto:sap...@gmail.com]
Sent: woensdag 13 maart 2013 18:47
To: dev@subversion.apache.org
Subject: Re: Windows build still requires apr-util?
   
Gentle reminder: VS 2010 doesn't compile the latest revision.
Please, add #include time.h into
subversion\libsvn_subr\win32_crashrpt.c and commit.
   
I think that is somehow dependant on other settings as it just
 compiles
  for
   me with 2010 (and 2012 and 2008).
  
   Do not compile this file at all?
  
Can you explain what makes your environment different
  
   You do not have SVN_USE_WIN32_CRASHHANDLER?
   You use different revision? (mine is 1456399)
  
   Open VS 2010 .sln, navigate to 'win32_crashrpt.c' in project
   'libsvn_subr', choose Build-Compile. What do you see? I see this:
  
   I use the crash handler. (Standard settings) and I usually build
 Subversion
  trunk multiple times per day with different Visual Studio versions. The 
  file
  hasn't changed in this respect for years.
  
   time.h is included by apr.h for me.
 
  My apr.h is attached. Can you compare it with yours?
 
   I don't see why we would have to duplicate the include here in my
  environment.
 
  Is time.h from apr.h guaranteed?
 
  Yes
 
 Hard to believe. I don't know about apr specifically, but usually
 library headers (like apr.h) are means to deliver library's (i.e.
 APR's) functions/types/constants and not means to deliver system
 headers. And when they do, it is just a side effect.
 
  We don't declare apr 2.X support in Subversion, so I would guess that is
 untested.
 
 Didn't know about not supporting 2.X in subversion. Thanks for
 telling. It is not mentioned in 'INSTALL'.

From the details section of INSTALL

  1.  Apache Portable Runtime 0.9.7 or 1.X.X  (REQUIRED)

  Whenever you want to build any part of Subversion, you need the
  Apache Portable Runtime (APR) and the APR Utility (APR-util)
  libraries.


Also note that there are no released apr 2.x versions on 
http://apr.apache.org/, the recommended version there is still 1.4.6.

In the current state we haven't started adding 2.X compatibility, as officially 
it doesn't exist yet. (Anything can change until the first released 2.X. There 
are no compatibly promises between major versions) 

Bert



Re: Windows build still requires apr-util?

2013-03-14 Thread Sergei Antonov
On 14 March 2013 16:09, Bert Huijben b...@qqmail.nl wrote:


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: donderdag 14 maart 2013 16:02
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?

 On 14 March 2013 15:00, Bert Huijben b...@qqmail.nl wrote:
 
 
  -Original Message-
  From: Sergei Antonov [mailto:sap...@gmail.com]
  Sent: donderdag 14 maart 2013 14:13
  To: Bert Huijben
  Subject: Re: Windows build still requires apr-util?
 
  On 14 March 2013 13:44, Bert Huijben b...@qqmail.nl wrote:
  
  
   -Original Message-
   From: Sergei Antonov [mailto:sap...@gmail.com]
   Sent: donderdag 14 maart 2013 13:31
   To: Bert Huijben
   Subject: Re: Windows build still requires apr-util?
  
   On 13 March 2013 19:15, Bert Huijben b...@qqmail.nl wrote:
   
   
-Original Message-
From: Sergei Antonov [mailto:sap...@gmail.com]
Sent: woensdag 13 maart 2013 18:47
To: dev@subversion.apache.org
Subject: Re: Windows build still requires apr-util?
   
Gentle reminder: VS 2010 doesn't compile the latest revision.
Please, add #include time.h into
subversion\libsvn_subr\win32_crashrpt.c and commit.
   
I think that is somehow dependant on other settings as it just
 compiles
  for
   me with 2010 (and 2012 and 2008).
  
   Do not compile this file at all?
  
Can you explain what makes your environment different
  
   You do not have SVN_USE_WIN32_CRASHHANDLER?
   You use different revision? (mine is 1456399)
  
   Open VS 2010 .sln, navigate to 'win32_crashrpt.c' in project
   'libsvn_subr', choose Build-Compile. What do you see? I see this:
  
   I use the crash handler. (Standard settings) and I usually build
 Subversion
  trunk multiple times per day with different Visual Studio versions. The 
  file
  hasn't changed in this respect for years.
  
   time.h is included by apr.h for me.
 
  My apr.h is attached. Can you compare it with yours?
 
   I don't see why we would have to duplicate the include here in my
  environment.
 
  Is time.h from apr.h guaranteed?
 
  Yes

 Hard to believe. I don't know about apr specifically, but usually
 library headers (like apr.h) are means to deliver library's (i.e.
 APR's) functions/types/constants and not means to deliver system
 headers. And when they do, it is just a side effect.

  We don't declare apr 2.X support in Subversion, so I would guess that is
 untested.

 Didn't know about not supporting 2.X in subversion. Thanks for
 telling. It is not mentioned in 'INSTALL'.

 From the details section of INSTALL

   1.  Apache Portable Runtime 0.9.7 or 1.X.X  (REQUIRED)

   Whenever you want to build any part of Subversion, you need the
   Apache Portable Runtime (APR) and the APR Utility (APR-util)
   libraries.
 

I compiled for Windows, so I went straight to E.  Building the Latest
Source under Windows of INSTALL, and read there:
  * Apache apr, apr-util, and optionally apr-iconv libraries, version
0.9.12 or later. Included in both the Subversion dependencies ZIP file
or later - no upper limit.

 Also note that there are no released apr 2.x versions on 
 http://apr.apache.org/, the recommended version there is still 1.4.6.

Good. I've switched to 1.4.6.


Re: Windows build still requires apr-util?

2013-03-14 Thread Ben Reser
On Thu, Mar 14, 2013 at 8:09 AM, Bert Huijben b...@qqmail.nl wrote:
 In the current state we haven't started adding 2.X compatibility, as 
 officially it doesn't exist yet. (Anything can change until the first 
 released 2.X. There are no compatibly promises between major versions)

Unix build works with APR 2.x (mostly thanks to Philip).  I've been
using it off and on that way whenever I wanted to debug the full stack
(apr/httpd/subversion).  I haven't noticed any issues.

At least for me I don't have time.h being included by apr.h in either
APR 2.x or 1.x:
$ egrep -i time.h /usr/include/apr-1.0/apr.h
#define APR_HAVE_SYS_TIME_H  1
#define APR_HAVE_TIME_H  1

$ egrep -i time.h /home/breser/httpd-trunk-root/include/apr-2/apr.h
#define APR_HAVE_SYS_TIME_H  1
#define APR_HAVE_TIME_H  1

It was removed from apr.hw in r892162 with the message futher win32
synchronization

However, as Bert has already pointed out this is probably something
that should be directed towards the APR dev list.


RE: Windows build still requires apr-util?

2013-03-13 Thread Bert Huijben
 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: zondag 10 maart 2013 16:39
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?
 
 Well, I took apr-util-1.5.1-win32-src.zip and dsw/dsp were generated.
 Then I opened .dsw in VS 2010, did a conversion, and tried to build.
 Nothing except zlib compiles, with a lot of Cannot open include file:
 'svn_private_config.h' errors. Did I miss some step that generates
 this file?

I can confirm that the build with Visual C++ 6.0 scripts is broken on trunk 
since r1371633, but I currently don't have access to that version of Visual C++ 
to fix it.

Bert



Re: Windows build still requires apr-util?

2013-03-13 Thread Branko Čibej
On 13.03.2013 13:08, Bert Huijben wrote:
 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: zondag 10 maart 2013 16:39
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?

 Well, I took apr-util-1.5.1-win32-src.zip and dsw/dsp were generated.
 Then I opened .dsw in VS 2010, did a conversion, and tried to build.
 Nothing except zlib compiles, with a lot of Cannot open include file:
 'svn_private_config.h' errors. Did I miss some step that generates
 this file?
 I can confirm that the build with Visual C++ 6.0 scripts is broken on trunk 
 since r1371633, but I currently don't have access to that version of Visual 
 C++ to fix it.

Nor should you even try to, IMO. There comes a time when it ceases to
make any sense to support an old compiler that's been EOL-d a while ago,
especially since free versions of newer compilers are available.

I would support removing the .dsp generator completely.

-- Brane


-- 
Branko Čibej
Director of Subversion | WANdisco | www.wandisco.com



Re: Windows build still requires apr-util?

2013-03-13 Thread Ben Reser
On Wed, Mar 13, 2013 at 6:59 AM, Branko Čibej br...@wandisco.com wrote:
 Nor should you even try to, IMO. There comes a time when it ceases to
 make any sense to support an old compiler that's been EOL-d a while ago,
 especially since free versions of newer compilers are available.

 I would support removing the .dsp generator completely.

+1, it's old and broke and better to not exist.  If it's there someone
is likely to try to use it.


RE: Windows build still requires apr-util?

2013-03-13 Thread Bert Huijben


 -Original Message-
 From: Ben Reser [mailto:b...@reser.org]
 Sent: woensdag 13 maart 2013 18:14
 To: Branko Čibej
 Cc: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?
 
 On Wed, Mar 13, 2013 at 6:59 AM, Branko Čibej br...@wandisco.com
 wrote:
  Nor should you even try to, IMO. There comes a time when it ceases to
  make any sense to support an old compiler that's been EOL-d a while ago,
  especially since free versions of newer compilers are available.
 
  I would support removing the .dsp generator completely.
 
 +1, it's old and broke and better to not exist.  If it's there someone
 is likely to try to use it.

If we remove this support, I would recommend also removing the VS 2002 (aka 
.Net) and 2003 support. Those versions are mostly unused these days while 6.0 
still has a group of supporters that doesn't want to upgrade to anything newer.

If our NMake support still works (I never used it), I would recommend that 
users of these old versions of Visual Studio use that, if they want to build 
subversion using those tools.

Bert



Re: Windows build still requires apr-util?

2013-03-13 Thread Sergei Antonov
Gentle reminder: VS 2010 doesn't compile the latest revision.
Please, add #include time.h into
subversion\libsvn_subr\win32_crashrpt.c and commit.


Re: Windows build still requires apr-util?

2013-03-13 Thread kmradke
  Nor should you even try to, IMO. There comes a time when it ceases to
  make any sense to support an old compiler that's been EOL-d a while 
ago,
  especially since free versions of newer compilers are available.
 
  I would support removing the .dsp generator completely.
 
 +1, it's old and broke and better to not exist.  If it's there someone
 is likely to try to use it.

Doesn't Apache officially only support vc6 builds for httpd on Windows?

I know some unofficial builds (and I use an x64 version compiled with 
vs2008)
are available, but removing vc6 support would be premature if Apache isn't
widely available when built with newer compilers...

Kevin R.


Re: Windows build still requires apr-util?

2013-03-13 Thread Mark Phippard
On Wed, Mar 13, 2013 at 1:51 PM, kmra...@rockwellcollins.com wrote:

   Nor should you even try to, IMO. There comes a time when it ceases to
   make any sense to support an old compiler that's been EOL-d a while
 ago,
   especially since free versions of newer compilers are available.
  
   I would support removing the .dsp generator completely.
 
  +1, it's old and broke and better to not exist.  If it's there someone
  is likely to try to use it.

 Doesn't Apache officially only support vc6 builds for httpd on Windows?

 I know some unofficial builds (and I use an x64 version compiled with
 vs2008)
 are available, but removing vc6 support would be premature if Apache isn't
 widely available when built with newer compilers...

 Kevin R.


The HTTP server project stopped providing Windows binaries or even a
Windows-specific source zip file a few releases ago.  The documentation for
building mentions VC 6.0, but it also mentions later versions and I believe
the build process supports other versions.

We build it using VS 2010.  Apache Lounge binaries are all done with newer
versions as well.

-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/


RE: Windows build still requires apr-util?

2013-03-13 Thread Bert Huijben


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: woensdag 13 maart 2013 18:47
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?
 
 Gentle reminder: VS 2010 doesn't compile the latest revision.
 Please, add #include time.h into
 subversion\libsvn_subr\win32_crashrpt.c and commit.

I think that is somehow dependant on other settings as it just compiles for me 
with 2010 (and 2012 and 2008).

Can you explain what makes your environment different, because just adding 
includes everywhere is not the way to fix these things?

Bert



Re: Windows build still requires apr-util?

2013-03-13 Thread Joe Swatosh
I've been using VC6 to test the ruby bindings as I haven't yet succeeded in
building with mingw.

It needs this patch:

[[[
Index: build/generator/gen_win.py
===
--- build/generator/gen_win.py  (revision 1454760)
+++ build/generator/gen_win.py  (working copy)
@@ -401,7 +401,6 @@
   install_targets = [x for x in install_targets
  if not (isinstance(x,
gen_base.TargetJava)
  or isinstance(x,
gen_base.TargetJavaHeaders)
- or isinstance(x,
gen_base.TargetSWIGProject)
  or x.name == '__JAVAHL__'
  or x.name ==
'__JAVAHL_TESTS__'
  or x.name == 'libsvnjavahl')]
Index: subversion/include/svn_types.h
===
--- subversion/include/svn_types.h  (revision 1454760)
+++ subversion/include/svn_types.h  (working copy)
@@ -29,6 +29,7 @@

 /* ### this should go away, but it causes too much breakage right now */
 #include stdlib.h
+#include limits.h /* for ULONG_MAX */

 #include apr.h /* for apr_size_t, apr_int64_t, ... */
 #include apr_errno.h   /* for apr_status_t */
Index: subversion/libsvn_subr/sysinfo.c
===
--- subversion/libsvn_subr/sysinfo.c(revision 1454760)
+++ subversion/libsvn_subr/sysinfo.c(working copy)
@@ -28,8 +28,14 @@
 #define PSAPI_VERSION 1
 #include windows.h
 #include psapi.h
+#if defined(_MSC_VER)
+#if _MSC_VER  1200
 #include Ws2tcpip.h
 #endif
+#else
+#include Ws2tcpip.h
+#endif
+#endif

 #define APR_WANT_STRFUNC
 #include apr_want.h
Index: subversion/libsvn_subr/cache-membuffer.c
===
--- subversion/libsvn_subr/cache-membuffer.c(revision 1454760)
+++ subversion/libsvn_subr/cache-membuffer.c(working copy)
@@ -116,11 +116,11 @@
 /* By default, don't create cache segments smaller than this value unless
  * the total cache size itself is smaller.
  */
-#define DEFAULT_MIN_SEGMENT_SIZE 0x200ull
+#define DEFAULT_MIN_SEGMENT_SIZE 0x200ui64

 /* The minimum segment size we will allow for multi-segmented caches
  */
-#define MIN_SEGMENT_SIZE 0x1ull
+#define MIN_SEGMENT_SIZE 0x1ui64

 /* The maximum number of segments allowed. Larger numbers reduce the size
  * of each segment, in turn reducing the max size of a cachable item.
@@ -133,7 +133,7 @@
 /* As of today, APR won't allocate chunks of 4GB or more. So, limit the
  * segment size to slightly below that.
  */
-#define MAX_SEGMENT_SIZE 0xull
+#define MAX_SEGMENT_SIZE 0xui64

 /* We don't mark the initialization status for every group but initialize
  * a number of groups at once. That will allow for a very small init flags
]]]

Though honestly, I haven't much interest in it once I can get a mingw
going

--
Joe


On Wed, Mar 13, 2013 at 10:14 AM, Ben Reser b...@reser.org wrote:

 On Wed, Mar 13, 2013 at 6:59 AM, Branko Čibej br...@wandisco.com wrote:
  Nor should you even try to, IMO. There comes a time when it ceases to
  make any sense to support an old compiler that's been EOL-d a while ago,
  especially since free versions of newer compilers are available.
 
  I would support removing the .dsp generator completely.

 +1, it's old and broke and better to not exist.  If it's there someone
 is likely to try to use it.



Re: Windows build still requires apr-util?

2013-03-11 Thread Sergei Antonov
 Well, I took apr-util-1.5.1-win32-src.zip and dsw/dsp were generated.
 Then I opened .dsw in VS 2010, did a conversion, and tried to build.
 Nothing except zlib compiles, with a lot of Cannot open include file:
 'svn_private_config.h' errors. Did I miss some step that generates
 this file?

 Why do you create Visual Studio 6.0 projects and upgrade these while 
 Subversion can just create VC 2002, 2003, 2005, 2008, 2010 and 2012 projects 
 for you?

Didn't think 2010 was supported, because this piece of --help output
only tells about 6.0 and 2002:
  -t TYPE   use the TYPE generator; can be one of:
dsp   MSVC 6.x project files
make  Makefiles for POSIX systems
vcprojVC.Net project files

OK, I did -t vcproj --vsnet-version=2010 and svn_private_config.h
problem is gone.

Still cannot build the executable. The first errors in the log are:
4..\..\..\subversion\libsvn_subr\win32_crashrpt.c(706): error C4013:
'time' undefined; assuming extern returning int
4..\..\..\subversion\libsvn_subr\win32_crashrpt.c(707): error C4013:
'strftime' undefined; assuming extern returning int
4..\..\..\subversion\libsvn_subr\win32_crashrpt.c(707): error C4013:
'localtime' undefined; assuming extern returning int

time.h!


Windows build still requires apr-util?

2013-03-10 Thread Sergei Antonov
Hi!
Here is what I get trying to build a Win32 Subversion from the trunk:

===
D:\src\subversionpython.exe gen-make.py -t dsp
BDB not found, BDB fs will not be built

Could not detect Ruby version, assuming 1.8.
  Ruby bindings will be linked with msvcrt-ruby18.lib

Could not detect perl version.
  Perl bindings will be linked with perl56.lib

Could not find installed SWIG, assuming version 1.3.25

Found apr 2.0.0
ERROR: 'apr-util\include\apu_version.h' not found.
Use '--with-apr-util' option to configure APR-Util location.
===

Now that APR-util_has_been_merged_to_APR_trunk what am I supposed to provide???


RE: Windows build still requires apr-util?

2013-03-10 Thread Bert Huijben
Yes, you need apr-util for apr 0.x and 1.x.

In 2.x apr-util might/will be integrated in Apr,so you still need it
but don't have to install it separately.

In the past you also needed apr-iconv, but that is no longer required
(depending on your settings)

Bert From: Sergei Antonov
Sent: 10-3-2013 15:44
To: dev@subversion.apache.org
Subject: Windows build still requires apr-util?
Hi!
Here is what I get trying to build a Win32 Subversion from the trunk:

===
D:\src\subversionpython.exe gen-make.py -t dsp
BDB not found, BDB fs will not be built

Could not detect Ruby version, assuming 1.8.
  Ruby bindings will be linked with msvcrt-ruby18.lib

Could not detect perl version.
  Perl bindings will be linked with perl56.lib

Could not find installed SWIG, assuming version 1.3.25

Found apr 2.0.0
ERROR: 'apr-util\include\apu_version.h' not found.
Use '--with-apr-util' option to configure APR-Util location.
===

Now that APR-util_has_been_merged_to_APR_trunk what am I supposed to provide???


Re: Windows build still requires apr-util?

2013-03-10 Thread Sergei Antonov
Well, I took apr-util-1.5.1-win32-src.zip and dsw/dsp were generated.
Then I opened .dsw in VS 2010, did a conversion, and tried to build.
Nothing except zlib compiles, with a lot of Cannot open include file:
'svn_private_config.h' errors. Did I miss some step that generates
this file?

On 10 March 2013 15:56, Bert Huijben b...@qqmail.nl wrote:
 Yes, you need apr-util for apr 0.x and 1.x.

 In 2.x apr-util might/will be integrated in Apr,so you still need it
 but don't have to install it separately.

 In the past you also needed apr-iconv, but that is no longer required
 (depending on your settings)

 Bert From: Sergei Antonov
 Sent: 10-3-2013 15:44
 To: dev@subversion.apache.org
 Subject: Windows build still requires apr-util?
 Hi!
 Here is what I get trying to build a Win32 Subversion from the trunk:

 ===
 D:\src\subversionpython.exe gen-make.py -t dsp
 BDB not found, BDB fs will not be built

 Could not detect Ruby version, assuming 1.8.
   Ruby bindings will be linked with msvcrt-ruby18.lib

 Could not detect perl version.
   Perl bindings will be linked with perl56.lib

 Could not find installed SWIG, assuming version 1.3.25

 Found apr 2.0.0
 ERROR: 'apr-util\include\apu_version.h' not found.
 Use '--with-apr-util' option to configure APR-Util location.
 ===

 Now that APR-util_has_been_merged_to_APR_trunk what am I supposed to 
 provide???


RE: Windows build still requires apr-util?

2013-03-10 Thread Bert Huijben


 -Original Message-
 From: Sergei Antonov [mailto:sap...@gmail.com]
 Sent: zondag 10 maart 2013 16:39
 To: dev@subversion.apache.org
 Subject: Re: Windows build still requires apr-util?
 
 Well, I took apr-util-1.5.1-win32-src.zip and dsw/dsp were generated.
 Then I opened .dsw in VS 2010, did a conversion, and tried to build.
 Nothing except zlib compiles, with a lot of Cannot open include file:
 'svn_private_config.h' errors. Did I miss some step that generates
 this file?

Why do you create Visual Studio 6.0 projects and upgrade these while Subversion 
can just create VC 2002, 2003, 2005, 2008, 2010 and 2012 projects for you?

I don't think any Subversion developers tests the Visual Studio 6.0 (read: 
1998) projects during regular development. That compiler version is 15 years 
old.

The project should create the file during build using a python script (trunk) 
or from svn_private_config.hw (-1.7.x) during the svn_config project, but as I 
said I don't think it is really tested for that old versions of Visual Studio. 
(Patches welcome as some httpd versions still use that old Visual C++)

Bert



Re: svn commit: r1339262 - in /subversion/trunk: ./ build/generator/ build/win32/ notes/ subversion/svnmucc/ subversion/tests/cmdline/svntest/ tools/client-side/svnmucc/ tools/dev/windows-build/

2012-05-16 Thread Daniel Shahaf
cmpil...@apache.org wrote on Wed, May 16, 2012 at 16:44:47 -:
 Author: cmpilato
 Date: Wed May 16 16:44:47 2012
 New Revision: 1339262
 
 URL: http://svn.apache.org/viewvc?rev=1339262view=rev
 Log:
 Finish issue #3308 (Promote 'svnmucc' tool (or functionality) into a
 fully supported binary).  This change was made using semi-manual
 invocations of 'svn diff' and 'svn patch' from danielsh's
 ^/subversion/branches/svnmucc/ branch (to account for changes made to
 svnmucc.c since the branch was cut).

Thanks!


Re: svn commit: r1339262 - in /subversion/trunk: ./ build/generator/ build/win32/ notes/ subversion/svnmucc/ subversion/tests/cmdline/svntest/ tools/client-side/svnmucc/ tools/dev/windows-build/

2012-05-16 Thread C. Michael Pilato
On 05/16/2012 12:57 PM, Daniel Shahaf wrote:
 cmpil...@apache.org wrote on Wed, May 16, 2012 at 16:44:47 -:
 Author: cmpilato
 Date: Wed May 16 16:44:47 2012
 New Revision: 1339262

 URL: http://svn.apache.org/viewvc?rev=1339262view=rev
 Log:
 Finish issue #3308 (Promote 'svnmucc' tool (or functionality) into a
 fully supported binary).  This change was made using semi-manual
 invocations of 'svn diff' and 'svn patch' from danielsh's
 ^/subversion/branches/svnmucc/ branch (to account for changes made to
 svnmucc.c since the branch was cut).
 
 Thanks!

You did all the hard work -- thank you!

-- 
C. Michael Pilato cmpil...@collab.net
CollabNet  www.collab.net  Enterprise Cloud Development



signature.asc
Description: OpenPGP digital signature


Windows build bot failures

2012-04-13 Thread Stefan Fuhrmann

Hi all,

Both SlikSVN build machines have a stuck fs_test.exe.
It happened after one of my commits but I don't think
it is related (maybe I'm wrong ...)

Could somebody give those servers a little nudge?

-- Stefan^2.


Re: Windows build, nonexistent functions

2011-05-29 Thread Stefan Küng

On 29.05.2011 04:31, Greg Stein wrote:


On May 28, 2011 1:39 PM, Stefan Küng tortoise...@gmail.com
mailto:tortoise...@gmail.com wrote:
 
  On 28.05.2011 19:33, Daniel Shahaf wrote:
 
  Fair enough.
 
  However, we don't have a practice of keeping declarations without
  corresponding definitions.  If that is indeed the case (as opposed to
  definitions which are conditional on preprocessor macros that the
  declaration isn't conditional upon), IMO go ahead and drop the
  declarations.
 
 
  I did a grep search for those functions, and the only files they
showed up were the headers, no other files contained those function
names. So it's not because of preprocessor conditionals.
 
  I'll wait until tomorrow. If there are no objections until then, I'll
commit a change which removes those.

For the conflict_skel functions, please wrap them in #if 0, rather then
deleting them. We are going to use them for 1.8.

The other two... as you wish.


An #if 0 won't help with extractor.py at all. It will still extract the 
functions.


If the functions are needed in 1.8, can't we just add them once they're 
really needed?


Stefan

--
   ___
  oo  // \\  De Chelonian Mobile
 (_,\/ \_/ \ TortoiseSVN
   \ \_/_\_/The coolest Interface to (Sub)Version Control
   /_/   \_\ http://tortoisesvn.net


Re: Windows build, nonexistent functions

2011-05-29 Thread Stefan Küng

On 29.05.2011 09:54, Greg Stein wrote:


On May 29, 2011 2:55 AM, Stefan Küng tortoise...@gmail.com
mailto:tortoise...@gmail.com wrote:
 
  On 29.05.2011 04:31, Greg Stein wrote:
  On May 28, 2011 1:39 PM, Stefan Küng tortoise...@gmail.com
mailto:tortoise...@gmail.com
  mailto:tortoise...@gmail.com mailto:tortoise...@gmail.com wrote:
 ...
  
   I did a grep search for those functions, and the only files they
  showed up were the headers, no other files contained those function
  names. So it's not because of preprocessor conditionals.
  
   I'll wait until tomorrow. If there are no objections until then, I'll
  commit a change which removes those.
 
  For the conflict_skel functions, please wrap them in #if 0, rather then
  deleting them. We are going to use them for 1.8.
 
  The other two... as you wish.
 
 
  An #if 0 won't help with extractor.py at all. It will still extract
the functions.

Eep. Good point.

 
  If the functions are needed in 1.8, can't we just add them once
they're really needed?

Sure. My concern was just getting them back when needed. I guess we can
just rely on 'svn log' and track down the right revision.


I've adjusted the TSVN build to remove those functions from the 
extractor.py output. So it's not a big deal for me.
But I'm still wondering whether the Windows build for the svn client 
works. Can anyone here try it?
If it works, those functions could stay there so you don't have to track 
them down again once you need them.


Stefan


--
   ___
  oo  // \\  De Chelonian Mobile
 (_,\/ \_/ \ TortoiseSVN
   \ \_/_\_/The coolest Interface to (Sub)Version Control
   /_/   \_\ http://tortoisesvn.net


Re: Windows build, nonexistent functions

2011-05-29 Thread Daniel Shahaf
Stefan Küng wrote on Sun, May 29, 2011 at 10:03:01 +0200:
 But I'm still wondering whether the Windows build for the svn client
 works. Can anyone here try it?

The build works every day for N windows-based devs and 2 windows
buildbots.  If you're going to ask Does the Windows build work,
I suggest that you consider asking a more specific/focused question
instead.

 If it works, those functions could stay there so you don't have to
 track them down again once you need them.


RE: Windows build, nonexistent functions

2011-05-29 Thread Bert Huijben


 -Original Message-
 From: Stefan Küng [mailto:tortoise...@gmail.com]
 Sent: zondag 29 mei 2011 10:03
 To: Greg Stein
 Cc: Subversion Development; Daniel Shahaf
 Subject: Re: Windows build, nonexistent functions
 
 On 29.05.2011 09:54, Greg Stein wrote:
 
  On May 29, 2011 2:55 AM, Stefan Küng tortoise...@gmail.com
  mailto:tortoise...@gmail.com wrote:
   
On 29.05.2011 04:31, Greg Stein wrote:
On May 28, 2011 1:39 PM, Stefan Küng tortoise...@gmail.com
  mailto:tortoise...@gmail.com
mailto:tortoise...@gmail.com mailto:tortoise...@gmail.com
 wrote:
   ...

 I did a grep search for those functions, and the only files they
showed up were the headers, no other files contained those function
names. So it's not because of preprocessor conditionals.

 I'll wait until tomorrow. If there are no objections until then,
I'll
commit a change which removes those.
   
For the conflict_skel functions, please wrap them in #if 0, rather
then
deleting them. We are going to use them for 1.8.
   
The other two... as you wish.
   
   
An #if 0 won't help with extractor.py at all. It will still extract
  the functions.
 
  Eep. Good point.
 
   
If the functions are needed in 1.8, can't we just add them once
  they're really needed?
 
  Sure. My concern was just getting them back when needed. I guess we can
  just rely on 'svn log' and track down the right revision.
 
 I've adjusted the TSVN build to remove those functions from the
 extractor.py output. So it's not a big deal for me.
 But I'm still wondering whether the Windows build for the svn client
 works. Can anyone here try it?
 If it works, those functions could stay there so you don't have to track
 them down again once you need them.

We only call extractor.py on the header files referenced in 'msvc-export ='
lines of build.conf. 

All the functions referenced in this mail thread are library private on a
normal Windows build.

The Windows-RA buildbot uses a shared library build, so its build would have
been broken for more than a year, if this would have been a problem.

Are you seeing this problem in a custom build? ;)

Beer



Windows build, nonexistent functions

2011-05-28 Thread Stefan Küng

Hi,

While trying to change the svn build with the scripts I use in TSVN I 
discovered that there are several functions mentioned in header files 
that don't exist anywhere else, i.e. the functions are not implemented 
in any c files. They only exist in the headers.


I haven't tried this, but my guess is that with this the official svn 
build for Windows can't work:
the extractor.py script extracts these functions, puts them in the *.def 
file. And then the linker will complain with an LNK2001 error because 
there simply isn't a function to export.


But of course I could be wrong since nobody else noticed this before.

The functions which don't have an implementation:
svn_ra_neon__abort_commit
svn_ra_serf__get_youngest_rev
svn_wc__conflict_skel_add_obstruction
svn_wc__conflict_skel_add_reject_conflict
svn_wc__conflict_skel_add_text_conflict
svn_wc__conflict_skel_add_tree_conflict
svn_wc__conflict_skel_set_op_merge
svn_wc__conflict_skel_set_op_patch
svn_wc__conflict_skel_set_op_switch
svn_wc__conflict_skel_set_op_update

Anyway, even if the build succeeds, I think having such functions 
mentioned in the header but not implemented is not good.


Stefan

--
   ___
  oo  // \\  De Chelonian Mobile
 (_,\/ \_/ \ TortoiseSVN
   \ \_/_\_/The coolest Interface to (Sub)Version Control
   /_/   \_\ http://tortoisesvn.net


Re: Windows build, nonexistent functions

2011-05-28 Thread Stefan Küng

On 28.05.2011 19:33, Daniel Shahaf wrote:

Stefan Küng wrote on Sat, May 28, 2011 at 19:05:34 +0200:

On 28.05.2011 19:03, Daniel Shahaf wrote:

Stefan Küng wrote on Sat, May 28, 2011 at 15:43:58 +0200:

I think having such functions mentioned in the header but not
implemented is not good.


Why are you telling us that?  You have commit access.


I don't want to break something. Maybe those will get implemented soon?



Fair enough.

However, we don't have a practice of keeping declarations without
corresponding definitions.  If that is indeed the case (as opposed to
definitions which are conditional on preprocessor macros that the
declaration isn't conditional upon), IMO go ahead and drop the
declarations.


I did a grep search for those functions, and the only files they showed 
up were the headers, no other files contained those function names. So 
it's not because of preprocessor conditionals.


I'll wait until tomorrow. If there are no objections until then, I'll 
commit a change which removes those.


Stefan

--
   ___
  oo  // \\  De Chelonian Mobile
 (_,\/ \_/ \ TortoiseSVN
   \ \_/_\_/The coolest Interface to (Sub)Version Control
   /_/   \_\ http://tortoisesvn.net


Re: Windows build, nonexistent functions

2011-05-28 Thread Greg Stein
On May 28, 2011 1:39 PM, Stefan Küng tortoise...@gmail.com wrote:

 On 28.05.2011 19:33, Daniel Shahaf wrote:

 Fair enough.

 However, we don't have a practice of keeping declarations without
 corresponding definitions.  If that is indeed the case (as opposed to
 definitions which are conditional on preprocessor macros that the
 declaration isn't conditional upon), IMO go ahead and drop the
 declarations.


 I did a grep search for those functions, and the only files they showed up
were the headers, no other files contained those function names. So it's not
because of preprocessor conditionals.

 I'll wait until tomorrow. If there are no objections until then, I'll
commit a change which removes those.

For the conflict_skel functions, please wrap them in #if 0, rather then
deleting them. We are going to use them for 1.8.

The other two... as you wish.

Thanks,
-g


Re: [patch] Fix windows build

2010-03-20 Thread Stefan Sperling
On Sat, Mar 20, 2010 at 05:52:46PM -0700, Joe Swatosh wrote:
 [[[
 Follow on to r924760 which removed svn_diff_private.h.  Remove
 svn_diff_private.h
 as a source of exported functions in the windows build.
 ]]]

+1 to commit (and sorry for breaking the windows build)

Stefan

 
 Index: build.conf
 ===
 --- build.conf  (revision 925708)
 +++ build.conf  (working copy)
 @@ -224,7 +224,7 @@
  path = subversion/libsvn_diff
  libs = libsvn_subr apriconv apr
  install = lib
 -msvc-export = svn_diff.h private/svn_diff_private.h
 +msvc-export = svn_diff.h
 
  # The repository filesystem library
  [libsvn_fs]


Re: [patch] Fix windows build

2010-03-20 Thread Joe Swatosh
On Sat, Mar 20, 2010 at 6:03 PM, Stefan Sperling s...@elego.de wrote:
 On Sat, Mar 20, 2010 at 05:52:46PM -0700, Joe Swatosh wrote:
 [[[
 Follow on to r924760 which removed svn_diff_private.h.  Remove
 svn_diff_private.h
 as a source of exported functions in the windows build.
 ]]]

 +1 to commit (and sorry for breaking the windows build)

 Stefan

No worries.  It happens. r925713

Thanks,
--
Joe