github.com/johnnyeven/libtools@v0.0.0-20191126065708-61829c1adf46/third_party/toolchains/preconfig/win_1803/py36/BUILD (about)

     1  licenses(["restricted"])
     2  
     3  package(default_visibility = ["//visibility:public"])
     4  
     5  # To build Python C/C++ extension on Windows, we need to link to python import library pythonXY.lib
     6  # See https://docs.python.org/3/extending/windows.html
     7  cc_import(
     8      name = "python_lib",
     9      interface_library = select({
    10          ":windows": ":python_import_lib",
    11          # A placeholder for Unix platforms which makes --no_build happy.
    12          "//conditions:default": "not-existing.lib",
    13      }),
    14      system_provided = 1,
    15  )
    16  
    17  cc_library(
    18      name = "python_headers",
    19      hdrs = [":python_include"],
    20      includes = ["python_include"],
    21      deps = select({
    22          ":windows": [":python_lib"],
    23          "//conditions:default": [],
    24      }),
    25  )
    26  
    27  cc_library(
    28      name = "numpy_headers",
    29      hdrs = [":numpy_include"],
    30      includes = ["numpy_include"],
    31  )
    32  
    33  config_setting(
    34      name = "windows",
    35      values = {"cpu": "x64_windows"},
    36      visibility = ["//visibility:public"],
    37  )
    38  
    39  genrule(
    40      name = "python_include",
    41      outs = [
    42          "python_include/Python-ast.h",
    43          "python_include/Python.h",
    44          "python_include/abstract.h",
    45          "python_include/accu.h",
    46          "python_include/asdl.h",
    47          "python_include/ast.h",
    48          "python_include/bitset.h",
    49          "python_include/bltinmodule.h",
    50          "python_include/boolobject.h",
    51          "python_include/bytearrayobject.h",
    52          "python_include/bytes_methods.h",
    53          "python_include/bytesobject.h",
    54          "python_include/cellobject.h",
    55          "python_include/ceval.h",
    56          "python_include/classobject.h",
    57          "python_include/code.h",
    58          "python_include/codecs.h",
    59          "python_include/compile.h",
    60          "python_include/complexobject.h",
    61          "python_include/datetime.h",
    62          "python_include/descrobject.h",
    63          "python_include/dictobject.h",
    64          "python_include/dtoa.h",
    65          "python_include/dynamic_annotations.h",
    66          "python_include/enumobject.h",
    67          "python_include/errcode.h",
    68          "python_include/eval.h",
    69          "python_include/fileobject.h",
    70          "python_include/fileutils.h",
    71          "python_include/floatobject.h",
    72          "python_include/frameobject.h",
    73          "python_include/funcobject.h",
    74          "python_include/genobject.h",
    75          "python_include/graminit.h",
    76          "python_include/grammar.h",
    77          "python_include/import.h",
    78          "python_include/intrcheck.h",
    79          "python_include/iterobject.h",
    80          "python_include/listobject.h",
    81          "python_include/longintrepr.h",
    82          "python_include/longobject.h",
    83          "python_include/marshal.h",
    84          "python_include/memoryobject.h",
    85          "python_include/metagrammar.h",
    86          "python_include/methodobject.h",
    87          "python_include/modsupport.h",
    88          "python_include/moduleobject.h",
    89          "python_include/namespaceobject.h",
    90          "python_include/node.h",
    91          "python_include/object.h",
    92          "python_include/objimpl.h",
    93          "python_include/odictobject.h",
    94          "python_include/opcode.h",
    95          "python_include/osdefs.h",
    96          "python_include/osmodule.h",
    97          "python_include/parsetok.h",
    98          "python_include/patchlevel.h",
    99          "python_include/pgen.h",
   100          "python_include/pgenheaders.h",
   101          "python_include/py_curses.h",
   102          "python_include/pyarena.h",
   103          "python_include/pyatomic.h",
   104          "python_include/pycapsule.h",
   105          "python_include/pyconfig.h",
   106          "python_include/pyctype.h",
   107          "python_include/pydebug.h",
   108          "python_include/pydtrace.h",
   109          "python_include/pyerrors.h",
   110          "python_include/pyexpat.h",
   111          "python_include/pyfpe.h",
   112          "python_include/pygetopt.h",
   113          "python_include/pyhash.h",
   114          "python_include/pylifecycle.h",
   115          "python_include/pymacconfig.h",
   116          "python_include/pymacro.h",
   117          "python_include/pymath.h",
   118          "python_include/pymem.h",
   119          "python_include/pyport.h",
   120          "python_include/pystate.h",
   121          "python_include/pystrcmp.h",
   122          "python_include/pystrhex.h",
   123          "python_include/pystrtod.h",
   124          "python_include/pythonrun.h",
   125          "python_include/pythread.h",
   126          "python_include/pytime.h",
   127          "python_include/rangeobject.h",
   128          "python_include/setobject.h",
   129          "python_include/sliceobject.h",
   130          "python_include/structmember.h",
   131          "python_include/structseq.h",
   132          "python_include/symtable.h",
   133          "python_include/sysmodule.h",
   134          "python_include/token.h",
   135          "python_include/traceback.h",
   136          "python_include/tupleobject.h",
   137          "python_include/typeslots.h",
   138          "python_include/ucnhash.h",
   139          "python_include/unicodeobject.h",
   140          "python_include/warnings.h",
   141          "python_include/weakrefobject.h",
   142      ],
   143      cmd = """
   144  cp -f "C:/Python36/include/Python-ast.h" "$(@D)/python_include/Python-ast.h" && cp -f "C:/Python36/include/Python.h" "$(@D)/python_include/Python.h" && cp -f "C:/Python36/include/abstract.h" "$(@D)/python_include/abstract.h" && cp -f "C:/Python36/include/accu.h" "$(@D)/python_include/accu.h" && cp -f "C:/Python36/include/asdl.h" "$(@D)/python_include/asdl.h" && cp -f "C:/Python36/include/ast.h" "$(@D)/python_include/ast.h" && cp -f "C:/Python36/include/bitset.h" "$(@D)/python_include/bitset.h" && cp -f "C:/Python36/include/bltinmodule.h" "$(@D)/python_include/bltinmodule.h" && cp -f "C:/Python36/include/boolobject.h" "$(@D)/python_include/boolobject.h" && cp -f "C:/Python36/include/bytearrayobject.h" "$(@D)/python_include/bytearrayobject.h" && cp -f "C:/Python36/include/bytes_methods.h" "$(@D)/python_include/bytes_methods.h" && cp -f "C:/Python36/include/bytesobject.h" "$(@D)/python_include/bytesobject.h" && cp -f "C:/Python36/include/cellobject.h" "$(@D)/python_include/cellobject.h" && cp -f "C:/Python36/include/ceval.h" "$(@D)/python_include/ceval.h" && cp -f "C:/Python36/include/classobject.h" "$(@D)/python_include/classobject.h" && cp -f "C:/Python36/include/code.h" "$(@D)/python_include/code.h" && cp -f "C:/Python36/include/codecs.h" "$(@D)/python_include/codecs.h" && cp -f "C:/Python36/include/compile.h" "$(@D)/python_include/compile.h" && cp -f "C:/Python36/include/complexobject.h" "$(@D)/python_include/complexobject.h" && cp -f "C:/Python36/include/datetime.h" "$(@D)/python_include/datetime.h" && cp -f "C:/Python36/include/descrobject.h" "$(@D)/python_include/descrobject.h" && cp -f "C:/Python36/include/dictobject.h" "$(@D)/python_include/dictobject.h" && cp -f "C:/Python36/include/dtoa.h" "$(@D)/python_include/dtoa.h" && cp -f "C:/Python36/include/dynamic_annotations.h" "$(@D)/python_include/dynamic_annotations.h" && cp -f "C:/Python36/include/enumobject.h" "$(@D)/python_include/enumobject.h" && cp -f "C:/Python36/include/errcode.h" "$(@D)/python_include/errcode.h" && cp -f "C:/Python36/include/eval.h" "$(@D)/python_include/eval.h" && cp -f "C:/Python36/include/fileobject.h" "$(@D)/python_include/fileobject.h" && cp -f "C:/Python36/include/fileutils.h" "$(@D)/python_include/fileutils.h" && cp -f "C:/Python36/include/floatobject.h" "$(@D)/python_include/floatobject.h" && cp -f "C:/Python36/include/frameobject.h" "$(@D)/python_include/frameobject.h" && cp -f "C:/Python36/include/funcobject.h" "$(@D)/python_include/funcobject.h" && cp -f "C:/Python36/include/genobject.h" "$(@D)/python_include/genobject.h" && cp -f "C:/Python36/include/graminit.h" "$(@D)/python_include/graminit.h" && cp -f "C:/Python36/include/grammar.h" "$(@D)/python_include/grammar.h" && cp -f "C:/Python36/include/import.h" "$(@D)/python_include/import.h" && cp -f "C:/Python36/include/intrcheck.h" "$(@D)/python_include/intrcheck.h" && cp -f "C:/Python36/include/iterobject.h" "$(@D)/python_include/iterobject.h" && cp -f "C:/Python36/include/listobject.h" "$(@D)/python_include/listobject.h" && cp -f "C:/Python36/include/longintrepr.h" "$(@D)/python_include/longintrepr.h" && cp -f "C:/Python36/include/longobject.h" "$(@D)/python_include/longobject.h" && cp -f "C:/Python36/include/marshal.h" "$(@D)/python_include/marshal.h" && cp -f "C:/Python36/include/memoryobject.h" "$(@D)/python_include/memoryobject.h" && cp -f "C:/Python36/include/metagrammar.h" "$(@D)/python_include/metagrammar.h" && cp -f "C:/Python36/include/methodobject.h" "$(@D)/python_include/methodobject.h" && cp -f "C:/Python36/include/modsupport.h" "$(@D)/python_include/modsupport.h" && cp -f "C:/Python36/include/moduleobject.h" "$(@D)/python_include/moduleobject.h" && cp -f "C:/Python36/include/namespaceobject.h" "$(@D)/python_include/namespaceobject.h" && cp -f "C:/Python36/include/node.h" "$(@D)/python_include/node.h" && cp -f "C:/Python36/include/object.h" "$(@D)/python_include/object.h" && cp -f "C:/Python36/include/objimpl.h" "$(@D)/python_include/objimpl.h" && cp -f "C:/Python36/include/odictobject.h" "$(@D)/python_include/odictobject.h" && cp -f "C:/Python36/include/opcode.h" "$(@D)/python_include/opcode.h" && cp -f "C:/Python36/include/osdefs.h" "$(@D)/python_include/osdefs.h" && cp -f "C:/Python36/include/osmodule.h" "$(@D)/python_include/osmodule.h" && cp -f "C:/Python36/include/parsetok.h" "$(@D)/python_include/parsetok.h" && cp -f "C:/Python36/include/patchlevel.h" "$(@D)/python_include/patchlevel.h" && cp -f "C:/Python36/include/pgen.h" "$(@D)/python_include/pgen.h" && cp -f "C:/Python36/include/pgenheaders.h" "$(@D)/python_include/pgenheaders.h" && cp -f "C:/Python36/include/py_curses.h" "$(@D)/python_include/py_curses.h" && cp -f "C:/Python36/include/pyarena.h" "$(@D)/python_include/pyarena.h" && cp -f "C:/Python36/include/pyatomic.h" "$(@D)/python_include/pyatomic.h" && cp -f "C:/Python36/include/pycapsule.h" "$(@D)/python_include/pycapsule.h" && cp -f "C:/Python36/include/pyconfig.h" "$(@D)/python_include/pyconfig.h" && cp -f "C:/Python36/include/pyctype.h" "$(@D)/python_include/pyctype.h" && cp -f "C:/Python36/include/pydebug.h" "$(@D)/python_include/pydebug.h" && cp -f "C:/Python36/include/pydtrace.h" "$(@D)/python_include/pydtrace.h" && cp -f "C:/Python36/include/pyerrors.h" "$(@D)/python_include/pyerrors.h" && cp -f "C:/Python36/include/pyexpat.h" "$(@D)/python_include/pyexpat.h" && cp -f "C:/Python36/include/pyfpe.h" "$(@D)/python_include/pyfpe.h" && cp -f "C:/Python36/include/pygetopt.h" "$(@D)/python_include/pygetopt.h" && cp -f "C:/Python36/include/pyhash.h" "$(@D)/python_include/pyhash.h" && cp -f "C:/Python36/include/pylifecycle.h" "$(@D)/python_include/pylifecycle.h" && cp -f "C:/Python36/include/pymacconfig.h" "$(@D)/python_include/pymacconfig.h" && cp -f "C:/Python36/include/pymacro.h" "$(@D)/python_include/pymacro.h" && cp -f "C:/Python36/include/pymath.h" "$(@D)/python_include/pymath.h" && cp -f "C:/Python36/include/pymem.h" "$(@D)/python_include/pymem.h" && cp -f "C:/Python36/include/pyport.h" "$(@D)/python_include/pyport.h" && cp -f "C:/Python36/include/pystate.h" "$(@D)/python_include/pystate.h" && cp -f "C:/Python36/include/pystrcmp.h" "$(@D)/python_include/pystrcmp.h" && cp -f "C:/Python36/include/pystrhex.h" "$(@D)/python_include/pystrhex.h" && cp -f "C:/Python36/include/pystrtod.h" "$(@D)/python_include/pystrtod.h" && cp -f "C:/Python36/include/pythonrun.h" "$(@D)/python_include/pythonrun.h" && cp -f "C:/Python36/include/pythread.h" "$(@D)/python_include/pythread.h" && cp -f "C:/Python36/include/pytime.h" "$(@D)/python_include/pytime.h" && cp -f "C:/Python36/include/rangeobject.h" "$(@D)/python_include/rangeobject.h" && cp -f "C:/Python36/include/setobject.h" "$(@D)/python_include/setobject.h" && cp -f "C:/Python36/include/sliceobject.h" "$(@D)/python_include/sliceobject.h" && cp -f "C:/Python36/include/structmember.h" "$(@D)/python_include/structmember.h" && cp -f "C:/Python36/include/structseq.h" "$(@D)/python_include/structseq.h" && cp -f "C:/Python36/include/symtable.h" "$(@D)/python_include/symtable.h" && cp -f "C:/Python36/include/sysmodule.h" "$(@D)/python_include/sysmodule.h" && cp -f "C:/Python36/include/token.h" "$(@D)/python_include/token.h" && cp -f "C:/Python36/include/traceback.h" "$(@D)/python_include/traceback.h" && cp -f "C:/Python36/include/tupleobject.h" "$(@D)/python_include/tupleobject.h" && cp -f "C:/Python36/include/typeslots.h" "$(@D)/python_include/typeslots.h" && cp -f "C:/Python36/include/ucnhash.h" "$(@D)/python_include/ucnhash.h" && cp -f "C:/Python36/include/unicodeobject.h" "$(@D)/python_include/unicodeobject.h" && cp -f "C:/Python36/include/warnings.h" "$(@D)/python_include/warnings.h" && cp -f "C:/Python36/include/weakrefobject.h" "$(@D)/python_include/weakrefobject.h"
   145     """,
   146  )
   147  
   148  genrule(
   149      name = "numpy_include",
   150      outs = [
   151          "numpy_include/numpy/__multiarray_api.h",
   152          "numpy_include/numpy/__ufunc_api.h",
   153          "numpy_include/numpy/_neighborhood_iterator_imp.h",
   154          "numpy_include/numpy/_numpyconfig.h",
   155          "numpy_include/numpy/arrayobject.h",
   156          "numpy_include/numpy/arrayscalars.h",
   157          "numpy_include/numpy/halffloat.h",
   158          "numpy_include/numpy/multiarray_api.txt",
   159          "numpy_include/numpy/ndarrayobject.h",
   160          "numpy_include/numpy/ndarraytypes.h",
   161          "numpy_include/numpy/noprefix.h",
   162          "numpy_include/numpy/npy_1_7_deprecated_api.h",
   163          "numpy_include/numpy/npy_3kcompat.h",
   164          "numpy_include/numpy/npy_common.h",
   165          "numpy_include/numpy/npy_cpu.h",
   166          "numpy_include/numpy/npy_endian.h",
   167          "numpy_include/numpy/npy_interrupt.h",
   168          "numpy_include/numpy/npy_math.h",
   169          "numpy_include/numpy/npy_no_deprecated_api.h",
   170          "numpy_include/numpy/npy_os.h",
   171          "numpy_include/numpy/numpyconfig.h",
   172          "numpy_include/numpy/old_defines.h",
   173          "numpy_include/numpy/oldnumeric.h",
   174          "numpy_include/numpy/ufunc_api.txt",
   175          "numpy_include/numpy/ufuncobject.h",
   176          "numpy_include/numpy/utils.h",
   177      ],
   178      cmd = """
   179  cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/__multiarray_api.h" "$(@D)/numpy_include/numpy/__multiarray_api.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/__ufunc_api.h" "$(@D)/numpy_include/numpy/__ufunc_api.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/_neighborhood_iterator_imp.h" "$(@D)/numpy_include/numpy/_neighborhood_iterator_imp.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/_numpyconfig.h" "$(@D)/numpy_include/numpy/_numpyconfig.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/arrayobject.h" "$(@D)/numpy_include/numpy/arrayobject.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/arrayscalars.h" "$(@D)/numpy_include/numpy/arrayscalars.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/halffloat.h" "$(@D)/numpy_include/numpy/halffloat.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/multiarray_api.txt" "$(@D)/numpy_include/numpy/multiarray_api.txt" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/ndarrayobject.h" "$(@D)/numpy_include/numpy/ndarrayobject.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/ndarraytypes.h" "$(@D)/numpy_include/numpy/ndarraytypes.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/noprefix.h" "$(@D)/numpy_include/numpy/noprefix.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h" "$(@D)/numpy_include/numpy/npy_1_7_deprecated_api.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_3kcompat.h" "$(@D)/numpy_include/numpy/npy_3kcompat.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_common.h" "$(@D)/numpy_include/numpy/npy_common.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_cpu.h" "$(@D)/numpy_include/numpy/npy_cpu.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_endian.h" "$(@D)/numpy_include/numpy/npy_endian.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_interrupt.h" "$(@D)/numpy_include/numpy/npy_interrupt.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_math.h" "$(@D)/numpy_include/numpy/npy_math.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_no_deprecated_api.h" "$(@D)/numpy_include/numpy/npy_no_deprecated_api.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/npy_os.h" "$(@D)/numpy_include/numpy/npy_os.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/numpyconfig.h" "$(@D)/numpy_include/numpy/numpyconfig.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/old_defines.h" "$(@D)/numpy_include/numpy/old_defines.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/oldnumeric.h" "$(@D)/numpy_include/numpy/oldnumeric.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/ufunc_api.txt" "$(@D)/numpy_include/numpy/ufunc_api.txt" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/ufuncobject.h" "$(@D)/numpy_include/numpy/ufuncobject.h" && cp -f "C:/Python36/lib/site-packages/numpy/core/include/numpy/utils.h" "$(@D)/numpy_include/numpy/utils.h"
   180     """,
   181  )
   182  
   183  genrule(
   184      name = "python_import_lib",
   185      outs = [
   186          "python36.lib",
   187      ],
   188      cmd = """
   189  cp -f "C:/Python36/libs/python36.lib" "$(@D)/python36.lib"
   190     """,
   191  )