exports_files( ["scip-7.0.1/src/lpi/lpi_glop.cpp"], ) cc_library( name = "libscip", srcs = glob( [ "scip-7.0.1/src/*/*.c", ], exclude = [ "scip-7.0.1/src/lpi/lpi_*.c", "scip-7.0.1/src/tpi/tpi_*.c", "scip-7.0.1/src/nlpi/nlpi_filtersqp.c", "scip-7.0.1/src/nlpi/nlpi_worhp.c", "scip-7.0.1/src/scip/compr_xyz.c", "scip-7.0.1/src/scip/sorttpl.c", "scip-7.0.1/src/nlpi/exprinterpret_*.c", "scip-7.0.1/src/symmetry/compute_symmetry_*.cpp", ], ) + [ "scip-7.0.1/src/symmetry/compute_symmetry_bliss.cpp", "scip-7.0.1/src/nlpi/exprinterpret_none.c", "scip-7.0.1/src/tpi/tpi_tnycthrd.c", ], hdrs = glob([ "scip-7.0.1/src/*/*.h", "scip-7.0.1/src/*/*.hpp", "scip-7.0.1/src/scip/githash.c", "scip-7.0.1/src/scip/sorttpl.c", "scip-7.0.1/src/scip/buildflags.c", ]), copts = [ "-Wunknown-pragmas", "-fexceptions", "$(STACK_FRAME_UNLIMITED)", # src/scip/reader_cnf.c "-DSCIP_WITH_ZLIB", "-DWITH_SCIPDEF", "-DSCIP_ROUNDING_FE", "-DTPI_TNYC", # src/tpi/tpi_type_tny.h "-DSYM=bliss", # Compile in thead-safe mode (required since we use TPI_TNYC). Note, # one does not technically need to add this, as SCIP code always # uses syntax like "#ifndef NPARASCIP". But let's be explicit here. "-DPARASCIP", "-Iscip-7.0.1/src", "-Iscip-7.0.1/src/scip", ], defines = [ # Scip 7.0.1 optionally depends on scip/config.h and # scip/scip_export.h that are generated by build system. # # We need every library and binary that depends on SCIP libraries to # define this macro. That is why we use `defines' here instead of # `copts' or `local_defines'. "NO_CONFIG_HEADER", ], features = ["-parse_headers"], includes = [ "scip-7.0.1/src", ], visibility = ["//visibility:public"], deps = [ #"@cppad:cppad_includes", "@bliss//:libbliss", ], )