s4-python: Move dnspython to lib/, like the other Python modules
authorJelmer Vernooij <jelmer@samba.org>
Mon, 29 Mar 2010 14:08:11 +0000 (16:08 +0200)
committerJelmer Vernooij <jelmer@samba.org>
Mon, 29 Mar 2010 16:05:29 +0000 (18:05 +0200)
This also avoids it from being installed if it's already present on the
system.

116 files changed:
lib/dnspython/ChangeLog [moved from source4/scripting/python/samba_external/dnspython/ChangeLog with 100% similarity]
lib/dnspython/LICENSE [moved from source4/scripting/python/samba_external/dnspython/LICENSE with 100% similarity]
lib/dnspython/PKG-INFO [moved from source4/scripting/python/samba_external/dnspython/PKG-INFO with 100% similarity]
lib/dnspython/README [moved from source4/scripting/python/samba_external/dnspython/README with 100% similarity]
lib/dnspython/TODO [moved from source4/scripting/python/samba_external/dnspython/TODO with 100% similarity]
lib/dnspython/dns/__init__.py [moved from source4/scripting/python/samba_external/dnspython/dns/__init__.py with 100% similarity]
lib/dnspython/dns/dnssec.py [moved from source4/scripting/python/samba_external/dnspython/dns/dnssec.py with 100% similarity]
lib/dnspython/dns/e164.py [moved from source4/scripting/python/samba_external/dnspython/dns/e164.py with 100% similarity]
lib/dnspython/dns/edns.py [moved from source4/scripting/python/samba_external/dnspython/dns/edns.py with 100% similarity]
lib/dnspython/dns/entropy.py [moved from source4/scripting/python/samba_external/dnspython/dns/entropy.py with 100% similarity]
lib/dnspython/dns/exception.py [moved from source4/scripting/python/samba_external/dnspython/dns/exception.py with 100% similarity]
lib/dnspython/dns/flags.py [moved from source4/scripting/python/samba_external/dnspython/dns/flags.py with 100% similarity]
lib/dnspython/dns/inet.py [moved from source4/scripting/python/samba_external/dnspython/dns/inet.py with 100% similarity]
lib/dnspython/dns/ipv4.py [moved from source4/scripting/python/samba_external/dnspython/dns/ipv4.py with 100% similarity]
lib/dnspython/dns/ipv6.py [moved from source4/scripting/python/samba_external/dnspython/dns/ipv6.py with 100% similarity]
lib/dnspython/dns/message.py [moved from source4/scripting/python/samba_external/dnspython/dns/message.py with 100% similarity]
lib/dnspython/dns/name.py [moved from source4/scripting/python/samba_external/dnspython/dns/name.py with 100% similarity]
lib/dnspython/dns/namedict.py [moved from source4/scripting/python/samba_external/dnspython/dns/namedict.py with 100% similarity]
lib/dnspython/dns/node.py [moved from source4/scripting/python/samba_external/dnspython/dns/node.py with 100% similarity]
lib/dnspython/dns/opcode.py [moved from source4/scripting/python/samba_external/dnspython/dns/opcode.py with 100% similarity]
lib/dnspython/dns/query.py [moved from source4/scripting/python/samba_external/dnspython/dns/query.py with 100% similarity]
lib/dnspython/dns/rcode.py [moved from source4/scripting/python/samba_external/dnspython/dns/rcode.py with 100% similarity]
lib/dnspython/dns/rdata.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdata.py with 100% similarity]
lib/dnspython/dns/rdataclass.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdataclass.py with 100% similarity]
lib/dnspython/dns/rdataset.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdataset.py with 100% similarity]
lib/dnspython/dns/rdatatype.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdatatype.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/AFSDB.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/AFSDB.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/CERT.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/CERT.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/CNAME.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/CNAME.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/DLV.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/DLV.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/DNAME.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/DNAME.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/DNSKEY.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/DNSKEY.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/DS.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/DS.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/GPOS.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/GPOS.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/HINFO.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/HINFO.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/HIP.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/HIP.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/ISDN.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/ISDN.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/KEY.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/KEY.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/LOC.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/LOC.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/MX.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/MX.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/NS.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/NS.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/NSEC.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/NSEC.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/NSEC3.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/NSEC3.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/NSEC3PARAM.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/NSEC3PARAM.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/NXT.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/NXT.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/PTR.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/PTR.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/RP.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/RP.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/RRSIG.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/RRSIG.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/RT.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/RT.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/SIG.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/SIG.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/SOA.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/SOA.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/SPF.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/SPF.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/SSHFP.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/SSHFP.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/TXT.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/TXT.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/X25.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/X25.py with 100% similarity]
lib/dnspython/dns/rdtypes/ANY/__init__.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/ANY/__init__.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/A.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/A.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/AAAA.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/AAAA.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/APL.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/APL.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/DHCID.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/DHCID.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/IPSECKEY.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/IPSECKEY.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/KX.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/KX.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/NAPTR.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/NAPTR.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/NSAP.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/NSAP.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/NSAP_PTR.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/NSAP_PTR.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/PX.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/PX.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/SRV.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/SRV.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/WKS.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/WKS.py with 100% similarity]
lib/dnspython/dns/rdtypes/IN/__init__.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/IN/__init__.py with 100% similarity]
lib/dnspython/dns/rdtypes/__init__.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/__init__.py with 100% similarity]
lib/dnspython/dns/rdtypes/dsbase.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/dsbase.py with 100% similarity]
lib/dnspython/dns/rdtypes/keybase.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/keybase.py with 100% similarity]
lib/dnspython/dns/rdtypes/mxbase.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/mxbase.py with 100% similarity]
lib/dnspython/dns/rdtypes/nsbase.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/nsbase.py with 100% similarity]
lib/dnspython/dns/rdtypes/sigbase.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/sigbase.py with 100% similarity]
lib/dnspython/dns/rdtypes/txtbase.py [moved from source4/scripting/python/samba_external/dnspython/dns/rdtypes/txtbase.py with 100% similarity]
lib/dnspython/dns/renderer.py [moved from source4/scripting/python/samba_external/dnspython/dns/renderer.py with 100% similarity]
lib/dnspython/dns/resolver.py [moved from source4/scripting/python/samba_external/dnspython/dns/resolver.py with 100% similarity]
lib/dnspython/dns/reversename.py [moved from source4/scripting/python/samba_external/dnspython/dns/reversename.py with 100% similarity]
lib/dnspython/dns/rrset.py [moved from source4/scripting/python/samba_external/dnspython/dns/rrset.py with 100% similarity]
lib/dnspython/dns/set.py [moved from source4/scripting/python/samba_external/dnspython/dns/set.py with 100% similarity]
lib/dnspython/dns/tokenizer.py [moved from source4/scripting/python/samba_external/dnspython/dns/tokenizer.py with 100% similarity]
lib/dnspython/dns/tsig.py [moved from source4/scripting/python/samba_external/dnspython/dns/tsig.py with 100% similarity]
lib/dnspython/dns/tsigkeyring.py [moved from source4/scripting/python/samba_external/dnspython/dns/tsigkeyring.py with 100% similarity]
lib/dnspython/dns/ttl.py [moved from source4/scripting/python/samba_external/dnspython/dns/ttl.py with 100% similarity]
lib/dnspython/dns/update.py [moved from source4/scripting/python/samba_external/dnspython/dns/update.py with 100% similarity]
lib/dnspython/dns/version.py [moved from source4/scripting/python/samba_external/dnspython/dns/version.py with 100% similarity]
lib/dnspython/dns/zone.py [moved from source4/scripting/python/samba_external/dnspython/dns/zone.py with 100% similarity]
lib/dnspython/examples/ddns.py [moved from source4/scripting/python/samba_external/dnspython/examples/ddns.py with 100% similarity]
lib/dnspython/examples/e164.py [moved from source4/scripting/python/samba_external/dnspython/examples/e164.py with 100% similarity]
lib/dnspython/examples/mx.py [moved from source4/scripting/python/samba_external/dnspython/examples/mx.py with 100% similarity]
lib/dnspython/examples/name.py [moved from source4/scripting/python/samba_external/dnspython/examples/name.py with 100% similarity]
lib/dnspython/examples/reverse.py [moved from source4/scripting/python/samba_external/dnspython/examples/reverse.py with 100% similarity]
lib/dnspython/examples/reverse_name.py [moved from source4/scripting/python/samba_external/dnspython/examples/reverse_name.py with 100% similarity]
lib/dnspython/examples/xfr.py [moved from source4/scripting/python/samba_external/dnspython/examples/xfr.py with 100% similarity]
lib/dnspython/setup.py [moved from source4/scripting/python/samba_external/dnspython/setup.py with 100% similarity]
lib/dnspython/tests/Makefile [moved from source4/scripting/python/samba_external/dnspython/tests/Makefile with 100% similarity]
lib/dnspython/tests/bugs.py [moved from source4/scripting/python/samba_external/dnspython/tests/bugs.py with 100% similarity]
lib/dnspython/tests/example [moved from source4/scripting/python/samba_external/dnspython/tests/example with 100% similarity]
lib/dnspython/tests/example1.good [moved from source4/scripting/python/samba_external/dnspython/tests/example1.good with 100% similarity]
lib/dnspython/tests/example2.good [moved from source4/scripting/python/samba_external/dnspython/tests/example2.good with 100% similarity]
lib/dnspython/tests/flags.py [moved from source4/scripting/python/samba_external/dnspython/tests/flags.py with 100% similarity]
lib/dnspython/tests/message.py [moved from source4/scripting/python/samba_external/dnspython/tests/message.py with 100% similarity]
lib/dnspython/tests/name.py [moved from source4/scripting/python/samba_external/dnspython/tests/name.py with 100% similarity]
lib/dnspython/tests/namedict.py [moved from source4/scripting/python/samba_external/dnspython/tests/namedict.py with 100% similarity]
lib/dnspython/tests/ntoaaton.py [moved from source4/scripting/python/samba_external/dnspython/tests/ntoaaton.py with 100% similarity]
lib/dnspython/tests/rdtypeandclass.py [moved from source4/scripting/python/samba_external/dnspython/tests/rdtypeandclass.py with 100% similarity]
lib/dnspython/tests/resolver.py [moved from source4/scripting/python/samba_external/dnspython/tests/resolver.py with 100% similarity]
lib/dnspython/tests/rrset.py [moved from source4/scripting/python/samba_external/dnspython/tests/rrset.py with 100% similarity]
lib/dnspython/tests/set.py [moved from source4/scripting/python/samba_external/dnspython/tests/set.py with 100% similarity]
lib/dnspython/tests/tokenizer.py [moved from source4/scripting/python/samba_external/dnspython/tests/tokenizer.py with 100% similarity]
lib/dnspython/tests/update.py [moved from source4/scripting/python/samba_external/dnspython/tests/update.py with 100% similarity]
lib/dnspython/tests/zone.py [moved from source4/scripting/python/samba_external/dnspython/tests/zone.py with 100% similarity]
source4/scripting/bin/samba_dnsupdate
source4/scripting/python/config.mk
source4/scripting/python/samba/external.py

index 4d54ab4f4cb57430b1b973f6b5b5161cdfc4b259..fab112e2bd9ad3f87a5fd823c66a9808b8c78cc6 100755 (executable)
@@ -18,7 +18,6 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-import getopt
 import os
 import fcntl
 import sys
@@ -33,15 +32,14 @@ sys.path.insert(0, "bin/python")
 
 import samba
 import optparse
-from samba import getopt as options, Ldb
-from ldb import SCOPE_SUBTREE, SCOPE_BASE, LdbError
-import ldb
+from samba import getopt as options
+from ldb import SCOPE_BASE
 from samba import glue
 from samba.auth import system_session
 from samba.samdb import SamDB
 import samba.external
 
-resolver = samba.external.samba_external_dns_resolver()
+resolver = samba.external.dns_resolver()
 
 default_ttl = 900
 
index c1e1c5de82d5b013b8c2d008ea5c92654dda45c7..0b495260bd4e88eac15e314fc8ae42ef0016a9c3 100644 (file)
@@ -30,7 +30,7 @@ $(eval $(foreach pyfile, $(_PY_FILES),$(call python_py_module_template,$(patsubs
 EPYDOC_OPTIONS = --no-private --url http://www.samba.org/ --no-sourcecode
 
 epydoc:: pythonmods
-       PYTHONPATH=$(pythonbuilddir):../lib/subunit/python epydoc $(EPYDOC_OPTIONS) samba tdb ldb subunit testtools
+       PYTHONPATH=$(pythonbuilddir):../lib/subunit/python epydoc $(EPYDOC_OPTIONS) samba tdb ldb subunit testtools dnspython
 
 install:: installpython
 
index eca910b794dda010bfbfa446c70d48911e842d17..40d13fd7e5d0b72484815eda86e5f1ca18864d4c 100644 (file)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 
-import sys, os
+import os, sys
 
-def samba_find_external(directory):
-    '''insert into out module search path the path to an
-       external library'''
-    for p in sys.path:
-        dir = os.path.join(p, directory)
-        if os.path.isdir(dir):
-            sys.path.insert(0, dir)
-            return
-
-    # finally try in the local directory, to handle in-tree testing
-    dir = os.path.join("scripting/python", directory)
-    if os.path.isdir(dir):
-        sys.path.insert(0, dir)
-        return
-
-    print "Failed to find external python library %s" % directory
-    raise
-
-
-def samba_external_dns_resolver():
+def dns_resolver():
     '''try and import the dns.resolver library, and if it fails
     then use a local copy from the external directory'''
 
     try:
         import dns.resolver as dns
-    except:
-        samba_find_external("samba_external/dnspython")
+    except ImportError:
+        sys.path.insert(0, os.path.join(os.path.dirname(__file__), "../../../../lib/dnspython"))
         import dns.resolver as dns
     return dns