# HG changeset patch
# User Seyf <25712100+SeyfSV@users.noreply.github.com>
# Date 1595573446 -10800
#      Fri Jul 24 09:50:46 2020 +0300
# Node ID f0ffaca937924bf60442a070d363675ba1cbe726
# Parent  9eec9adb34798e7490b853de1925a67ff3f61c33
GH #220 Fix MQ_FILE_PATH presence

diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -37,15 +37,15 @@
     """ Windows settings.
     """
     if bits == 64:
-        library_dirs = [r'c:\Program Files (x86)\IBM\WebSphere MQ\tools\Lib64',
-                        r'{}\tools\Lib64'.format(os.environ['MQ_FILE_PATH'])]
-        include_dirs = [r'c:\Program Files (x86)\IBM\WebSphere MQ\tools\c\include',
-                        r'{}\tools\c\include'.format(os.environ['MQ_FILE_PATH'])]
+        library_dirs = [r'{}\tools\Lib64'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        r'c:\Program Files (x86)\IBM\WebSphere MQ\tools\Lib64']
+        include_dirs = [r'{}\tools\c\include'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        r'c:\Program Files (x86)\IBM\WebSphere MQ\tools\c\include']
     else:
-        library_dirs = [r'c:\Program Files\IBM\WebSphere MQ\Tools\Lib',
-                        r'{}\tools\Lib'.format(os.environ['MQ_FILE_PATH'])]
-        include_dirs = [r'c:\Program Files\IBM\WebSphere MQ\tools\c\include',
-                        r'{}\tools\c\include'.format(os.environ['MQ_FILE_PATH'])]
+        library_dirs = [r'{}\tools\Lib'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        r'c:\Program Files\IBM\WebSphere MQ\Tools\Lib']
+        include_dirs = [r'{}\tools\c\include'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        r'c:\Program Files\IBM\WebSphere MQ\tools\c\include']
 
     if bindings_mode:
         libraries = ['mqm']
@@ -61,14 +61,17 @@
     """ SunOS and z/Linux settings.
     """
     if bits == 64:
-        library_dirs = ['/opt/mqm/lib64']
+        library_dirs = ['{}/lib64'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        '/opt/mqm/lib64']
     else:
-        library_dirs = ['/opt/mqm/lib']
+        library_dirs = ['{}/lib'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        '/opt/mqm/lib']
 
-    include_dirs = ['/opt/mqm/inc']
+    include_dirs = ['{}/inc'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                    '/opt/mqm/inc']
 
     if bindings_mode:
-        libraries = ['mqm','mqmcs','mqmzse']
+        libraries = ['mqm', 'mqmcs', 'mqmzse']
     else:
         libraries = ['mqic']
 
@@ -78,11 +81,14 @@
     """ AIX settings.
     """
     if bits == 64:
-        library_dirs = ['/usr/mqm/lib64']
+        library_dirs = ['{}/lib64'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        '/usr/mqm/lib64']
     else:
-        library_dirs = ['/usr/mqm/lib']
+        library_dirs = ['{}/lib'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        '/usr/mqm/lib']
 
-    include_dirs = ['/usr/mqm/inc']
+    include_dirs = ['{}/inc'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                    '/usr/mqm/inc']
 
     if bindings_mode:
         libraries = ['mqm_r']
@@ -95,11 +101,14 @@
     """ Generic UNIX, including Linux, settings.
     """
     if bits == 64:
-        library_dirs = ['/opt/mqm/lib64']
+        library_dirs = ['{}/lib64'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        '/opt/mqm/lib64']
     else:
-        library_dirs = ['/opt/mqm/lib']
+        library_dirs = ['{}/lib'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                        '/opt/mqm/lib']
 
-    include_dirs = ['/opt/mqm/inc']
+    include_dirs = ['{}/inc'.format(os.environ.get('MQ_FILE_PATH', '.')),
+                    '/opt/mqm/inc']
 
     if bindings_mode:
         libraries = ['mqm_r']
@@ -146,8 +155,9 @@
 else:
 
     has_generic_lib = os.path.exists('/opt/mqm/lib64') if bits == 64 else os.path.exists('/opt/mqm/lib')
+    has_mq_file_path = os.environ.get('MQ_FILE_PATH', False)
 
-    if has_generic_lib:
+    if has_generic_lib or has_mq_file_path:
         library_dirs, include_dirs, libraries = get_generic_unix_settings()
 
     else: