You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by tr...@apache.org on 2019/01/06 00:42:27 UTC
svn commit: r1850519 - in /subversion/branches/swig-py3: Makefile.in
build/ac-macros/swig.m4 build/generator/gen_make.py
build/generator/templates/build-outputs.mk.ezt
Author: troycurtisjr
Date: Sun Jan 6 00:42:27 2019
New Revision: 1850519
URL: http://svn.apache.org/viewvc?rev=1850519&view=rev
Log:
On branch swig-py3: Improve error messages for swig language builds.
* Makefile.in
(SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): New
* build/ac-macros/swig.m4
(SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): Set a meaningful error
message if the language binding is not configured for any reason, and clear
the error message if the configuration is successful.
* build/generator/gen_make.py
(Generator.write): Add 'name' and 'short_upper' to the ezt template data for
each swig language option.
* build/generator/templates/build-outputs.mk.ezt
(.swig_py_checked, .swig_pl_checked, .swig_rb_checked): New make targets.
(autogen-swig-py, autogen-swig-pl, autogen-swig-rb, swig-py, swig-pl, swig-rb):
Add corresponding swig_<lang>_checked dependency to top-level swig building
targets.
Modified:
subversion/branches/swig-py3/Makefile.in
subversion/branches/swig-py3/build/ac-macros/swig.m4
subversion/branches/swig-py3/build/generator/gen_make.py
subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt
Modified: subversion/branches/swig-py3/Makefile.in
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/Makefile.in?rev=1850519&r1=1850518&r2=1850519&view=diff
==============================================================================
--- subversion/branches/swig-py3/Makefile.in (original)
+++ subversion/branches/swig-py3/Makefile.in Sun Jan 6 00:42:27 2019
@@ -150,7 +150,9 @@ SWIG_PY_INCLUDES = @SWIG_PY_INCLUDES@ @S
SWIG_PY_COMPILE = @SWIG_PY_COMPILE@
SWIG_PY_LINK = @SWIG_PY_LINK@
SWIG_PY_LIBS = @SWIG_PY_LIBS@
+SWIG_PY_ERRMSG = @SWIG_PY_ERRMSG@
SWIG_PL_INCLUDES = @SWIG_PL_INCLUDES@
+SWIG_PL_ERRMSG = @SWIG_PL_ERRMSG@
SWIG_RB_INCLUDES = @SWIG_RB_INCLUDES@ -I$(SWIG_SRC_DIR)/ruby/libsvn_swig_ruby
SWIG_RB_COMPILE = @SWIG_RB_COMPILE@
SWIG_RB_LINK = @SWIG_RB_LINK@
@@ -159,6 +161,7 @@ SWIG_RB_SITE_LIB_DIR = @SWIG_RB_SITE_LIB
SWIG_RB_SITE_ARCH_DIR = @SWIG_RB_SITE_ARCH_DIR@
SWIG_RB_TEST_VERBOSE = @SWIG_RB_TEST_VERBOSE@
SWIG_RB_RI_DATADIR = $(DESTDIR)$(datadir)/ri/$(RUBY_MAJOR).$(RUBY_MINOR)/site
+SWIG_RB_ERRMSG = @SWIG_RB_ERRMSG@
CTYPESGEN = @CTYPESGEN@
CTYPES_PYTHON_SRC_DIR = $(abs_srcdir)/subversion/bindings/ctypes-python
Modified: subversion/branches/swig-py3/build/ac-macros/swig.m4
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/build/ac-macros/swig.m4?rev=1850519&r1=1850518&r2=1850519&view=diff
==============================================================================
--- subversion/branches/swig-py3/build/ac-macros/swig.m4 (original)
+++ subversion/branches/swig-py3/build/ac-macros/swig.m4 Sun Jan 6 00:42:27 2019
@@ -103,6 +103,7 @@ AC_DEFUN(SVN_FIND_SWIG,
SWIG_PY_COMPILE="none"
SWIG_PY_LINK="none"
SWIG_PY_OPTS="none"
+ SWIG_PY_ERRMSG="check config.log for details"
if test "$PYTHON" != "none"; then
AC_MSG_NOTICE([Configuring python swig binding])
@@ -112,6 +113,7 @@ AC_DEFUN(SVN_FIND_SWIG,
SWIG_PY_INCLUDES="\$(SWIG_INCLUDES) $ac_cv_python_includes"
if test "$ac_cv_python_includes" = "none"; then
+ SWIG_PY_ERRMSG="no distutils found"
AC_MSG_WARN([python bindings cannot be built without distutils module])
else
@@ -125,11 +127,13 @@ AC_DEFUN(SVN_FIND_SWIG,
CPPFLAGS="$save_cppflags"
if test "$python_header_found" = "no"; then
+ SWIG_PY_ERRMSG="no Python.h found"
AC_MSG_WARN([Python.h not found; disabling python swig bindings])
else
SVN_PY3C()
if test "$py3c_found" = "no"; then
+ SWIG_PY_ERRMSG="py3c library not found"
AC_MSG_WARN([py3c library not found; disabling python swig bindings])
else
AC_CACHE_CHECK([for compiling Python extensions], [ac_cv_python_compile],[
@@ -193,6 +197,9 @@ AC_DEFUN(SVN_FIND_SWIG,
["$svn_cv_pycfmt_apr_int64_t"],
[Define to the Python/C API format character suitable]
[ for apr_int64_t])
+
+ dnl SWIG Python bindings successfully configured, clear the error message
+ SWIG_PY_ERRMSG=""
fi
fi
@@ -200,6 +207,7 @@ AC_DEFUN(SVN_FIND_SWIG,
fi
+ SWIG_PL_ERRMSG="check config.log for details"
if test "$PERL" != "none"; then
AC_MSG_CHECKING([perl version])
dnl Note that the q() bit is there to avoid unbalanced brackets
@@ -210,6 +218,9 @@ AC_DEFUN(SVN_FIND_SWIG,
SWIG_PL_INCLUDES="\$(SWIG_INCLUDES) `$PERL -MExtUtils::Embed -e ccopts`"
SWIG_PL_LINK="`$PERL -MExtUtils::Embed -e ldopts`"
SWIG_PL_LINK="`SVN_REMOVE_STANDARD_LIB_DIRS($SWIG_PL_LINK)`"
+
+ dnl SWIG Perl bindings successfully configured, clear the error message
+ SWIG_PL_ERRMSG=""
else
AC_MSG_WARN([perl bindings require perl 5.8.0 or newer.])
fi
@@ -217,6 +228,7 @@ AC_DEFUN(SVN_FIND_SWIG,
SWIG_RB_COMPILE="none"
SWIG_RB_LINK="none"
+ SWIG_RB_ERRMSG="check config.log for details"
if test "$RUBY" != "none"; then
if test x"$SWIG_VERSION" = x"3""00""008"; then
# Use a local variable to escape the '#' sign.
@@ -334,6 +346,9 @@ int main()
[svn_ruby_test_verbose="$svn_cv_ruby_test_verbose"])
SWIG_RB_TEST_VERBOSE="$svn_ruby_test_verbose"
AC_MSG_RESULT([$SWIG_RB_TEST_VERBOSE])
+
+ dnl SWIG Ruby bindings successfully configured, clear the error message
+ SWIG_RB_ERRMSG=""
fi
AC_SUBST(SWIG)
AC_SUBST(SWIG_PY_INCLUDES)
@@ -341,8 +356,10 @@ int main()
AC_SUBST(SWIG_PY_LINK)
AC_SUBST(SWIG_PY_LIBS)
AC_SUBST(SWIG_PY_OPTS)
+ AC_SUBST(SWIG_PY_ERRMSG)
AC_SUBST(SWIG_PL_INCLUDES)
AC_SUBST(SWIG_PL_LINK)
+ AC_SUBST(SWIG_PL_ERRMSG)
AC_SUBST(SWIG_RB_LINK)
AC_SUBST(SWIG_RB_LIBS)
AC_SUBST(SWIG_RB_INCLUDES)
@@ -350,4 +367,5 @@ int main()
AC_SUBST(SWIG_RB_SITE_LIB_DIR)
AC_SUBST(SWIG_RB_SITE_ARCH_DIR)
AC_SUBST(SWIG_RB_TEST_VERBOSE)
+ AC_SUBST(SWIG_RB_ERRMSG)
])
Modified: subversion/branches/swig-py3/build/generator/gen_make.py
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/build/generator/gen_make.py?rev=1850519&r1=1850518&r2=1850519&view=diff
==============================================================================
--- subversion/branches/swig-py3/build/generator/gen_make.py (original)
+++ subversion/branches/swig-py3/build/generator/gen_make.py Sun Jan 6 00:42:27 2019
@@ -208,7 +208,9 @@ class Generator(gen_base.GeneratorBase):
swig_lang_deps[objname.lang].append(str(objname))
for lang in self.swig.langs:
- data.swig_langs.append(_eztdata(short=self.swig.short[lang],
+ data.swig_langs.append(_eztdata(name=lang,
+ short=self.swig.short[lang],
+ short_upper=self.swig.short[lang].upper(),
deps=swig_lang_deps[lang]))
########################################
Modified: subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt?rev=1850519&r1=1850518&r2=1850519&view=diff
==============================================================================
--- subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt (original)
+++ subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt Sun Jan 6 00:42:27 2019
@@ -70,8 +70,18 @@ RELEASE_MODE = 1
# Section 3: SWIG autogen rules
########################################
[for swig_langs]
-autogen-swig-[swig_langs.short]:[for swig_langs.deps] [swig_langs.deps][end]
+.swig_[swig_langs.short]_checked:
+ @if [ -n "$(SWIG_[swig_langs.short_upper]_ERRMSG)" ]; then \
+ echo "SWIG [swig_langs.name] disabled at configure time: $(SWIG_[swig_langs.short_upper]_ERRMSG)" >&2; \
+ exit 1; \
+ fi
+ @touch $@
+
+autogen-swig-[swig_langs.short]: .swig_[swig_langs.short]_checked [for swig_langs.deps] [swig_langs.deps][end]
autogen-swig: autogen-swig-[swig_langs.short]
+
+# Ensure the swig build targets depend on the configuration check
+swig-[swig_langs.short]: .swig_[swig_langs.short]_checked
[end]
Re: svn commit: r1850519 - in /subversion/branches/swig-py3:
Makefile.in build/ac-macros/swig.m4 build/generator/gen_make.py build/generator/templates/build-outputs.mk.ezt
Posted by Troy Curtis Jr <tr...@gmail.com>.
On Sun, Jan 6, 2019 at 11:09 AM Daniel Shahaf <d....@daniel.shahaf.name>
wrote:
> troycurtisjr@apache.org wrote on Sun, Jan 06, 2019 at 00:42:27 -0000:
> > Author: troycurtisjr
> > Date: Sun Jan 6 00:42:27 2019
> > New Revision: 1850519
> >
> > URL: http://svn.apache.org/viewvc?rev=1850519&view=rev
> > Log:
> > On branch swig-py3: Improve error messages for swig language builds.
> >
> > * Makefile.in
> > (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): New
> >
> > * build/ac-macros/swig.m4
> > (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): Set a meaningful
> error
> > message if the language binding is not configured for any reason,
> and clear
> > the error message if the configuration is successful.
> >
> > * build/generator/gen_make.py
> > (Generator.write): Add 'name' and 'short_upper' to the ezt template
> data for
> > each swig language option.
> >
> > * build/generator/templates/build-outputs.mk.ezt
> > (.swig_py_checked, .swig_pl_checked, .swig_rb_checked): New make
> targets.
> > (autogen-swig-py, autogen-swig-pl, autogen-swig-rb, swig-py, swig-pl,
> swig-rb):
> > Add corresponding swig_<lang>_checked dependency to top-level swig
> building
> > targets.
>
> Thanks!
>
> Don't you need to rm these .swig_*_checked files somewhere? Compare:
> .
> % grep -Rn swig_checked | me
> autogen.sh:181: # Remove the .swig_checked file
> autogen.sh:182: rm -f .swig_checked
> configure.ac:1644:rm -f .swig_checked
> %
>
Ah yes, good catch! I'll get that added in.
> Cheers,
>
> Daniel
>
> > +++
> subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt
> Sun Jan 6 00:42:27 2019
> > @@ -70,8 +70,18 @@ RELEASE_MODE = 1
> > # Section 3: SWIG autogen rules
> > ########################################
> > [for swig_langs]
> > -autogen-swig-[swig_langs.short]:[for swig_langs.deps]
> [swig_langs.deps][end]
> > +.swig_[swig_langs.short]_checked:
> > + @if [ -n "$(SWIG_[swig_langs.short_upper]_ERRMSG)" ]; then \
> > + echo "SWIG [swig_langs.name] disabled at configure time:
> $(SWIG_[swig_langs.short_upper]_ERRMSG)" >&2; \
> > + exit 1; \
> > + fi
> > + @touch $@
> > +
> > +autogen-swig-[swig_langs.short]: .swig_[swig_langs.short]_checked [for
> swig_langs.deps] [swig_langs.deps][end]
> > autogen-swig: autogen-swig-[swig_langs.short]
> > +
> > +# Ensure the swig build targets depend on the configuration check
> > +swig-[swig_langs.short]: .swig_[swig_langs.short]_checked
> > [end]
>
Re: svn commit: r1850519 - in /subversion/branches/swig-py3:
Makefile.in build/ac-macros/swig.m4 build/generator/gen_make.py build/generator/templates/build-outputs.mk.ezt
Posted by Troy Curtis Jr <tr...@gmail.com>.
On Sun, Jan 6, 2019 at 11:09 AM Daniel Shahaf <d....@daniel.shahaf.name>
wrote:
> troycurtisjr@apache.org wrote on Sun, Jan 06, 2019 at 00:42:27 -0000:
> > Author: troycurtisjr
> > Date: Sun Jan 6 00:42:27 2019
> > New Revision: 1850519
> >
> > URL: http://svn.apache.org/viewvc?rev=1850519&view=rev
> > Log:
> > On branch swig-py3: Improve error messages for swig language builds.
> >
> > * Makefile.in
> > (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): New
> >
> > * build/ac-macros/swig.m4
> > (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): Set a meaningful
> error
> > message if the language binding is not configured for any reason,
> and clear
> > the error message if the configuration is successful.
> >
> > * build/generator/gen_make.py
> > (Generator.write): Add 'name' and 'short_upper' to the ezt template
> data for
> > each swig language option.
> >
> > * build/generator/templates/build-outputs.mk.ezt
> > (.swig_py_checked, .swig_pl_checked, .swig_rb_checked): New make
> targets.
> > (autogen-swig-py, autogen-swig-pl, autogen-swig-rb, swig-py, swig-pl,
> swig-rb):
> > Add corresponding swig_<lang>_checked dependency to top-level swig
> building
> > targets.
>
> Thanks!
>
> Don't you need to rm these .swig_*_checked files somewhere? Compare:
> .
> % grep -Rn swig_checked | me
> autogen.sh:181: # Remove the .swig_checked file
> autogen.sh:182: rm -f .swig_checked
> configure.ac:1644:rm -f .swig_checked
> %
>
Ah yes, good catch! I'll get that added in.
> Cheers,
>
> Daniel
>
> > +++
> subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt
> Sun Jan 6 00:42:27 2019
> > @@ -70,8 +70,18 @@ RELEASE_MODE = 1
> > # Section 3: SWIG autogen rules
> > ########################################
> > [for swig_langs]
> > -autogen-swig-[swig_langs.short]:[for swig_langs.deps]
> [swig_langs.deps][end]
> > +.swig_[swig_langs.short]_checked:
> > + @if [ -n "$(SWIG_[swig_langs.short_upper]_ERRMSG)" ]; then \
> > + echo "SWIG [swig_langs.name] disabled at configure time:
> $(SWIG_[swig_langs.short_upper]_ERRMSG)" >&2; \
> > + exit 1; \
> > + fi
> > + @touch $@
> > +
> > +autogen-swig-[swig_langs.short]: .swig_[swig_langs.short]_checked [for
> swig_langs.deps] [swig_langs.deps][end]
> > autogen-swig: autogen-swig-[swig_langs.short]
> > +
> > +# Ensure the swig build targets depend on the configuration check
> > +swig-[swig_langs.short]: .swig_[swig_langs.short]_checked
> > [end]
>
Re: svn commit: r1850519 - in /subversion/branches/swig-py3:
Makefile.in build/ac-macros/swig.m4 build/generator/gen_make.py
build/generator/templates/build-outputs.mk.ezt
Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
troycurtisjr@apache.org wrote on Sun, Jan 06, 2019 at 00:42:27 -0000:
> Author: troycurtisjr
> Date: Sun Jan 6 00:42:27 2019
> New Revision: 1850519
>
> URL: http://svn.apache.org/viewvc?rev=1850519&view=rev
> Log:
> On branch swig-py3: Improve error messages for swig language builds.
>
> * Makefile.in
> (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): New
>
> * build/ac-macros/swig.m4
> (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): Set a meaningful error
> message if the language binding is not configured for any reason, and clear
> the error message if the configuration is successful.
>
> * build/generator/gen_make.py
> (Generator.write): Add 'name' and 'short_upper' to the ezt template data for
> each swig language option.
>
> * build/generator/templates/build-outputs.mk.ezt
> (.swig_py_checked, .swig_pl_checked, .swig_rb_checked): New make targets.
> (autogen-swig-py, autogen-swig-pl, autogen-swig-rb, swig-py, swig-pl, swig-rb):
> Add corresponding swig_<lang>_checked dependency to top-level swig building
> targets.
Thanks!
Don't you need to rm these .swig_*_checked files somewhere? Compare:
.
% grep -Rn swig_checked | me
autogen.sh:181: # Remove the .swig_checked file
autogen.sh:182: rm -f .swig_checked
configure.ac:1644:rm -f .swig_checked
%
Cheers,
Daniel
> +++ subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt Sun Jan 6 00:42:27 2019
> @@ -70,8 +70,18 @@ RELEASE_MODE = 1
> # Section 3: SWIG autogen rules
> ########################################
> [for swig_langs]
> -autogen-swig-[swig_langs.short]:[for swig_langs.deps] [swig_langs.deps][end]
> +.swig_[swig_langs.short]_checked:
> + @if [ -n "$(SWIG_[swig_langs.short_upper]_ERRMSG)" ]; then \
> + echo "SWIG [swig_langs.name] disabled at configure time: $(SWIG_[swig_langs.short_upper]_ERRMSG)" >&2; \
> + exit 1; \
> + fi
> + @touch $@
> +
> +autogen-swig-[swig_langs.short]: .swig_[swig_langs.short]_checked [for swig_langs.deps] [swig_langs.deps][end]
> autogen-swig: autogen-swig-[swig_langs.short]
> +
> +# Ensure the swig build targets depend on the configuration check
> +swig-[swig_langs.short]: .swig_[swig_langs.short]_checked
> [end]
Re: svn commit: r1850519 - in /subversion/branches/swig-py3:
Makefile.in build/ac-macros/swig.m4 build/generator/gen_make.py
build/generator/templates/build-outputs.mk.ezt
Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
troycurtisjr@apache.org wrote on Sun, Jan 06, 2019 at 00:42:27 -0000:
> Author: troycurtisjr
> Date: Sun Jan 6 00:42:27 2019
> New Revision: 1850519
>
> URL: http://svn.apache.org/viewvc?rev=1850519&view=rev
> Log:
> On branch swig-py3: Improve error messages for swig language builds.
>
> * Makefile.in
> (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): New
>
> * build/ac-macros/swig.m4
> (SWIG_PY_ERRMSG, SWIG_PL_ERRMSG, SWIG_RB_ERRMSG): Set a meaningful error
> message if the language binding is not configured for any reason, and clear
> the error message if the configuration is successful.
>
> * build/generator/gen_make.py
> (Generator.write): Add 'name' and 'short_upper' to the ezt template data for
> each swig language option.
>
> * build/generator/templates/build-outputs.mk.ezt
> (.swig_py_checked, .swig_pl_checked, .swig_rb_checked): New make targets.
> (autogen-swig-py, autogen-swig-pl, autogen-swig-rb, swig-py, swig-pl, swig-rb):
> Add corresponding swig_<lang>_checked dependency to top-level swig building
> targets.
Thanks!
Don't you need to rm these .swig_*_checked files somewhere? Compare:
.
% grep -Rn swig_checked | me
autogen.sh:181: # Remove the .swig_checked file
autogen.sh:182: rm -f .swig_checked
configure.ac:1644:rm -f .swig_checked
%
Cheers,
Daniel
> +++ subversion/branches/swig-py3/build/generator/templates/build-outputs.mk.ezt Sun Jan 6 00:42:27 2019
> @@ -70,8 +70,18 @@ RELEASE_MODE = 1
> # Section 3: SWIG autogen rules
> ########################################
> [for swig_langs]
> -autogen-swig-[swig_langs.short]:[for swig_langs.deps] [swig_langs.deps][end]
> +.swig_[swig_langs.short]_checked:
> + @if [ -n "$(SWIG_[swig_langs.short_upper]_ERRMSG)" ]; then \
> + echo "SWIG [swig_langs.name] disabled at configure time: $(SWIG_[swig_langs.short_upper]_ERRMSG)" >&2; \
> + exit 1; \
> + fi
> + @touch $@
> +
> +autogen-swig-[swig_langs.short]: .swig_[swig_langs.short]_checked [for swig_langs.deps] [swig_langs.deps][end]
> autogen-swig: autogen-swig-[swig_langs.short]
> +
> +# Ensure the swig build targets depend on the configuration check
> +swig-[swig_langs.short]: .swig_[swig_langs.short]_checked
> [end]