1import os
2from distutils.command.install_headers import install_headers as old_install_headers
3
4class install_headers (old_install_headers):
5
6    def run (self):
7        headers = self.distribution.headers
8        if not headers:
9            return
10
11        prefix = os.path.dirname(self.install_dir)
12        for header in headers:
13            if isinstance(header, tuple):
14                # Kind of a hack, but I don't know where else to change this...
15                if header[0] == 'numpy.core':
16                    header = ('numpy', header[1])
17                    if os.path.splitext(header[1])[1] == '.inc':
18                        continue
19                d = os.path.join(*([prefix]+header[0].split('.')))
20                header = header[1]
21            else:
22                d = self.install_dir
23            self.mkpath(d)
24            (out, _) = self.copy_file(header, d)
25            self.outfiles.append(out)
26