Re: FW: Error running make for subversion

2017-06-13 Thread Daniel Shahaf
Joseph, Anselm wrote on Wed, 14 Jun 2017 01:30 +:
> Hello all,
> For linking to shared libraries, is "libstdc++.so" required in gcc. 

Both svn and httpd are written in C, not in C++.  I would expect C++
stdlibs to not be required for C projects. (but perhaps on your system
svn gets compiled as C++ code, for some reason)

> My install path only shows :
> ~:/opt/freeware/lib/gcc/powerpc-ibm-aix6.1.0.0/4.8.3 -->
> $ ls
> include  libstdc++.a  libstdc++.a-gdb.py  ppc64  pthread
> just the static library. 
> Could this be why mod_dav_svn.so cannot be built?

If this is the problem, it would affect all httpd modules, not just
mod_*_svn.  Are you able to compile, link, and load (with LoadModule)
a Hello World httpd module in your environment?

Cheers,

Daniel


RE: FW: Error running make for subversion

2017-06-13 Thread Joseph, Anselm
Hello all,
For linking to shared libraries, is "libstdc++.so" required in gcc. 
My install path only shows :
~:/opt/freeware/lib/gcc/powerpc-ibm-aix6.1.0.0/4.8.3 -->
$ ls
include  libstdc++.a  libstdc++.a-gdb.py  ppc64  pthread
just the static library. 
Could this be why mod_dav_svn.so cannot be built?
Thanks,
Anselm

-Original Message-
From: Philip Martin [mailto:phi...@codematters.co.uk] 
Sent: Thursday, June 08, 2017 8:23 PM
To: Joseph, Anselm
Cc: Philip Martin; users@subversion.apache.org; Daniel Shahaf
Subject: Re: FW: Error running make for subversion

CAUTION - EXTERNAL EMAIL



"Joseph, Anselm"  writes:

> FYI,
> I upgraded to httpd-2.4.25, but still getting the same error.
> Are your other Apache modules .so or .a? All .so under 
> ../httpd-2.4.25/apache/modules
>
> There are older versions of mod_authz_svn.so mod_dav_svn.so from a 
> previous/older subversion install in the system (separate directory). 
> I am tempted to copy them into the directory and give it a try.
> Thank you for the suggestions.

Here is an old email that suggests which linker flags are needed to create .so, 
rather than .a, shared libraries:

https://gcc.gnu.org/ml/gcc-help/2002-05/msg00065.html

Perhaps edit your Makefile and add -Wl,-G to the end of the LINK_APACHE_MOD 
line.

--
Philip



svn status merges intersected external records into single row

2017-06-13 Thread Andrey

Here is the batch script for the windows:

```
@echo off

set REPODIR=test_repo
set "REPOROOT=%~dp0%REPODIR%"
set "REPOURL=file:///%REPOROOT:\=/%"
set WCROOT=%REPODIR%_root

if exist "%REPOROOT%\" rmdir /S /Q "%REPOROOT%"
if exist "%WCROOT%\" rmdir /S /Q "%WCROOT%"

mkdir "%REPOROOT%"
svnadmin create "%REPOROOT%"
mkdir "%WCROOT%"

svn co "%REPOURL%" "%WCROOT%"

rem creating tree w/o externals
mkdir "%WCROOT%/dir1/dir1_subdir1" || goto :EOF
mkdir "%WCROOT%/dir1/dir1_subdir2" || goto :EOF
mkdir "%WCROOT%/dir2/dir2_subdir1" || goto :EOF
mkdir "%WCROOT%/dir2/dir2_subdir2" || goto :EOF

svn add "%WCROOT%/*.*" || goto :EOF

svn ci "%WCROOT%" -m "rev1" || goto :EOF

rem update to the head
svn up "%WCROOT%" || goto :EOF

rem creating externals
type nul > "$externals.txt"

(
  echo.^^/dir1/dir1_subdir1 ext/dir1_subdir1
  echo.^^/dir1/dir1_subdir2 ext/dir1_subdir2
  echo.^^/dir2/dir2_subdir1 dir2_subdir1
  echo.^^/dir2/dir2_subdir2 dir2_subdir2
) >> "$externals.txt"

svn pset svn:externals -F "$externals.txt" "%WCROOT%" || goto :EOF

svn ci "%WCROOT%" -m "rev2" || goto :EOF

rem update to the head
svn up "%WCROOT%" || goto :EOF

rem show status
svn status "%WCROOT%"
```

The output:

```
Checked out revision 0.
svn: Skipping argument: E200025: 'test_repo_root/.svn' ends in a reserved  
name

A test_repo_root\dir1
A test_repo_root\dir1\dir1_subdir1
A test_repo_root\dir1\dir1_subdir2
A test_repo_root\dir2
A test_repo_root\dir2\dir2_subdir1
A test_repo_root\dir2\dir2_subdir2
Adding test_repo_root\dir1
Adding test_repo_root\dir1\dir1_subdir1
Adding test_repo_root\dir1\dir1_subdir2
Adding test_repo_root\dir2
Adding test_repo_root\dir2\dir2_subdir1
Adding test_repo_root\dir2\dir2_subdir2
Committing transaction...
Committed revision 1.
Updating 'test_repo_root':
At revision 1.
property 'svn:externals' set on 'test_repo_root'
Sendingtest_repo_root
Committing transaction...
Committed revision 2.
Updating 'test_repo_root':

Fetching external item into 'test_repo_root\ext\dir1_subdir1':
External at revision 2.


Fetching external item into 'test_repo_root\ext\dir1_subdir2':
External at revision 2.


Fetching external item into 'test_repo_root\dir2_subdir1':
External at revision 2.


Fetching external item into 'test_repo_root\dir2_subdir2':
External at revision 2.

At revision 2.
X   test_repo_root\dir2_subdir1
X   test_repo_root\dir2_subdir2
X   test_repo_root\ext

Performing status on external item at 'test_repo_root\dir2_subdir1':

Performing status on external item at 'test_repo_root\dir2_subdir2':

Performing status on external item at 'test_repo_root\ext\dir1_subdir1':

Performing status on external item at 'test_repo_root\ext\dir1_subdir2':
```

The externals list is:

```
X   test_repo_root\dir2_subdir1
X   test_repo_root\dir2_subdir2
X   test_repo_root\ext
```

instead of:

```
X   test_repo_root\dir2_subdir1
X   test_repo_root\dir2_subdir2
X   test_repo_root\ext\dir1_subdir1
X   test_repo_root\ext\dir1_subdir2
```

This forces to use `svn pget svn:externals` + `a parser` instead of `svn  
status` + `a filter` in scripting to extract the records set.