1251881Speter# 2251881Speter# Makefile.in: template Makefile for Subversion 3251881Speter# 4251881Speter# ==================================================================== 5251881Speter# Licensed to the Apache Software Foundation (ASF) under one 6251881Speter# or more contributor license agreements. See the NOTICE file 7251881Speter# distributed with this work for additional information 8251881Speter# regarding copyright ownership. The ASF licenses this file 9251881Speter# to you under the Apache License, Version 2.0 (the 10251881Speter# "License"); you may not use this file except in compliance 11251881Speter# with the License. You may obtain a copy of the License at 12251881Speter# 13251881Speter# http://www.apache.org/licenses/LICENSE-2.0 14251881Speter# 15251881Speter# Unless required by applicable law or agreed to in writing, 16251881Speter# software distributed under the License is distributed on an 17251881Speter# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 18251881Speter# KIND, either express or implied. See the License for the 19251881Speter# specific language governing permissions and limitations 20251881Speter# under the License. 21251881Speter# ==================================================================== 22251881Speter# 23251881Speter 24251881Spetertop_builddir = . 25251881Spetertop_srcdir = @top_srcdir@ 26251881Speterabs_builddir = @abs_builddir@ 27251881Speterabs_srcdir = @abs_srcdir@ 28251881SpeterVPATH = @top_srcdir@ 29251881Speter 30251881SpeterSVN_RA_LIB_DEPS = @SVN_RA_LIB_DEPS@ 31251881SpeterSVN_RA_LIB_INSTALL_DEPS = @SVN_RA_LIB_INSTALL_DEPS@ 32251881SpeterSVN_RA_LIB_LINK = @SVN_RA_LIB_LINK@ 33251881Speter 34251881SpeterSVN_FS_LIB_DEPS = @SVN_FS_LIB_DEPS@ 35251881SpeterSVN_FS_LIB_INSTALL_DEPS = @SVN_FS_LIB_INSTALL_DEPS@ 36251881SpeterSVN_FS_LIB_LINK = @SVN_FS_LIB_LINK@ 37251881Speter 38251881SpeterSWIG_SRC_DIR = $(abs_srcdir)/subversion/bindings/swig 39251881SpeterSWIG_BUILD_DIR = $(abs_builddir)/subversion/bindings/swig 40251881Speter 41251881SpeterSCHEMA_DIR = subversion/svn/schema 42251881Speter 43251881SpeterSVN_APR_LIBS = @SVN_APR_LIBS@ 44251881SpeterSVN_APRUTIL_LIBS = @SVN_APRUTIL_LIBS@ 45251881SpeterSVN_APR_MEMCACHE_LIBS = @SVN_APR_MEMCACHE_LIBS@ 46251881SpeterSVN_DB_LIBS = @SVN_DB_LIBS@ 47251881SpeterSVN_GPG_AGENT_LIBS = @SVN_GPG_AGENT_LIBS@ 48251881SpeterSVN_GNOME_KEYRING_LIBS = @SVN_GNOME_KEYRING_LIBS@ 49251881SpeterSVN_KWALLET_LIBS = @SVN_KWALLET_LIBS@ 50251881SpeterSVN_MAGIC_LIBS = @SVN_MAGIC_LIBS@ 51251881SpeterSVN_SASL_LIBS = @SVN_SASL_LIBS@ 52251881SpeterSVN_SERF_LIBS = @SVN_SERF_LIBS@ 53251881SpeterSVN_SQLITE_LIBS = @SVN_SQLITE_LIBS@ 54251881SpeterSVN_XML_LIBS = @SVN_XML_LIBS@ 55251881SpeterSVN_ZLIB_LIBS = @SVN_ZLIB_LIBS@ 56251881Speter 57251881SpeterLIBS = @LIBS@ 58251881Speter 59251881Speterprefix = @prefix@ 60251881Speterexec_prefix = @exec_prefix@ 61251881Speterlibdir = @libdir@ 62251881Speterfsmod_libdir = @libdir@ 63251881Speterramod_libdir = @libdir@ 64251881Speterbdb_libdir = @libdir@ 65251881Spetergnome_keyring_libdir = @libdir@ 66251881Spetergpg_agent_libdir = @libdir@ 67251881Speterkwallet_libdir = @libdir@ 68251881Speterserf_libdir = @libdir@ 69251881Speterbindir = @bindir@ 70251881Speterincludedir = @includedir@ 71251881Spetermandir = @mandir@ 72251881Spetersrcdir = @srcdir@ 73251881Spetercanonicalized_srcdir = @canonicalized_srcdir@ 74251881Speterdatadir = @datadir@ 75251881Speterdatarootdir = @datarootdir@ 76251881Speterlocaledir = @localedir@ 77251881Speter 78251881Speter# where to install libsvn_swig_* 79251881Speterswig_py_libdir = @libdir@ 80251881Speterswig_pl_libdir = @libdir@ 81251881Speterswig_rb_libdir = @libdir@ 82251881Speter 83251881Speter### these possibly need further discussion 84251881Speterswig_pydir = @libdir@/svn-python/libsvn 85251881Speterswig_pydir_extra = @libdir@/svn-python/svn 86251881Speterswig_pldir = @libdir@/svn-perl 87251881Speterswig_rbdir = $(SWIG_RB_SITE_ARCH_DIR)/svn/ext 88251881Spetertoolsdir = @bindir@/svn-tools 89251881Speter 90251881Speterjavahl_javadir = @libdir@/svn-javahl 91251881Speterjavahl_javahdir = @libdir@/svn-javahl/include 92251881Speterjavahl_libdir = @libdir@ 93251881Speterjavahl_test_rootdir=$(abs_builddir)/subversion/bindings/javahl/test-work 94251881Speterjavahl_test_srcdir=$(abs_srcdir)/subversion/bindings/javahl 95251881Speter 96251881Spetergnome_auth_dir = $(abs_builddir)/subversion/libsvn_auth_gnome_keyring/.libs 97251881Speterkwallet_auth_dir = $(abs_builddir)/subversion/libsvn_auth_kwallet/.libs 98251881Speterauth_plugin_dirs = $(gnome_auth_dir):$(kwallet_auth_dir) 99251881Speter 100251881SpeterMSGFMT = @MSGFMT@ 101251881SpeterMSGFMTFLAGS = @MSGFMTFLAGS@ 102251881SpeterMSGMERGE = @MSGMERGE@ 103251881SpeterXGETTEXT = @XGETTEXT@ 104251881SpeterTRANG = @TRANG@ 105251881Speter 106251881SpeterPACKAGE_NAME=@PACKAGE_NAME@ 107251881SpeterPACKAGE_VERSION=@PACKAGE_VERSION@ 108251881Speter 109251881SpeterCC = @CC@ 110251881SpeterCXX = @CXX@ 111251881SpeterEXEEXT = @EXEEXT@ 112251881Speter 113251881SpeterSHELL = @SHELL@ 114251881SpeterLIBTOOL = @SVN_LIBTOOL@ 115251881SpeterLTFLAGS = --tag=CC --silent 116251881SpeterLTCXXFLAGS = --tag=CXX --silent 117251881SpeterLT_CFLAGS = @LT_CFLAGS@ 118251881SpeterLT_LDFLAGS = @LT_LDFLAGS@ 119251881SpeterLT_SO_VERSION = @SVN_LT_SOVERSION@ 120251881SpeterLT_NO_UNDEFINED = @LT_NO_UNDEFINED@ 121251881SpeterLT_CXX_LIBADD = @LT_CXX_LIBADD@ 122251881Speter 123251881SpeterINCLUDES = -I$(top_srcdir)/subversion/include -I$(top_builddir)/subversion \ 124251881Speter @SVN_APR_INCLUDES@ @SVN_APRUTIL_INCLUDES@ @SVN_APR_MEMCACHE_INCLUDES@ \ 125251881Speter @SVN_DB_INCLUDES@ @SVN_GNOME_KEYRING_INCLUDES@ \ 126251881Speter @SVN_KWALLET_INCLUDES@ @SVN_MAGIC_INCLUDES@ \ 127251881Speter @SVN_SASL_INCLUDES@ @SVN_SERF_INCLUDES@ @SVN_SQLITE_INCLUDES@ \ 128251881Speter @SVN_XML_INCLUDES@ @SVN_ZLIB_INCLUDES@ 129251881Speter 130251881SpeterAPACHE_INCLUDES = @APACHE_INCLUDES@ 131251881SpeterAPACHE_LIBEXECDIR = $(DESTDIR)@APACHE_LIBEXECDIR@ 132251881SpeterAPACHE_LDFLAGS = @APACHE_LDFLAGS@ 133251881Speter 134251881SpeterSWIG = @SWIG@ 135251881SpeterSWIG_PY_INCLUDES = @SWIG_PY_INCLUDES@ -I$(SWIG_SRC_DIR)/python/libsvn_swig_py 136251881SpeterSWIG_PY_COMPILE = @SWIG_PY_COMPILE@ 137251881SpeterSWIG_PY_LINK = @SWIG_PY_LINK@ 138251881SpeterSWIG_PY_LIBS = @SWIG_PY_LIBS@ 139251881SpeterSWIG_PL_INCLUDES = @SWIG_PL_INCLUDES@ 140251881SpeterSWIG_RB_INCLUDES = @SWIG_RB_INCLUDES@ -I$(SWIG_SRC_DIR)/ruby/libsvn_swig_ruby 141251881SpeterSWIG_RB_COMPILE = @SWIG_RB_COMPILE@ 142251881SpeterSWIG_RB_LINK = @SWIG_RB_LINK@ 143251881SpeterSWIG_RB_LIBS = @SWIG_RB_LIBS@ 144251881SpeterSWIG_RB_SITE_LIB_DIR = @SWIG_RB_SITE_LIB_DIR@ 145251881SpeterSWIG_RB_SITE_ARCH_DIR = @SWIG_RB_SITE_ARCH_DIR@ 146251881SpeterSWIG_RB_TEST_VERBOSE = @SWIG_RB_TEST_VERBOSE@ 147251881SpeterSWIG_RB_RI_DATADIR = $(DESTDIR)$(datadir)/ri/$(RUBY_MAJOR).$(RUBY_MINOR)/site 148251881Speter 149251881SpeterCTYPESGEN = @CTYPESGEN@ 150251881SpeterCTYPES_PYTHON_SRC_DIR = $(abs_srcdir)/subversion/bindings/ctypes-python 151251881Speter 152251881SpeterJAVAHL_JAR=subversion/bindings/javahl/svn-javahl.jar 153251881SpeterJAVAHL_INCLUDES= @JNI_INCLUDES@ -I$(abs_builddir)/subversion/bindings/javahl/include 154251881Speter 155251881SpeterCXXHL_INCLUDES = -I$(abs_srcdir)/subversion/bindings/cxxhl/include 156251881Speter 157251881SpeterSVN_APR_CONFIG = @SVN_APR_CONFIG@ 158251881SpeterSVN_APR_INCLUDES = @SVN_APR_INCLUDES@ 159251881SpeterSVN_APRUTIL_CONFIG = @SVN_APRUTIL_CONFIG@ 160251881SpeterSVN_APRUTIL_INCLUDES = @SVN_APRUTIL_INCLUDES@ 161251881Speter 162251881SpeterMKDIR = @MKDIR@ 163251881Speter 164251881SpeterDOXYGEN = @DOXYGEN@ 165251881Speter 166251881Speter# The EXTRA_ parameters can be used to pass extra flags at 'make' time. 167251881SpeterCFLAGS = @CFLAGS@ $(EXTRA_CFLAGS) 168251881SpeterCMODEFLAGS = @CMODEFLAGS@ 169251881SpeterCMAINTAINERFLAGS = @CMAINTAINERFLAGS@ 170251881SpeterCXXFLAGS = @CXXFLAGS@ $(EXTRA_CXXFLAGS) 171251881SpeterCXXMODEFLAGS = @CXXMODEFLAGS@ 172251881SpeterCXXMAINTAINERFLAGS = @CXXMAINTAINERFLAGS@ 173251881Speter### A few of the CFLAGS (e.g. -Wmissing-prototypes, -Wstrict-prototypes, 174251881Speter### -Wmissing-declarations) are not valid for C++, and should be somehow 175251881Speter### suppressed (but they may come from httpd or APR). 176251881SpeterCPPFLAGS = @CPPFLAGS@ $(EXTRA_CPPFLAGS) 177251881SpeterLDFLAGS = @LDFLAGS@ $(EXTRA_LDFLAGS) 178251881SpeterSWIG_LDFLAGS = @SWIG_LDFLAGS@ $(EXTRA_SWIG_LDFLAGS) 179251881Speter 180251881SpeterCOMPILE = $(CC) $(CMODEFLAGS) $(CPPFLAGS) $(CMAINTAINERFLAGS) $(CFLAGS) $(INCLUDES) 181251881SpeterCOMPILE_CXX = $(CXX) $(CXXMODEFLAGS) $(CPPFLAGS) $(CXXMAINTAINERFLAGS) $(CXXFLAGS) $(INCLUDES) 182251881SpeterLT_COMPILE = $(LIBTOOL) $(LTFLAGS) --mode=compile $(COMPILE) $(LT_CFLAGS) 183251881SpeterLT_COMPILE_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=compile $(COMPILE_CXX) $(LT_CFLAGS) 184251881Speter 185251881Speter# Execute a command that loads libraries from the build dir 186251881SpeterLT_EXECUTE = $(LIBTOOL) $(LTFLAGS) --mode=execute `for f in $(abs_builddir)/subversion/*/*.la; do echo -dlopen $$f; done` 187251881Speter 188251881Speter# special compilation for files destined for mod_dav_svn 189251881SpeterCOMPILE_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=compile $(CC) $(CMODEFLAGS) $(CPPFLAGS) $(CFLAGS) $(CMAINTAINERFLAGS) $(LT_CFLAGS) $(APACHE_INCLUDES) $(INCLUDES) -o $@ -c 190251881Speter 191251881Speter# special compilation for files destined for libsvn_swig_* (e.g. swigutil_*.c) 192251881SpeterCOMPILE_SWIG_PY = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_PY_COMPILE) $(CPPFLAGS) $(LT_CFLAGS) -DSWIGPYTHON $(SWIG_PY_INCLUDES) $(INCLUDES) -o $@ -c 193251881SpeterCOMPILE_SWIG_PL = $(LIBTOOL) $(LTFLAGS) --mode=compile $(CC) $(CPPFLAGS) $(CFLAGS) $(LT_CFLAGS) $(SWIG_PL_INCLUDES) $(INCLUDES) -o $@ -c 194251881SpeterCOMPILE_SWIG_RB = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_RB_COMPILE) $(CPPFLAGS) $(LT_CFLAGS) $(SWIG_RB_INCLUDES) $(INCLUDES) -o $@ -c 195251881Speter 196251881Speter# special compilation for files destined for javahl (i.e. C++) 197251881SpeterCOMPILE_JAVAHL_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=compile $(COMPILE_CXX) $(LT_CFLAGS) $(JAVAHL_INCLUDES) -o $@ -c 198251881SpeterCOMPILE_JAVAHL_JAVAC = $(JAVAC) $(JAVAC_FLAGS) 199251881SpeterCOMPILE_JAVAHL_JAVAH = $(JAVAH) 200251881Speter 201251881Speter# special compilation for files destined for cxxhl 202251881SpeterCOMPILE_CXXHL_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=compile $(COMPILE_CXX) $(LT_CFLAGS) $(CXXHL_INCLUDES) -o $@ -c 203251881Speter 204251881SpeterLINK = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(libdir) 205251881SpeterLINK_LIB = $(LINK) $(LT_SO_VERSION) 206251881SpeterLINK_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) -rpath $(libdir) 207251881SpeterLINK_CXX_LIB = $(LINK_CXX) $(LT_SO_VERSION) 208251881Speter 209251881Speter# special link rule for mod_dav_svn 210251881SpeterLINK_APACHE_MOD = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(CFLAGS) $(LDFLAGS) -rpath $(APACHE_LIBEXECDIR) -avoid-version -module $(APACHE_LDFLAGS) 211251881Speter 212251881Speter# Special LDFLAGS for some libraries 213251881Speterlibsvn_auth_gnome_keyring_LDFLAGS = @libsvn_auth_gnome_keyring_LDFLAGS@ 214251881Speterlibsvn_auth_kwallet_LDFLAGS = @libsvn_auth_kwallet_LDFLAGS@ 215251881Speterlibsvn_client_LDFLAGS = @libsvn_client_LDFLAGS@ 216251881Speterlibsvn_delta_LDFLAGS = @libsvn_delta_LDFLAGS@ 217251881Speterlibsvn_diff_LDFLAGS = @libsvn_diff_LDFLAGS@ 218251881Speterlibsvn_fs_LDFLAGS = @libsvn_fs_LDFLAGS@ 219251881Speterlibsvn_fs_base_LDFLAGS = @libsvn_fs_base_LDFLAGS@ 220251881Speterlibsvn_fs_fs_LDFLAGS = @libsvn_fs_fs_LDFLAGS@ 221251881Speterlibsvn_fs_util_LDFLAGS = @libsvn_fs_util_LDFLAGS@ 222251881Speterlibsvn_ra_LDFLAGS = @libsvn_ra_LDFLAGS@ 223251881Speterlibsvn_ra_local_LDFLAGS = @libsvn_ra_local_LDFLAGS@ 224251881Speterlibsvn_ra_serf_LDFLAGS = @libsvn_ra_serf_LDFLAGS@ 225251881Speterlibsvn_ra_svn_LDFLAGS = @libsvn_ra_svn_LDFLAGS@ 226251881Speterlibsvn_repos_LDFLAGS = @libsvn_repos_LDFLAGS@ 227251881Speterlibsvn_subr_LDFLAGS = @libsvn_subr_LDFLAGS@ 228251881Speterlibsvn_wc_LDFLAGS = @libsvn_wc_LDFLAGS@ 229251881Speter 230251881Speter# Compilation of SWIG-generated C source code 231251881SpeterCOMPILE_PY_WRAPPER = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_PY_COMPILE) $(LT_CFLAGS) $(CPPFLAGS) $(SWIG_PY_INCLUDES) -prefer-pic -c -o $@ 232251881SpeterCOMPILE_RB_WRAPPER = $(LIBTOOL) $(LTFLAGS) --mode=compile $(SWIG_RB_COMPILE) $(LT_CFLAGS) $(CPPFLAGS) $(SWIG_RB_INCLUDES) -prefer-pic -c -o $@ 233251881Speter 234251881Speter# these commands link the wrapper objects into an extension library/module 235251881SpeterLINK_PY_WRAPPER = $(LIBTOOL) $(LTFLAGS) --mode=link $(SWIG_PY_LINK) $(SWIG_LDFLAGS) -rpath $(swig_pydir) -avoid-version -module 236251881SpeterLINK_RB_WRAPPER = $(LIBTOOL) $(LTFLAGS) --mode=link $(SWIG_RB_LINK) $(SWIG_LDFLAGS) -rpath $(swig_rbdir) -avoid-version -module 237251881Speter 238251881SpeterLINK_JAVAHL_CXX = $(LIBTOOL) $(LTCXXFLAGS) --mode=link $(CXX) $(LT_LDFLAGS) $(CXXFLAGS) $(LDFLAGS) $(LT_CXX_LIBADD) -rpath $(libdir) 239251881Speter 240251881SpeterINSTALL = @INSTALL@ 241251881SpeterINSTALL_LIB = $(LIBTOOL) --mode=install $(INSTALL) 242251881SpeterINSTALL_FSMOD_LIB = $(INSTALL_LIB) 243251881SpeterINSTALL_RAMOD_LIB = $(INSTALL_LIB) 244251881SpeterINSTALL_APR_MEMCACHE_LIB = $(INSTALL_LIB) 245251881SpeterINSTALL_BDB_LIB = $(INSTALL_LIB) 246251881SpeterINSTALL_GPG_AGENT_LIB = $(INSTALL_LIB) 247251881SpeterINSTALL_GNOME_KEYRING_LIB = $(INSTALL_LIB) 248251881SpeterINSTALL_KWALLET_LIB = $(INSTALL_LIB) 249251881SpeterINSTALL_SERF_LIB = $(INSTALL_LIB) 250251881SpeterINSTALL_BIN = $(LIBTOOL) --mode=install $(INSTALL) 251251881SpeterINSTALL_CONTRIB = $(LIBTOOL) --mode=install $(INSTALL) 252251881SpeterINSTALL_TOOLS = $(LIBTOOL) --mode=install $(INSTALL) 253251881SpeterINSTALL_INCLUDE = $(INSTALL) -m 644 254251881SpeterINSTALL_MOD_SHARED = @APXS@ -i -S LIBEXECDIR="$(APACHE_LIBEXECDIR)" @MOD_ACTIVATION@ 255251881SpeterINSTALL_DATA = $(INSTALL) -m 644 256251881SpeterINSTALL_LOCALE = $(INSTALL_DATA) 257251881SpeterINSTALL_APACHE_MODS = @INSTALL_APACHE_MODS@ 258251881Speter 259251881Speter### this isn't correct yet 260251881SpeterINSTALL_SWIG_PY = $(INSTALL_LIB) 261251881SpeterINSTALL_SWIG_PY_LIB = $(INSTALL_LIB) 262251881SpeterINSTALL_SWIG_PL_LIB = $(INSTALL_LIB) 263251881SpeterINSTALL_SWIG_RB = $(INSTALL_LIB) 264251881SpeterINSTALL_SWIG_RB_LIB = $(INSTALL_LIB) 265251881Speter 266251881SpeterINSTALL_JAVAHL_LIB = $(INSTALL_LIB) 267251881Speter 268251881Speter# additional installation rules for the SWIG wrappers 269251881SpeterINSTALL_EXTRA_SWIG_PY=\ 270251881Speter $(MKDIR) $(DESTDIR)$(swig_pydir); \ 271251881Speter $(MKDIR) $(DESTDIR)$(swig_pydir_extra); \ 272251881Speter for i in $(abs_srcdir)/subversion/bindings/swig/python/svn/*.py; do \ 273251881Speter $(INSTALL_DATA) "$$i" $(DESTDIR)$(swig_pydir_extra); \ 274251881Speter done; \ 275251881Speter for i in $(abs_srcdir)/subversion/bindings/swig/python/*.py; do \ 276251881Speter $(INSTALL_DATA) "$$i" $(DESTDIR)$(swig_pydir); \ 277251881Speter done; \ 278251881Speter if test "$(abs_srcdir)" != "$(abs_builddir)"; then \ 279251881Speter for i in $(abs_builddir)/subversion/bindings/swig/python/*.py; do \ 280251881Speter $(INSTALL_DATA) "$$i" $(DESTDIR)$(swig_pydir); \ 281251881Speter done; \ 282251881Speter fi; \ 283251881Speter $(PYTHON) -c 'import compileall; \ 284251881Speter compileall.compile_dir("$(DESTDIR)$(swig_pydir)", 1, "$(swig_pydir)"); \ 285251881Speter compileall.compile_dir("$(DESTDIR)$(swig_pydir_extra)", 1, \ 286251881Speter "$(swig_pydir_extra)");' 287251881Speter 288251881Speter# export an env variable so that the tests can run without being installed 289251881SpeterTEST_SHLIB_VAR_SWIG_PY=\ 290251881Speter if [ "@SVN_APR_SHLIB_PATH_VAR@" = "DYLD_LIBRARY_PATH" ]; then \ 291251881Speter for d in $(SWIG_PY_DIR)/libsvn_swig_py $(SWIG_PY_DIR)/../../../libsvn_*; do \ 292251881Speter if [ -n "$$DYLD_LIBRARY_PATH" ]; then \ 293251881Speter @SVN_APR_SHLIB_PATH_VAR@="$$@SVN_APR_SHLIB_PATH_VAR@:$$d/.libs"; \ 294251881Speter else \ 295251881Speter @SVN_APR_SHLIB_PATH_VAR@="$$d/.libs"; \ 296251881Speter fi; \ 297251881Speter done; \ 298251881Speter export @SVN_APR_SHLIB_PATH_VAR@; \ 299251881Speter fi; 300251881Speter 301251881Speter# The path to generated and complementary source files for the SWIG 302251881Speter# bindings. 303251881SpeterSWIG_PL_DIR = $(abs_builddir)/subversion/bindings/swig/perl 304251881SpeterSWIG_PY_DIR = $(abs_builddir)/subversion/bindings/swig/python 305251881SpeterSWIG_RB_DIR = $(abs_builddir)/subversion/bindings/swig/ruby 306251881Speter 307251881Speter# The path to the source files for the SWIG bindings 308251881SpeterSWIG_PL_SRC_DIR = $(abs_srcdir)/subversion/bindings/swig/perl 309251881SpeterSWIG_PY_SRC_DIR = $(abs_srcdir)/subversion/bindings/swig/python 310251881SpeterSWIG_RB_SRC_DIR = $(abs_srcdir)/subversion/bindings/swig/ruby 311251881Speter 312251881Speter### Automate JAR creation using Makefile generator's javahl-java.jar 313251881Speter### property. Enhance generator to support JAR installation. 314251881SpeterJAVAHL_MANIFEST_IN = $(abs_srcdir)/subversion/bindings/javahl/Manifest.in 315251881SpeterJAVAHL_MANIFEST = subversion/bindings/javahl/Manifest 316251881SpeterINSTALL_EXTRA_JAVAHL_JAVA=\ 317251881Speter sed s/%bundleVersion/$(PACKAGE_VERSION)/ $(JAVAHL_MANIFEST_IN) > $(JAVAHL_MANIFEST); \ 318251881Speter $(JAR) cfm $(JAVAHL_JAR) $(JAVAHL_MANIFEST) -C subversion/bindings/javahl/classes org; \ 319251881Speter $(INSTALL_DATA) $(JAVAHL_JAR) $(DESTDIR)$(javahl_javadir); 320251881Speter 321251881SpeterINSTALL_EXTRA_JAVAHL_LIB=@INSTALL_EXTRA_JAVAHL_LIB@ 322251881Speter 323251881SpeterINSTALL_EXTRA_SWIG_RB=\ 324251881Speter @echo $(MKDIR) $(DESTDIR)$(SWIG_RB_SITE_LIB_DIR)/svn; \ 325251881Speter $(MKDIR) $(DESTDIR)$(SWIG_RB_SITE_LIB_DIR)/svn; \ 326251881Speter for i in $(abs_srcdir)/subversion/bindings/swig/ruby/svn/*.rb; do \ 327251881Speter echo $(INSTALL_DATA) "$$i" $(DESTDIR)$(SWIG_RB_SITE_LIB_DIR)/svn; \ 328251881Speter $(INSTALL_DATA) "$$i" $(DESTDIR)$(SWIG_RB_SITE_LIB_DIR)/svn; \ 329251881Speter done 330251881Speter 331251881Speter# export an env variable so that the tests can run without being installed 332251881SpeterTEST_SHLIB_VAR_SWIG_RB=\ 333251881Speter if [ "@SVN_APR_SHLIB_PATH_VAR@" = "DYLD_LIBRARY_PATH" ]; then \ 334251881Speter for d in $(SWIG_PY_DIR)/libsvn_swig_rb $(SWIG_PY_DIR)/../../../libsvn_*; do \ 335251881Speter if [ -n "$$DYLD_LIBRARY_PATH" ]; then \ 336251881Speter @SVN_APR_SHLIB_PATH_VAR@="$$@SVN_APR_SHLIB_PATH_VAR@:$$d/.libs"; \ 337251881Speter else \ 338251881Speter @SVN_APR_SHLIB_PATH_VAR@="$$d/.libs"; \ 339251881Speter fi; \ 340251881Speter done; \ 341251881Speter export @SVN_APR_SHLIB_PATH_VAR@; \ 342251881Speter fi; 343251881Speter 344251881SpeterAPXS = @APXS@ 345251881Speter 346251881SpeterPYTHON = @PYTHON@ 347251881SpeterPERL = @PERL@ 348251881Speter 349251881SpeterJDK = @JDK@ 350251881SpeterJAVA = @JAVA@ 351251881SpeterJAVAC = @JAVAC@ 352251881SpeterJAVADOC = @JAVADOC@ 353251881SpeterJAVAC_FLAGS = @JAVAC_FLAGS@ 354251881SpeterJAVAH = @JAVAH@ 355251881SpeterJAR = @JAR@ 356251881Speter 357251881SpeterJAVA_CLASSPATH=$(abs_srcdir)/subversion/bindings/javahl/src:@JAVA_CLASSPATH@ 358251881Speterjavahl_java_CLASSPATH=$(JAVA_CLASSPATH) 359251881Speterjavahl_compat_CLASSPATH=$(JAVA_CLASSPATH) 360251881Speterjavahl_tests_CLASSPATH=$(JAVA_CLASSPATH) 361251881Speterjavahl_compat_tests_CLASSPATH=$(JAVA_CLASSPATH) 362251881Speter 363251881SpeterRUBY = @RUBY@ 364251881SpeterRUBY_MAJOR = @RUBY_MAJOR@ 365251881SpeterRUBY_MINOR = @RUBY_MINOR@ 366251881SpeterRDOC = @RDOC@ 367251881Speter 368251881SpeterECHO_C = @ECHO_C@ 369251881SpeterECHO_N = @ECHO_N@ 370251881Speter 371251881SpeterTESTS = $(TEST_PROGRAMS) @BDB_TEST_PROGRAMS@ 372251881Speter 373251881Speterall: mkdir-init local-all 374251881Speterclean: local-clean 375251881Speterdistclean: local-distclean 376251881Speterextraclean: local-extraclean 377251881Speterinstall: local-install revision-install 378251881Speter 379251881Speter@INCLUDE_OUTPUTS@ 380251881Speter 381251881Speterlocal-all: @BUILD_RULES@ @TRANSFORM_LIBTOOL_SCRIPTS@ 382251881Speter 383251881Spetertransform-libtool-scripts: @BUILD_RULES@ 384251881Speter @$(SHELL) $(top_srcdir)/build/transform_libtool_scripts.sh 385251881Speter 386251881Speterlocale-gnu-pot: 387251881Speter cd $(abs_srcdir) && XGETTEXT="$(XGETTEXT)" MSGMERGE="$(MSGMERGE)" \ 388251881Speter $(SHELL) tools/po/po-update.sh pot 389251881Speter 390251881Speter# "make locale-gnu-po-update" updates all translations. 391251881Speter# "make locale-gnu-po-update PO=ll" updates only the ll.po file. 392251881Speterlocale-gnu-po-update: 393251881Speter cd $(abs_srcdir) && XGETTEXT="$(XGETTEXT)" MSGMERGE="$(MSGMERGE)" \ 394251881Speter $(SHELL) tools/po/po-update.sh $(PO) 395251881Speter 396251881Speter# clean everything but the bulky test output, returning the system back 397251881Speter# to before 'make' was run. 398251881Speterfast-clean: doc-clean 399251881Speter @list='$(BUILD_DIRS)'; for i in $$list; do \ 400251881Speter if [ -d $$i ]; then \ 401251881Speter (cd $$i && rm -f *.o *.lo *.la *.la-a *.spo *.mo && \ 402251881Speter rm -rf .libs); \ 403251881Speter fi \ 404251881Speter done 405251881Speter echo $(CLEAN_FILES) | xargs rm -f -- 406251881Speter find $(CTYPES_PYTHON_SRC_DIR) $(SWIG_PY_SRC_DIR) $(SWIG_PY_DIR) \ 407251881Speter $(abs_srcdir)/build $(top_srcdir)/subversion/tests/cmdline/svntest \ 408251881Speter -name "*.pyc" -exec rm {} ';' 409251881Speter 410251881Speter# clean everything, returning to before './configure' was run. 411251881SpeterSVN_CONFIG_SCRIPT_FILES = @SVN_CONFIG_SCRIPT_FILES@ 412251881Speterlocal-distclean: local-clean 413251881Speter rm -fr config.cache config.log config.nice config.status \ 414251881Speter libtool mkmf.log subversion/svn_private_config.h \ 415251881Speter subversion/bindings/javahl/classes \ 416251881Speter subversion/bindings/javahl/include \ 417251881Speter $(SVN_CONFIG_SCRIPT_FILES) 418251881Speter rm -f Makefile 419251881Speter 420251881Speter# clean everything out, returning to before './autogen.sh' was run. 421251881Speterlocal-extraclean: extraclean-bindings local-distclean 422251881Speter rm -f $(top_srcdir)/build-outputs.mk \ 423251881Speter $(top_srcdir)/subversion/svn_private_config.h.in \ 424251881Speter $(top_srcdir)/configure \ 425251881Speter $(top_srcdir)/gen-make.opts \ 426251881Speter $(top_srcdir)/build/config.guess \ 427251881Speter $(top_srcdir)/build/config.sub \ 428251881Speter $(top_srcdir)/build/libtool.m4 \ 429251881Speter $(top_srcdir)/build/ltoptions.m4 \ 430251881Speter $(top_srcdir)/build/ltsugar.m4 \ 431251881Speter $(top_srcdir)/build/ltversion.m4 \ 432251881Speter $(top_srcdir)/build/lt~obsolete.m4 \ 433251881Speter $(top_srcdir)/build/ltmain.sh \ 434251881Speter $(top_srcdir)/build/transform_libtool_scripts.sh \ 435251881Speter $(EXTRACLEAN_FILES) 436251881Speter 437251881Speter 438251881Speter# clean everything, including test output. 439251881Speterlocal-clean: check-clean clean-bindings fast-clean 440251881Speter 441251881Speterlocal-install: @INSTALL_RULES@ 442251881Speter 443251881Speterrevision-install: 444251881Speter test -d $(DESTDIR)$(includedir)/subversion-1 || \ 445251881Speter $(MKDIR) $(DESTDIR)$(includedir)/subversion-1 446251881Speter (subversion/svnversion/svnversion $(top_srcdir) 2> /dev/null || \ 447251881Speter svnversion $(top_srcdir) 2> /dev/null || \ 448251881Speter echo "unknown"; \ 449251881Speter ) > $(DESTDIR)$(includedir)/subversion-1/svn-revision.txt 450251881Speter 451251881Speterinstall-static: @INSTALL_STATIC_RULES@ 452251881Speter 453251881Speter# JavaHL target aliases 454251881Speterjavahl: mkdir-init javahl-java javahl-javah javahl-callback-javah javahl-types-javah javahl-lib @JAVAHL_TESTS_TARGET@ javahl-compat 455251881Speterinstall-javahl: javahl install-javahl-java install-javahl-javah install-javahl-lib 456251881Speterjavahl-compat: javahl-compat-java @JAVAHL_COMPAT_TESTS_TARGET@ 457251881Speter 458251881Speterclean-javahl: 459251881Speter rm -rf $(javahl_java_PATH) $(javahl_javah_PATH) @JAVAHL_OBJDIR@ 460251881Speter rm -fr $(javahl_test_rootdir) 461251881Speter rm -f $(libsvnjavahl_PATH)/*.la $(JAVAHL_JAR) 462251881Speter rm -f $(libsvnjavahl_PATH)/*.lo 463251881Speter rm -f $(libsvnjavahl_PATH)/*.o 464251881Speter 465251881Spetercheck-tigris-javahl: javahl-compat 466251881Speter @FIX_JAVAHL_LIB@ 467251881Speter $(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" -Djava.library.path=@JAVAHL_OBJDIR@:$(libdir) -classpath $(javahl_compat_tests_PATH):$(javahl_tests_CLASSPATH) "-Dtest.tests=$(JAVAHL_TESTS)" org.tigris.subversion.javahl.RunTests 468251881Speter 469251881Spetercheck-apache-javahl: javahl 470251881Speter @FIX_JAVAHL_LIB@ 471251881Speter $(JAVA) "-Dtest.rootdir=$(javahl_test_rootdir)" "-Dtest.srcdir=$(javahl_test_srcdir)" "-Dtest.rooturl=$(BASE_URL)" "-Dtest.fstype=$(FS_TYPE)" -Djava.library.path=@JAVAHL_OBJDIR@:$(libdir) -classpath $(javahl_tests_PATH):$(javahl_tests_CLASSPATH) "-Dtest.tests=$(JAVAHL_TESTS)" org.apache.subversion.javahl.RunTests 472251881Speter 473251881Spetercheck-javahl: check-apache-javahl 474251881Speter 475251881Spetercheck-all-javahl: check-apache-javahl check-tigris-javahl 476251881Speter 477251881Speter# "make check CLEANUP=true" will clean up directories for successful tests. 478251881Speter# "make check TESTS=subversion/tests/cmdline/basic_tests.py" 479251881Speter# will perform only basic tests (likewise for other tests). 480251881Spetercheck: bin @TRANSFORM_LIBTOOL_SCRIPTS@ $(TEST_DEPS) @BDB_TEST_DEPS@ 481251881Speter @if test "$(PYTHON)" != "none"; then \ 482251881Speter flags="--verbose"; \ 483251881Speter if test "$(CLEANUP)" != ""; then \ 484251881Speter flags="--cleanup $$flags"; \ 485251881Speter fi; \ 486251881Speter if test "$(BASE_URL)" != ""; then \ 487251881Speter flags="--url $(BASE_URL) $$flags"; \ 488251881Speter fi; \ 489251881Speter if test "$(FS_TYPE)" != ""; then \ 490251881Speter flags="--fs-type $(FS_TYPE) $$flags"; \ 491251881Speter fi; \ 492251881Speter if test "$(HTTP_LIBRARY)" != ""; then \ 493251881Speter flags="--http-library $(HTTP_LIBRARY) $$flags"; \ 494251881Speter fi; \ 495251881Speter if test "$(SERVER_MINOR_VERSION)" != ""; then \ 496251881Speter flags="--server-minor-version $(SERVER_MINOR_VERSION) $$flags"; \ 497251881Speter fi; \ 498251881Speter if test "$(ENABLE_SASL)" != ""; then \ 499251881Speter flags="--enable-sasl $$flags"; \ 500251881Speter fi; \ 501251881Speter if test "$(FSFS_SHARDING)" != ""; then \ 502251881Speter flags="--fsfs-sharding $(FSFS_SHARDING) $$flags"; \ 503251881Speter fi; \ 504251881Speter if test "$(FSFS_PACKING)" != ""; then \ 505251881Speter flags="--fsfs-packing $$flags"; \ 506251881Speter fi; \ 507251881Speter if test "$(PARALLEL)" != ""; then \ 508251881Speter flags="--parallel $$flags"; \ 509251881Speter fi; \ 510251881Speter if test "$(LOG_TO_STDOUT)" != ""; then \ 511251881Speter flags="--log-to-stdout $$flags"; \ 512251881Speter fi; \ 513251881Speter if test "$(MILESTONE_FILTER)" != ""; then \ 514251881Speter flags="--list --milestone-filter=$(MILESTONE_FILTER) \ 515251881Speter --mode-filter=$(MODE_FILTER) --log-to-stdout $$flags"; \ 516251881Speter fi; \ 517251881Speter if test "$(SET_LOG_LEVEL)" != ""; then \ 518251881Speter flags="--set-log-level $(SET_LOG_LEVEL) $$flags"; \ 519251881Speter fi; \ 520251881Speter if test "$(SSL_CERT)" != ""; then \ 521251881Speter flags="--ssl-cert $(SSL_CERT) $$flags"; \ 522251881Speter fi; \ 523251881Speter if test "$(HTTP_PROXY)" != ""; then \ 524251881Speter flags="--http-proxy $(HTTP_PROXY) $$flags"; \ 525251881Speter fi; \ 526251881Speter LD_LIBRARY_PATH='$(auth_plugin_dirs):$(LD_LIBRARY_PATH)' \ 527251881Speter $(PYTHON) $(top_srcdir)/build/run_tests.py \ 528251881Speter --config-file $(top_srcdir)/subversion/tests/tests.conf \ 529251881Speter $$flags \ 530251881Speter '$(abs_srcdir)' '$(abs_builddir)' $(TESTS); \ 531251881Speter else \ 532251881Speter echo "make check: Python 2.5 or greater is required,"; \ 533251881Speter echo " but was not detected during configure"; \ 534251881Speter exit 1; \ 535251881Speter fi; 536251881Speter 537251881Speter# First, set up Apache as documented in 538251881Speter# subversion/tests/cmdline/README. 539251881Speterdavcheck: bin $(TEST_DEPS) @BDB_TEST_DEPS@ apache-mod 540251881Speter @$(MAKE) check BASE_URL=http://localhost 541251881Speter 542251881Speter# Automatically configure and run Apache httpd on a random port, and then 543251881Speter# run make check. 544251881Speterdavautocheck: bin $(TEST_DEPS) @BDB_TEST_DEPS@ apache-mod 545251881Speter @# Takes MODULE_PATH, USE_HTTPV1 and SVN_PATH_AUTHZ in the environment. 546251881Speter @APXS=$(APXS) $(top_srcdir)/subversion/tests/cmdline/davautocheck.sh 547251881Speter 548251881Speter# First, run: 549251881Speter# subversion/svnserve/svnserve -d -r `pwd`/subversion/tests/cmdline 550251881Spetersvncheck: bin $(TEST_DEPS) @BDB_TEST_DEPS@ 551251881Speter @$(MAKE) check BASE_URL=svn://127.0.0.1 552251881Speter 553251881Speter# 'make svnserveautocheck' runs svnserve for you and kills it. 554251881Spetersvnserveautocheck: svnserve bin $(TEST_DEPS) @BDB_TEST_DEPS@ 555251881Speter @env PYTHON=$(PYTHON) THREADED=$(THREADED) \ 556251881Speter $(top_srcdir)/subversion/tests/cmdline/svnserveautocheck.sh 557251881Speter 558251881Speter# First, run: 559251881Speter# subversion/svnserve/svnserve --listen-host "::1" -d -r `pwd`/subversion/tests/cmdline 560251881Speter 561251881Spetersvncheck6: bin $(TEST_DEPS) @BDB_TEST_DEPS@ 562251881Speter @$(MAKE) check BASE_URL=svn://\[::1\] 563251881Speter 564251881Speter# First make sure you can ssh to localhost and that "svnserve" is in 565251881Speter# the path of the resulting shell. 566251881Spetersvnsshcheck: bin $(TEST_DEPS) @BDB_TEST_DEPS@ 567251881Speter @$(MAKE) check \ 568251881Speter BASE_URL=svn+ssh://localhost`pwd`/subversion/tests/cmdline 569251881Speter 570251881Speterbdbcheck: bin $(TEST_DEPS) @BDB_TEST_DEPS@ 571251881Speter @$(MAKE) check FS_TYPE=bdb 572251881Speter 573251881Speter# Create an execution coverage report from the data collected during 574251881Speter# all execution since the last reset. 575251881Spetergcov: 576251881Speter lcov --capture -d . -b . -o gcov-lcov.dat > gcov-lcov.log 577251881Speter genhtml gcov-lcov.dat -o gcov-report > gcov-genhtml.log 578251881Speter 579251881Speter# Reset all execution coverage counters to zero. 580251881Spetergcov-reset: 581251881Speter lcov --zerocounters -d . 582251881Speter 583251881Speter# Remove the execution coverage data and the report. 584251881Spetergcov-clean: 585251881Speter rm -f gcov-lcov.dat gcov-lcov.log gcov-genhtml.log 586251881Speter rm -rf gcov-report 587251881Speter find . -name "*.gcda" -o -name "*.gcno" -print0 | xargs -0 rm -f -- 588251881Speter 589251881Spetercheck-clean: gcov-clean 590251881Speter if [ -d subversion/tests/cmdline/svn-test-work ]; then \ 591251881Speter find subversion/tests/cmdline/svn-test-work -mindepth 1 -maxdepth 1 \ 592251881Speter -print0 | xargs -0 rm -rf --; \ 593251881Speter fi 594251881Speter rm -rf subversion/tests/libsvn_fs/test-repo-* \ 595251881Speter subversion/tests/libsvn_fs_base/test-repo-* \ 596251881Speter subversion/tests/libsvn_fs_fs/test-repo-* \ 597251881Speter subversion/tests/libsvn_ra_local/test-repo-* \ 598251881Speter subversion/tests/libsvn_repos/test-repo-* \ 599251881Speter subversion/tests/libsvn_subr/z \ 600251881Speter subversion/tests/libsvn_wc/fake-wc \ 601251881Speter subversion/tests/libsvn_client/test-patch* \ 602251881Speter subversion/tests/libsvn_client/test-*/ \ 603251881Speter subversion/tests/libsvn_diff/B2 \ 604251881Speter subversion/tests/libsvn_diff/T1 \ 605251881Speter subversion/tests/libsvn_diff/T2 \ 606251881Speter subversion/tests/libsvn_diff/T3 \ 607251881Speter subversion/tests/svnserveautocheck.pid \ 608251881Speter tests.log fails.log 609251881Speter 610251881Spetermkdir-init: 611251881Speter @list='$(BUILD_DIRS) $(SCHEMA_DIR) doc'; \ 612251881Speter for i in $$list; do \ 613251881Speter if [ ! -d $$i ]; then \ 614251881Speter $(MKDIR) $$i ; \ 615251881Speter fi; \ 616251881Speter done 617251881Speter 618251881Speter# DOCUMENTATION RULES 619251881Speter 620251881Speter# Every single document in every format. 621251881Speterdoc: doc-api doc-javahl 622251881Speter 623251881Speter# Generate API documentation for the C libraries. 624251881Speter### This could also generate POD for swig-perl, etc. 625251881Speterdoc-api: mkdir-init 626251881Speter ( cd $(top_srcdir) && \ 627251881Speter sed "s,\(OUTPUT_DIRECTORY *= *\),\1$(abs_builddir)/," \ 628251881Speter doc/doxygen.conf | $(DOXYGEN) - ) 629251881Speter 630251881Speter# Generate API documentation for the JavaHL package. 631251881Speterdoc-javahl: 632251881Speter $(JAVADOC) -d $(abs_builddir)/doc/javadoc \ 633251881Speter -sourcepath $(top_srcdir)/subversion/bindings/javahl/src \ 634251881Speter -link http://java.sun.com/javase/6/docs/api/ \ 635251881Speter org.tigris.subversion.javahl \ 636251881Speter org.apache.subversion.javahl \ 637251881Speter org.apache.subversion.javahl.callback \ 638251881Speter org.apache.subversion.javahl.types 639251881Speter 640251881Speterdoc-clean: 641251881Speter rm -rf $(top_srcdir)/doc/doxygen 642251881Speter rm -rf $(top_srcdir)/doc/javadoc 643251881Speter 644251881Speter# Converting from the .rnc XML shcemas to various other schema formats. 645251881SpeterSCHEMAS_DTD = $(SCHEMA_DIR)/blame.dtd $(SCHEMA_DIR)/info.dtd \ 646251881Speter $(SCHEMA_DIR)/list.dtd $(SCHEMA_DIR)/log.dtd \ 647251881Speter $(SCHEMA_DIR)/status.dtd $(SCHEMA_DIR)/props.dtd 648251881Speter 649251881SpeterSCHEMAS_RNG = $(SCHEMA_DIR)/blame.rng $(SCHEMA_DIR)/info.rng \ 650251881Speter $(SCHEMA_DIR)/list.rng $(SCHEMA_DIR)/log.rng \ 651251881Speter $(SCHEMA_DIR)/status.rng $(SCHEMA_DIR)/props.rng 652251881Speter 653251881SpeterSCHEMAS_XSD = $(SCHEMA_DIR)/blame.xsd $(SCHEMA_DIR)/info.xsd \ 654251881Speter $(SCHEMA_DIR)/list.xsd $(SCHEMA_DIR)/log.xsd \ 655251881Speter $(SCHEMA_DIR)/status.xsd $(SCHEMA_DIR)/props.xsd 656251881Speter 657251881Speterschema: schema-rng schema-dtd schema-xsd 658251881Speter 659251881Speterschema-rng: $(SCHEMAS_RNG) 660251881Speterschema-dtd: $(SCHEMAS_DTD) 661251881Speterschema-xsd: $(SCHEMAS_XSD) 662251881Speter 663251881Speter$(SCHEMAS_RNG) $(SCHEMAS_DTD) $(SCHEMAS_XSD): $(SCHEMA_DIR)/common.rnc 664251881Speter 665251881Speterschema-clean: 666251881Speter (cd $(SCHEMA_DIR) && rm -f *.rng *.dtd *.xsd) 667251881Speter 668251881Speter# 669251881Speter# Implicit rules for creating outputs from input files 670251881Speter# 671251881Speter.SUFFIXES: 672251881Speter.SUFFIXES: .c .cpp .lo .o .la-a .la \ 673251881Speter .po .spo .mo .rnc .rng .dtd .xsd .sql .h 674251881Speter 675251881Speter.sql.h: 676251881Speter $(PYTHON) $(top_srcdir)/build/transform_sql.py $< $(top_srcdir)/$@ 677251881Speter 678251881Speter.c.o: 679251881Speter $(COMPILE) -o $@ -c $< 680251881Speter 681251881Speter.cpp.o: 682251881Speter $(COMPILE_CXX) -o $@ -c $< 683251881Speter 684251881Speter.c.lo: 685251881Speter $(LT_COMPILE) -o $@ -c $< 686251881Speter 687251881Speter.cpp.lo: 688251881Speter $(LT_COMPILE_CXX) -o $@ -c $< 689251881Speter 690251881Speter.la.la-a: 691251881Speter sed "/library_names/s/'.*'/''/" $< > $@ 692251881Speter 693251881Speter 694251881Speter# Strip the Content-Type: header from the po file if we don't have a 695251881Speter# gettext that supports bind_textdomain_codeset, so it doesn't try 696251881Speter# to convert our UTF-8 .po files to the locale encoding. 697251881Speter@NO_GETTEXT_CODESET@.po.spo: 698251881Speter@NO_GETTEXT_CODESET@ sed \ 699251881Speter@NO_GETTEXT_CODESET@ '/^"Content-Type: text\/plain; charset=UTF-8\\n"$$/d' \ 700251881Speter@NO_GETTEXT_CODESET@ $< > $@ 701251881Speter 702251881Speter@NO_GETTEXT_CODESET@.spo.mo: 703251881Speter@NO_GETTEXT_CODESET@ $(MSGFMT) $(MSGFMTFLAGS) -o $@ $< 704251881Speter 705251881Speter# For systems with bind_textdomain_codeset, just leave the Content-Type: 706251881Speter# header alone. 707251881Speter@GETTEXT_CODESET@.po.mo: 708251881Speter@GETTEXT_CODESET@ $(MSGFMT) $(MSGFMTFLAGS) -o $@ $< 709251881Speter 710251881Speter.rnc.rng: 711251881Speter @TRANG@ $< $@ 712251881Speter 713251881Speter.rnc.dtd: 714251881Speter @TRANG@ $< $@ 715251881Speter 716251881Speter.rnc.xsd: 717251881Speter @TRANG@ $< $@ 718251881Speter 719251881Speterinstall-docs: install-man 720251881Speter 721251881Spetermanroot = $(mandir)/man 722251881Speterinstall-man: 723251881Speter @list='$(MANPAGES)'; \ 724251881Speter for i in $$list; do \ 725251881Speter if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ 726251881Speter else file=$$i; fi; \ 727251881Speter ext=`echo $$i | sed -e 's/^.*\\.//'`; \ 728251881Speter $(MKDIR) $(DESTDIR)$(manroot)$$ext; \ 729251881Speter inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ 730251881Speter inst=`echo $$inst | sed -e 's/^.*\///'`; \ 731251881Speter inst=`echo $$inst`.$$ext; \ 732251881Speter echo "$(INSTALL_DATA) $$file $(DESTDIR)$(manroot)$$ext/$$inst"; \ 733251881Speter $(INSTALL_DATA) $$file $(DESTDIR)$(manroot)$$ext/$$inst; \ 734251881Speter done 735251881Speter 736251881Speterinstall-swig-py: install-swig-py-lib 737251881Speterinstall-swig-rb: install-swig-rb-lib 738251881Speter 739251881Speterclean-bindings: clean-swig clean-ctypes-python clean-javahl 740251881Speter 741251881Speterextraclean-bindings: clean-swig extraclean-swig-headers \ 742251881Speter extraclean-swig-py extraclean-swig-rb \ 743251881Speter extraclean-swig-pl \ 744251881Speter clean-ctypes-python clean-javahl \ 745251881Speter 746251881Speterclean-swig: clean-swig-headers clean-swig-py clean-swig-rb clean-swig-pl 747251881Speter @rm -f .swig_checked 748251881Speter 749251881SpeterEXTRACLEAN_SWIG_HEADERS=rm -f $(SWIG_SRC_DIR)/proxy/*.swg 750251881Speter 751251881Speterclean-swig-headers: 752251881Speter if test -z "$(RELEASE_MODE)"; then \ 753251881Speter $(EXTRACLEAN_SWIG_HEADERS); \ 754251881Speter fi 755251881Speter 756251881Speterextraclean-swig-headers: clean-swig-headers 757251881Speter $(EXTRACLEAN_SWIG_HEADERS) 758251881Speter 759251881Speter$(SWIG_PL_DIR)/native/Makefile.PL: $(SWIG_SRC_DIR)/perl/native/Makefile.PL.in 760251881Speter ./config.status subversion/bindings/swig/perl/native/Makefile.PL 761251881Speter 762251881Speter$(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL 763251881Speter cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL 764251881Speter 765251881Speter# There is a "readlink -f" command on some systems for the same purpose, 766251881Speter# but it's not as portable (e.g. Mac OS X doesn't have it). These should 767251881Speter# only be used where Python/Perl are known to be available. 768251881SpeterREADLINK_PY=$(PYTHON) -c 'import sys,os; print(os.path.realpath(sys.argv[1]))' 769251881SpeterREADLINK_PL=$(PERL) -e 'use Cwd; print Cwd::realpath(shift)' 770251881Speter 771251881Speterswig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \ 772251881Speter $(SWIG_PL_DIR)/native/Makefile 773251881Speterswig-pl: $(swig-pl_DEPS) 774251881Speter if test "`$(READLINK_PL) $(SWIG_PL_DIR)`" != "`$(READLINK_PL) $(SWIG_PL_SRC_DIR)`"; then \ 775251881Speter ln -sf $(SWIG_PL_SRC_DIR)/native/*.c $(SWIG_PL_DIR)/native; \ 776251881Speter fi 777251881Speter cd $(SWIG_PL_DIR)/native; $(MAKE) OPTIMIZE="" OTHERLDFLAGS="$(SWIG_LDFLAGS)" 778251881Speter 779251881Spetercheck-swig-pl: swig-pl swig-pl-lib 780251881Speter cd $(SWIG_PL_DIR)/native; $(MAKE) test 781251881Speter 782251881Speterinstall-swig-pl: swig-pl install-swig-pl-lib 783251881Speter cd $(SWIG_PL_DIR)/native; $(MAKE) install 784251881Speter 785251881SpeterEXTRACLEAN_SWIG_PL=rm -f $(SWIG_PL_SRC_DIR)/native/svn_*.c \ 786251881Speter $(SWIG_PL_SRC_DIR)/native/core.c 787251881Speter 788251881Speter# Running Makefile.PL at this point *fails* (cannot find ..../.libs) so if the 789251881Speter# Makefile does not exist, DO NOT try to make it. But, if it doesn't exist, 790251881Speter# then the directory is probably clean anyway. 791251881Speterclean-swig-pl: 792251881Speter if test -z "$(RELEASE_MODE)"; then \ 793251881Speter $(EXTRACLEAN_SWIG_PL); \ 794251881Speter fi 795251881Speter for d in $(SWIG_PL_DIR)/libsvn_swig_perl; \ 796251881Speter do \ 797251881Speter cd $$d; \ 798251881Speter rm -rf *.lo *.la *.o .libs; \ 799251881Speter done 800251881Speter if [ -f "$(SWIG_PL_DIR)/native/Makefile" ]; then \ 801251881Speter cd $(SWIG_PL_DIR)/native; $(MAKE) clean; \ 802251881Speter fi 803251881Speter 804251881Speterextraclean-swig-pl: clean-swig-pl 805251881Speter $(EXTRACLEAN_SWIG_PL) 806251881Speter 807251881Speter$(SWIG_PY_DIR)/libsvn: 808251881Speter mkdir $(SWIG_PY_DIR)/libsvn 809251881Speter 810251881Spetercopy-swig-py: autogen-swig-py $(SWIG_PY_DIR)/libsvn 811251881Speter @for f in $(SWIG_PY_SRC_DIR)/*.py $(SWIG_PY_DIR)/*.py; do \ 812251881Speter ! [ -f "$$f" ] || cp -pf $$f $(SWIG_PY_DIR)/libsvn; \ 813251881Speter done 814251881Speter @touch $(SWIG_PY_DIR)/libsvn/__init__.py 815251881Speter 816251881Speterswig-py: autogen-swig-py copy-swig-py 817251881Speter 818251881Spetercheck-swig-py: swig-py 819251881Speter $(TEST_SHLIB_VAR_SWIG_PY) \ 820251881Speter cd $(SWIG_PY_DIR); \ 821251881Speter $(PYTHON) $(SWIG_PY_SRC_DIR)/tests/run_all.py 822251881Speter 823251881SpeterEXTRACLEAN_SWIG_PY=rm -rf $(SWIG_PY_SRC_DIR)/svn_*.c $(SWIG_PY_SRC_DIR)/core.c \ 824251881Speter $(SWIG_PY_SRC_DIR)/[a-z]*.py 825251881Speterclean-swig-py: 826251881Speter rm -rf $(SWIG_PY_DIR)/libsvn 827251881Speter if test -z "$(RELEASE_MODE)"; then \ 828251881Speter $(EXTRACLEAN_SWIG_PY); \ 829251881Speter fi 830251881Speter for d in $(SWIG_PY_DIR) $(SWIG_PY_DIR)/libsvn_swig_py; \ 831251881Speter do \ 832251881Speter cd $$d && rm -rf *.lo *.la *.o *.pyc .libs; \ 833251881Speter done 834251881Speter find $(SWIG_PY_SRC_DIR) $(SWIG_PY_DIR) -name "*.pyc" -exec rm {} ';' 835251881Speter 836251881Speterextraclean-swig-py: clean-swig-py 837251881Speter $(EXTRACLEAN_SWIG_PY) 838251881Speter 839251881Speterswig-rb: autogen-swig-rb 840251881Speter 841251881Spetercheck-swig-rb: swig-rb svnserve 842251881Speter $(TEST_SHLIB_VAR_SWIG_RB) \ 843251881Speter cd $(SWIG_RB_DIR); \ 844251881Speter if [ "$(RUBY_MAJOR)" -eq 1 -a "$(RUBY_MINOR)" -lt 9 ] ; then \ 845251881Speter $(RUBY) -I $(SWIG_RB_SRC_DIR) \ 846251881Speter $(SWIG_RB_SRC_DIR)/test/run-test.rb \ 847251881Speter --verbose=$(SWIG_RB_TEST_VERBOSE); \ 848251881Speter else \ 849251881Speter $(RUBY) -I $(SWIG_RB_SRC_DIR) \ 850251881Speter $(SWIG_RB_SRC_DIR)/test/run-test.rb; \ 851251881Speter fi 852251881Speter 853251881SpeterEXTRACLEAN_SWIG_RB=rm -f $(SWIG_RB_SRC_DIR)/svn_*.c $(SWIG_RB_SRC_DIR)/core.c 854251881Speter 855251881Speterclean-swig-rb: 856251881Speter rm -rf $(SWIG_RB_DIR)/test/repos $(SWIG_RB_DIR)/test/wc 857251881Speter if test -z "$(RELEASE_MODE)"; then \ 858251881Speter $(EXTRACLEAN_SWIG_RB); \ 859251881Speter fi 860251881Speter for d in $(SWIG_RB_DIR) $(SWIG_RB_DIR)/libsvn_swig_ruby; \ 861251881Speter do \ 862251881Speter cd $$d; \ 863251881Speter rm -rf *.lo *.la *.o .libs; \ 864251881Speter done 865251881Speter 866251881Speterextraclean-swig-rb: clean-swig-rb 867251881Speter $(EXTRACLEAN_SWIG_RB) 868251881Speter 869251881Speterinstall-swig-rb-doc: 870251881Speter $(RDOC) --all --ri --op "$(SWIG_RB_RI_DATADIR)" "$(SWIG_RB_SRC_DIR)/svn" 871251881Speter 872251881Speter# ctypes-python make targets 873251881Speterctypes-python: local-all 874251881Speter $(SHELL) $(abs_srcdir)/build/run_ctypesgen.sh "$(LT_EXECUTE)" "$(CPPFLAGS)" "$(EXTRA_CTYPES_LDFLAGS)" "$(PYTHON)" "$(CTYPESGEN)" "$(abs_srcdir)" "$(abs_builddir)" "$(libdir)" "$(SVN_APR_CONFIG)" "$(SVN_APRUTIL_CONFIG)" 875251881Speter 876251881Speterinstall-ctypes-python: ctypes-python 877251881Speter cd $(CTYPES_PYTHON_SRC_DIR); \ 878251881Speter $(PYTHON) setup.py install --prefix="$(DESTDIR)$(prefix)" 879251881Speter 880251881Spetercheck-ctypes-python: ctypes-python 881251881Speter cd $(CTYPES_PYTHON_SRC_DIR); \ 882251881Speter $(LT_EXECUTE) $(PYTHON) test/run_all.py 883251881Speter 884251881Speter# If any of those files exists, run ctypes' 'setup.py clean'. We don't run 885251881Speter# it otherwise because it spams stdout+stderr; see r1479326. 886251881Speterclean-ctypes-python: 887251881Speter cd $(CTYPES_PYTHON_SRC_DIR); \ 888251881Speter for b in build csvn/core/functions.py svn_all.py svn_all2.py ; do \ 889251881Speter if [ -e "$$b" ] ; then \ 890251881Speter $(PYTHON) setup.py clean --all; \ 891251881Speter break; \ 892251881Speter fi; \ 893251881Speter done 894251881Speter 895251881Speter# manually describe a dependency, which we won't otherwise detect 896251881Spetersubversion/libsvn_wc/wc-queries.h: $(abs_srcdir)/subversion/libsvn_wc/wc-metadata.sql 897251881Spetersubversion/libsvn_wc/wc-queries.h: $(abs_srcdir)/subversion/libsvn_wc/wc-checks.sql 898251881Speter 899251881Speter# Compatibility symlink. 900251881Speter# This runs after the target of the same name in build-outputs.mk. 901251881SpeterINSTALL_EXTRA_TOOLS=\ 902251881Speter $(MKDIR) $(DESTDIR)$(bindir); \ 903251881Speter test -n "$$SVN_SVNMUCC_IS_SVNSYITF" && \ 904251881Speter ln -sf svnmucc$(EXEEXT) $(DESTDIR)$(bindir)/svnsyitf$(EXEEXT); \ 905251881Speter if test "$(DESTDIR)$(bindir)" != "$(DESTDIR)$(toolsdir)"; then \ 906253734Speter ln -sf $(bindir)/svnmucc$(EXEEXT) $(DESTDIR)$(toolsdir)/svnmucc$(EXEEXT); \ 907251881Speter fi 908