diff --git a/bfps/__init__.py b/bfps/__init__.py index 324c42f63ce39e78b5c646f6062b7a702ffe9795..697cf3f7a01fa93c1f06782109a314d044899f4a 100644 --- a/bfps/__init__.py +++ b/bfps/__init__.py @@ -41,7 +41,7 @@ try: lib_dir = os.path.join(os.path.dirname(here), os.pardir) raise DistributionNotFound header_dir = os.path.join(os.path.join(dist_loc, 'bfps'), 'cpp') - lib_dir = _dist.location + lib_dir = os.path.join(dist_loc, 'bfps') __version__ = _dist.version except DistributionNotFound: __version__ = '' diff --git a/bfps/code.py b/bfps/code.py index bb4ba3da1b9187fe949e7680400c760d6d304e04..e8baced47d29812354974f3b8f44cda896b5ff67 100644 --- a/bfps/code.py +++ b/bfps/code.py @@ -140,10 +140,7 @@ class code(base): raise IOError('header not there:\n' + '{0}\n'.format(os.path.join(bfps.header_dir, 'base.hpp')) + '{0}\n'.format(bfps.dist_loc)) - if sys.version_info[0] == 2: - libraries = ['bfps'] - else: - libraries = ['bfps.cpython-{0}{1}m'.format(sys.version_info[0], sys.version_info[1])] + libraries = ['bfps'] libraries += bfps.install_info['libraries'] command_strings = ['g++'] diff --git a/setup.py b/setup.py index eeb4d047572d78d3236733a938d9093a6d169ba5..094c4fb5f83ea307aaedc29381bd192d2f7ae083 100644 --- a/setup.py +++ b/setup.py @@ -62,8 +62,8 @@ src_file_list = ['field_descriptor', header_list = ['cpp/base.hpp'] + ['cpp/' + fname + '.hpp' for fname in src_file_list] -with open('MANIFEST.in', 'w') as manifest_in_file: - manifest_in_file.write('include libbfps.a\n') +#with open('MANIFEST.in', 'w') as manifest_in_file: +# manifest_in_file.write('include libbfps.a\n') # for fname in ['bfps/cpp/' + fname + '.cpp' for fname in src_file_list] + header_list: # manifest_in_file.write('include {0}\n'.format(fname)) @@ -84,11 +84,13 @@ pickle.dump( open('bfps/install_info.pickle', 'wb'), protocol = 2) -from distutils.command.install import install as DistutilsInstall +from distutils.command.build import build as DistutilsBuild -class CustomInstall(DistutilsInstall): +class CustomBuild(DistutilsBuild): def run(self): # compile bfps library + if not os.path.isdir('obj'): + os.makedirs('obj') for fname in src_file_list: ifile = 'bfps/cpp/' + fname + '.cpp' ofile = 'obj/' + fname + '.o' @@ -106,14 +108,14 @@ class CustomInstall(DistutilsInstall): command_strings.append('-Ibfps/cpp/') print(' '.join(command_strings)) subprocess.call(command_strings) - command_strings = ['ar', 'rvs', 'libbfps.a'] + command_strings = ['ar', 'rvs', 'bfps/libbfps.a'] command_strings += ['obj/' + fname + '.o' for fname in src_file_list] #command_strings += ['-l' + libname for libname in libraries] #command_strings += ['-L' + ldir for ldir in library_dirs] #command_strings += ['-o', 'libbfps.a'] print(' '.join(command_strings)) subprocess.call(command_strings) - DistutilsInstall.run(self) + DistutilsBuild.run(self) from setuptools import setup @@ -121,7 +123,7 @@ setup( name = 'bfps', packages = ['bfps'], install_requires = ['numpy>=1.8', 'h5py>=2.2.1'], - cmdclass={'install': CustomInstall}, + cmdclass={'build': CustomBuild}, package_data = {'bfps': header_list + ['../machine_settings.py', 'libbfps.a', 'install_info.pickle']},