8000 restore deleted section in setup.cpy file. · PythonOptimizers/HSL.py@5ef1dd4 · GitHub
[go: up one dir, main page]

Skip to content

Commit 5ef1dd4

Browse files
committed
restore deleted section in setup.cpy file.
1 parent 887990c commit 5ef1dd4

File tree

4 files changed

+50
-342
lines changed

4 files changed

+50
-342
lines changed

config/setup.cpy

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,15 @@ def prepare_Cython_extensions_as_C_extensions(extensions):
5353

5454
# modify extension in place
5555
extension.sources = c_sources
56-
56+
5757
def files_exist(file_list):
5858
for fname in file_list:
5959
if os.path.isfile(fname) == False:
6060
return False
6161
return True
6262

6363
f2py_options = []
64-
64+
6565
hsl_config = ConfigParser.SafeConfigParser()
6666
hsl_config.read('site.cfg')
6767

@@ -98,7 +98,7 @@ metis_dir = hsl_config.get('METIS', 'metis_dir')
9898
metis_lib = hsl_config.get('METIS', 'metis_lib')
9999

100100
# OPTIONAL
101-
build_cysparse_ext = False
101+
build_cysparse_ext = False
102102
if hsl_config.has_section('CYSPARSE'):
103103
build_cysparse_ext = True
104104
cysparse_rootdir = hsl_config.get('CYSPARSE', 'cysparse_rootdir').split(os.pathsep)
@@ -128,13 +128,13 @@ lapack_info = get_info('lapack_opt', 0)
128128
if not lapack_info:
129129
print 'No lapack info found'
130130

131-
131+
132132
########################################################################################################################
133133
# EXTENSIONS
134134
########################################################################################################################
135135
include_dirs = [numpy_include, 'include', '.']
136136

137-
## Extensions using Fortran codes
137+
## Extensions using Fortran codes
138138

139139
# Relevant files for building MA27 extension.
140140
ma27_src = ['fd05ad.f', 'ma27ad.f']
@@ -147,24 +147,34 @@ ma27_sources += [os.path.join('hsl', 'solvers', 'src', name) for name in libma27
147147
pyma27_sources = [os.path.join('hsl', 'solvers', 'src', name) for name in pyma27_src]
148148

149149
if files_exist(ma27_sources):
150-
150+
151151
config.add_library(name='hsl_ma27',
152152
sources=ma27_sources,
153153
include_dirs=[hsl_rootdir, os.path.join('hsl', 'solvers', 'src')],)
154154

155-
155+
config.add_extension(name='solvers._pyma27',
156+
sources=pyma27_sources,
157+
libraries=['hsl_ma27'],
158+
include_dirs=['include', os.path.join('hsl','solvers','src')],)
156159

157160
# Build PyMA57
158161
ma57_src = ['ddeps.f', 'ma57d.f']
159162
ma57_sources = [os.path.join(hsl_rootdir, 'ma57d', name) for name in ma57_src]
163+
pyma57_src = ['ma57_lib.c', 'hsl_alloc.c', '_pyma57.c']
164+
pyma57_sources = [os.path.join('hsl','solvers','src',name) for name in pyma57_src]
160165

161166
if files_exist(ma57_sources):
162-
config.add_library(
163-
name='hsl_ma57',
164-
sources=ma57_sources,
165-
libraries=[metis_lib],
166-
library_dirs=[metis_dir],
167-
include_dirs=[hsl_rootdir, os.path.join('hsl', 'solvers', 'src')],)
167+
config.add_library(name='hsl_ma57',
168+
sources=ma57_sources,
169+
libraries=[metis_lib],
170+
library_dirs=[metis_dir],
171+
include_dirs=[hsl_rootdir, os.path.join('hsl', 'solvers', 'src')],)
172+
173+
config.add_extension(name='solvers._pyma57',
174+
sources=pyma57_sources,
175+
libraries=[metis_lib,'hsl_ma57'],
176+
library_dirs=[metis_dir],
177+
include_dirs=['include',os.path.join('hsl','solvers','src')],)
168178

169179
mc29_sources = [os.path.join(hsl_rootdir, 'mc29d', 'mc29d.f'),
170180
os.path.join('hsl', 'scaling', 'src', 'mc29.pyf')]
@@ -204,7 +214,7 @@ if not use_debug_symbols:
204214
else:
205215
ext_params['extra_compile_args'] = ["-g", '-std=c99', '-Wno-unused-function']
206216
ext_params['extra_link_args'] = ["-g"]
207-
217+
208218
context_ext_params = copy.deepcopy(ext_params)
209219
{% for index_type in index_list %}
210220
{% for element_type in type_list %}

config/setup.py

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,15 @@ def prepare_Cython_extensions_as_C_extensions(extensions):
5353

5454
# modify extension in place
5555
extension.sources = c_sources
56-
56+
5757
def files_exist(file_list):
5858
for fname in file_list:
5959
if os.path.isfile(fname) == False:
6060
return False
6161
return True
6262

6363
f2py_options = []
64-
64+
6565
hsl_config = ConfigParser.SafeConfigParser()
6666
hsl_config.read('site.cfg')
6767

@@ -98,7 +98,7 @@ def files_exist(file_list):
9898
metis_lib = hsl_config.get('METIS', 'metis_lib')
9999

100100
# OPTIONAL
101-
build_cysparse_ext = False
101+
build_cysparse_ext = False
102102
if hsl_config.has_section('CYSPARSE'):
103103
build_cysparse_ext = True
104104
cysparse_rootdir = hsl_config.get('CYSPARSE', 'cysparse_rootdir').split(os.pathsep)
@@ -128,13 +128,13 @@ def files_exist(file_list):
128128
if not lapack_info:
129129
print 'No lapack info found'
130130

131-
131+
132132
########################################################################################################################
133133
# EXTENSIONS
134134
########################################################################################################################
135135
include_dirs = [numpy_include, 'include', '.']
136136

137-
## Extensions using Fortran codes
137+
## Extensions using Fortran codes
138138

139139
# Relevant files for building MA27 extension.
140140
ma27_src = ['fd05ad.f', 'ma27ad.f']
@@ -147,24 +147,34 @@ def files_exist(file_list):
147147
pyma27_sources = [os.path.join('hsl', 'solvers', 'src', name) for name in pyma27_src]
148148

149149
if files_exist(ma27_sources):
150-
150+
151151
config.add_library(name='hsl_ma27',
152152
sources=ma27_sources,
153153
include_dirs=[hsl_rootdir, os.path.join('hsl', 'solvers', 'src')],)
154154

155-
155+
config.add_extension(name='solvers._pyma27',
156+
sources=pyma27_sources,
157+
libraries=['hsl_ma27'],
158+
include_dirs=['include', os.path.join('hsl','solvers','src')],)
156159

157160
# Build PyMA57
158161
ma57_src = ['ddeps.f', 'ma57d.f']
159162
ma57_sources = [os.path.join(hsl_rootdir, 'ma57d', name) for name in ma57_src]
163+
pyma57_src = ['ma57_lib.c', 'hsl_alloc.c', '_pyma57.c']
164+
pyma57_sources = [os.path.join('hsl','solvers','src',name) for name in pyma57_src]
160165

161166
if files_exist(ma57_sources):
162-
config.add_library(
163-
name='hsl_ma57',
164-
sources=ma57_sources,
165-
libraries=[metis_lib],
166-
library_dirs=[metis_dir],
167-
include_dirs=[hsl_rootdir, os.path.join('hsl', 'solvers', 'src')],)
167+
config.add_library(name='hsl_ma57',
168+
sources=ma57_sources,
169+
libraries=[metis_lib],
170+
library_dirs=[metis_dir],
171+
include_dirs=[hsl_rootdir, os.path.join('hsl', 'solvers', 'src')],)
172+
173+
config.add_extension(name='solvers._pyma57',
174+
sources=pyma57_sources,
175+
libraries=[metis_lib,'hsl_ma57'],
176+
library_dirs=[metis_dir],
177+
include_dirs=['include',os.path.join('hsl','solvers','src')],)
168178

169179
mc29_sources = [os.path.join(hsl_rootdir, 'mc29d', 'mc29d.f'),
170180
os.path.join('hsl', 'scaling', 'src', 'mc29.pyf')]
@@ -204,7 +214,7 @@ def files_exist(file_list):
204214
else:
205215
ext_params['extra_compile_args'] = ["-g", '-std=c99', '-Wno-unused-function']
206216
ext_params['extra_link_args'] = ["-g"]
207-
217+
208218
context_ext_params = copy.deepcopy(ext_params)
209219
cyma27_src_INT32_FLOAT64 = ['ma27_lib.c',
210220
'hsl_alloc.c',

examples/demo_sils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
# Example usage: python demo_ma27.py file1.mtx ... fileN.mtx
44
# where each fileK.mtx is in MatrixMarket format.
55

6-
from hsl.solvers.pyma27 import PyMa27Solver as LBLContext
7-
# from nlpy.linalg.pyma57 import PyMa57Context as LBLContext
6+
# from hsl.solvers.pyma27 import PyMa27Solver as LBLContext
7+
from hsl.solvers.pyma57 import PyMa57Solver as LBLContext
88
from pysparse import spmatrix
99
from nlpy.tools import norms
1010
from nlpy.tools.timing import cputime

0 commit comments

Comments
 (0)
0