1. Restore the rest of Python IDLE setup.py Rev 1.4 (Python SF 634078)
   (Loewis) which uses 'SRCDIR' (if available) in package dir path.
2. Merge Python IDLE setup.py Rev 1.5 (Loewis) to allow installation
   from the build directory. IDLEfork SF Patch 668998 (Loewis)
diff --git a/Lib/idlelib/setup.py b/Lib/idlelib/setup.py
index 060f8ff..4269273 100644
--- a/Lib/idlelib/setup.py
+++ b/Lib/idlelib/setup.py
@@ -9,8 +9,6 @@
 # Name of 'package' to be installed in site-packages:
 pkgname = idle_name + "lib"
 
-pkg_dir = "."
-
 try:
     pos = sys.argv.index("--check-tkinter")
 except ValueError:
@@ -23,6 +21,11 @@
         print >>sys.stderr, "Cannot install IDLE without _tkinter"
         raise SystemExit
 
+try:
+    pkg_dir = os.path.join(os.environ['SRCDIR'], 'Tools', idle_name)
+except KeyError:
+    pkg_dir = "."
+
 # the normal build_py would not incorporate anything but .py files
 txt_files = ['extend.txt', 'help.txt', 'CREDITS.txt', 'HISTORY.txt',
              'INSTALL.txt', 'LICENSE.txt', 'NEWS.txt', 'README.txt']
@@ -30,7 +33,7 @@
               'config-keys.def', 'config-main.def']
 txt_files += [idle_name + '.bat', idle_name + '.pyw']
 
-Icons = glob.glob1("Icons","*.gif")
+Icons = glob.glob1(os.path.join(pkg_dir, "Icons"), "*.gif")
 
 class IDLE_Builder(build_py):
     def get_plain_outfile(self, build_dir, package, file):
@@ -52,7 +55,7 @@
                                              [pkgname, "Icons"], name)
             dir = os.path.dirname(outfile)
             self.mkpath(dir)
-            self.copy_file(os.path.join("Icons", name),
+            self.copy_file(os.path.join(pkg_dir, "Icons", name),
                            outfile, preserve_mode = 0)
 
     def get_source_files(self):