diff --git a/CHANGES b/CHANGES index 4aff1cb..aa3e018 100644 --- a/CHANGES +++ b/CHANGES @@ -7,6 +7,8 @@ - Added support for SyslogSuccess option - Rationalized logging to be much less verbose unless SyslogSuccess or debugLevel are set - default is generally start/stop/errors only + - Fixed install_requires so either dnspython (preferred if neither is + installed) or PyDNS satisfies the install requirements 0.9.4 2018-03-09 - Create PID directory if it is missing diff --git a/setup.py b/setup.py index 995fb3e..9effb55 100644 --- a/setup.py +++ b/setup.py @@ -22,6 +22,13 @@ import dkimpy_milter description = "Domain Keys Identified Mail (DKIM) signing/verifying milter for Postfix/Sendmail." +kw = {} # Work-around for lack of 'or' requires in setuptools. +try: + import DNS + kw['install_requires'] = ['dkimpy>=0.7', 'pymilter', 'authres>=1.1.0', 'PyNaCl', 'ipaddress', 'PyDNS'] +except ImportError: # If PyDNS is not installed, prefer dnspython + kw['install_requires'] = ['dkimpy>=0.7', 'pymilter', 'authres>=1.1.0', 'PyNaCl', 'ipaddress', 'dnspython'] + setup( name='dkimpy-milter', version=dkimpy_milter.__version__, @@ -55,6 +62,6 @@ setup( (os.path.join('/lib', 'systemd', 'system'), ['system/dkimpy-milter.service']),(os.path.join('/etc', 'init.d'), ['system/dkimpy-milter'])], - install_requires = ['dkimpy>=0.7', 'pymilter', 'authres>=1.1.0', 'PyNaCl', 'ipaddress', 'dnspython'], zip_safe = False, + **kw )