Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix "Permission denied" problem in svnadmin.exe #58

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

dscho
Copy link
Member

@dscho dscho commented Aug 23, 2022

I had not run the Subversion tests in quite a while and was surprised that they all failed. A closer look revealed that they failed already in the part where the Subversion repository is set up, because of a bug in svnadmin.exe.

This PR is intended to fix that issue.

This patch may have "fixed" the build at some stage when it failed with this symptom:

	[...]
	cd subversion/tests && /bin/sh "/usr/src/MSYS2-packages/subversion/src/subversion-1.14.2/libtool" --tag=CC --silent --mode=link gcc -shared  -march=x86-64 -mtune=generic -O2 -pipe   -march=x86-64 -mtune=generic -O2 -pipe  -pipe     -rpath /usr/lib -version-info 0  -o libsvn_test-1.la  svn_test_fs.lo svn_test_main.lo ../../subversion/libsvn_repos/libsvn_repos-1.la ../../subversion/libsvn_fs/libsvn_fs-1.la ../../subversion/libsvn_delta/libsvn_delta-1.la ../../subversion/libsvn_subr/libsvn_subr-1.la -laprutil-1 -lapr-1 -lintl
	libtool:   error: can't build x86_64-pc-msys shared library unless -no-undefined is specified                           make: *** [build-outputs.mk:794: subversion/tests/libsvn_test-1.la] Error 1

However, some tests expect to be located in the original location. For
example, `checksum-test.exe` needs to find `zlib.deflated`, but that is
not in `subversion/tests/`, it is in `subversion/tests/libsvn_subr/`.
Hence the `.exe` needs to live there, too.

Let's put in a hack that lets that library build _and_ the tests to
pass.

Signed-off-by: Johannes Schindelin <[email protected]>
It is a more consistent format and makes it easier to modify the patches
in the future.

Signed-off-by: Johannes Schindelin <[email protected]>
Previously, it simply would not work, erroring out with a bogus
"Permission denied" in the middle of creating a repository.

Signed-off-by: Johannes Schindelin <[email protected]>
It really does not fill anyone with confidence if the checks are skipped
while building a central package...

Signed-off-by: Johannes Schindelin <[email protected]>
We cherry-picked a newer definition from upstream MSYS2, which lives in
`.ci/`. Unfortunately, we forgot to remove the obsolete definition in
the old location and therefore had near duplicates.

This hurt a lot because it caused an unnecessary day of digging and
pulling hair to find out why the CI changes did not take effect
(narrator's voice: it helps to edit the correct file).

Signed-off-by: Johannes Schindelin <[email protected]>
We do not want any regressions to slip through.

Signed-off-by: Johannes Schindelin <[email protected]>
@rimrul
Copy link
Member

rimrul commented Nov 29, 2023

Is this the same permission denied problem in svnadmin as msys2#3258 ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants