title: Python setup.py: How to get find_packages() to identify packages in subdirectories
body: <p>I'm trying to create a setup.py file where find_packages() recursively finds packages. In this example, <code>foo</code>, <code>bar</code>, and <code>baz</code> are all modules that I want to be installed and available on the python path. For example, I want to be able to do <code>import foo, bar, baz</code>.  The <code>bar-pack</code> and <code>foo-pack</code> are just regular non-python directories that will contain various support files/dirs (such as tests, READMEs, etc. specific to the respective module). </p>
  
  <pre><code>├── bar-pack
  │   └── bar
  │       └── __init__.py
  ├── baz
  │   └── __init__.py
  ├── foo-pack
  │   └── foo
  │       └── __init__.py
  ├── setup.py
  
  </code></pre>
  
  <p>Then say that setup.py is as follows:</p>
  
  <pre><code>from setuptools import setup, find_packages
  setup(
      name="mypackage",
      version="0.1",
      packages=find_packages(),
  )
  
  </code></pre>
  
  <p>However, when I run <code>python setup.py install</code> or <code>python setup.py sdist</code>, only the <code>baz</code> directory is identified and packaged. </p>
  
  <p>I can simplify it down further, and run the following command, but again, only <code>baz</code> is identified. </p>
  
  <pre><code>python -c "from setuptools import setup, find_packages; print(find_packages())"
  ['baz']
  </code></pre>
  
  <p>Do you know how I might extend the search path (or manually hard-code the search path) of the find_packages()?</p>
  
  <p>Any help is appreciated.</p>