title: Python distutils setup relative paths for package_dir
body: <p>I've looked here:<br>
  <a href="https://stackoverflow.com/questions/812242/how-can-i-get-my-setup-py-to-use-a-relative-path-to-my-files">How can I get my setup.py to use a relative path to my files?</a><br>
  and here:<br>
  <a href="https://stackoverflow.com/questions/2994396/python-distutils-does-not-include-data-files">python distutils does not include data_files</a></p>
  
  <p>and here:<br>
   <a href="https://stackoverflow.com/questions/17155804/confused-about-the-package-dir-and-packages-settings-in-setup-py">Confused about the package_dir and packages settings in setup.py</a>
  but found no love. </p>
  
  <p>I suspect that distutils doesn't support the directory structure I'm trying to use but would love confirmation and/or suggestion for how to improve. </p>
  
  <p>I have the following directory structure:  </p>
  
  <pre><code>/src  
  ├── user 
  ├── admin  
  │   ├── admin.py  
  │   ├── LICENSE.txt  
  │   ├── MANIFEST  
  │   ├── MANIFEST.in  
  │   ├── README.txt  
  │   └── setup.py  
  └── lib  
      ├── __init__.py  
      ├── __init__.pyc  
      ├── rcodes.py  
      ├── rcodes.pyc  
      ├── validation.py  
      └── validation.pyc  
  </code></pre>
  
  <p>Where several projects in src depend on the lib package. However, when trying to run the setup.py in /src/admin I can not include the lib dir in the final package (using setup.py sdist). </p>
  
  <p>Setup.py is as follows:
  from distutils.core import setup</p>
  
  <pre><code>setup(
  name='admin_server',
  version='0.0.0',
  author='Instamrkt',
  author_email='info@instamrkt.com',
  url='http://instamrkt.com',
  description='Instamrkt Admin Server',
  packages=['lib'],
  package_dir = {'lib': '../lib'},
  py_modules = [
  'admin',
  'lib.rcodes',
  'lib.validation'
  ],)
  </code></pre>
  
  <p>Which yields:  </p>
  
  <pre><code>[foozle@ip-172-31-36-251 admin]$ python setup.py sdist
  running sdist
  running check
  reading manifest template 'MANIFEST.in'
  writing manifest file 'MANIFEST'
  creating admin_server-0.0.0
  making hard links in admin_server-0.0.0...
  hard linking README.txt -&gt; admin_server-0.0.0
  hard linking admin.py -&gt; admin_server-0.0.0
  hard linking setup.py -&gt; admin_server-0.0.0
  Creating tar archive
  removing 'admin_server-0.0.0' (and everything under it)
  [foozle@ip-172-31-36-251 admin]$ tar tzf ./dist/admin_server-0.0.0.tar.gz
  admin_server-0.0.0/
  admin_server-0.0.0/PKG-INFO
  admin_server-0.0.0/admin.py
  admin_server-0.0.0/setup.py
  admin_server-0.0.0/README.txt
  </code></pre>
  
  <p>The package lib is missing. </p>
  
  <p>And just to be explicit I would like the same directory structure preserved in the package so that I can use lib in multiple distributions for different apps. </p>
  
  <p>Thanks!</p>