;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; LUSH Lisp Universal Shell
;;;   Copyright (C) 2002 Leon Bottou, Yann Le Cun, AT&T Corp, NECI.
;;; Includes parts of TL3:
;;;   Copyright (C) 1987-1999 Leon Bottou and Neuristique.
;;; Includes selected parts of SN3.2:
;;;   Copyright (C) 1991-2001 AT&T Corp.
;;;
;;; Includes information derived from the GSL (Gnu Scientific Library)
;;;   header files which are copyrighted and distributed under the GPL
;;;   by their respective authors.
;;;
;;; This program is free software; you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 2 of the License, or
;;; (at your option) any later version.
;;;
;;; This program is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with this program; if not, write to the Free Software
;;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA
;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(libload "python/python-config")



#? *** aux_globalvar

;; dummy function that adds Python C header files in C file
(eval `(de dummy_aux_globalvar () ,python-cpheader-cmd ()))

#? * (dummy_aux_globalvar)
#? * (varp_pyclass_type)
#? * (varp_pyinstance_type)
#? * (varp_pymethod_type)
#? * (varp_pycomplex_type)
#? * (varp_pywrapperdescr_type)
#? * (varp_pybuffer_type)
#? * (varp_pycell_type)
#? * (varp_pycobject_type)
#? * (varp_pyproperty_type)
#? * (varp_pydict_type)
#? * (varp_pyfile_type)
#? * (varp_pyfloat_type)
#? * (varp_pyfunction_type)
#? * (varp_pyclassmethod_type)
#? * (varp_pystaticmethod_type)
#? * (varp_pyint_type)
#? * (varp_pyseqiter_type)
#? * (varp_pycalliter_type)
#? * (varp_pylist_type)
#? * (varp_pylong_type)
#? * (varp_pycfunction_type)
#? * (varp_pymodule_type)
#? * (varp_pytype_type)
#? * (varp_pybaseobject_type)
#? * (varp_pysuper_type)
#? * (varp_pyslice_type)
#? * (varp_pystring_type)
#? * (varp_pyrange_type)
#? * (varp_pytraceback_type)
#? * (varp_pytuple_type)
#? * (varp_pyunicode_type)
#? * (varp_pyweakref_reftype)
#? * (varp_pyweakref_proxytype)
#? * (varp_pyweakref_callableproxytype)
#? * (varp_py_zerostruct)
#? * (varp_py_truestruct)
#? * (varp_py_nonestruct)
#? * (varp_py_notimplementedstruct)
#? * (varp_py_ellipsisobject)
#? * (var_pyexc_exception)
#? * (var_pyexc_stopiteration)
#? * (var_pyexc_standarderror)
#? * (var_pyexc_arithmeticerror)
#? * (var_pyexc_lookuperror)
#? * (var_pyexc_assertionerror)
#? * (var_pyexc_attributeerror)
#? * (var_pyexc_eoferror)
#? * (var_pyexc_floatingpointerror)
#? * (var_pyexc_environmenterror)
#? * (var_pyexc_ioerror)
#? * (var_pyexc_oserror)
#? * (var_pyexc_importerror)
#? * (var_pyexc_indexerror)
#? * (var_pyexc_keyerror)
#? * (var_pyexc_keyboardinterrupt)
#? * (var_pyexc_memoryerror)
#? * (var_pyexc_nameerror)
#? * (var_pyexc_overflowerror)
#? * (var_pyexc_runtimeerror)
#? * (var_pyexc_notimplementederror)
#? * (var_pyexc_syntaxerror)
#? * (var_pyexc_indentationerror)
#? * (var_pyexc_taberror)
#? * (var_pyexc_referenceerror)
#? * (var_pyexc_systemerror)
#? * (var_pyexc_systemexit)
#? * (var_pyexc_typeerror)
#? * (var_pyexc_unboundlocalerror)
#? * (var_pyexc_unicodeerror)
#? * (var_pyexc_valueerror)
#? * (var_pyexc_zerodivisionerror)
#? * (var_pyexc_memoryerrorinst)
#? * (var_pyexc_warning)
#? * (var_pyexc_userwarning)
#? * (var_pyexc_deprecationwarning)
#? * (var_pyexc_syntaxwarning)
#? * (var_pyexc_overflowwarning)
#? * (var_pyexc_runtimewarning)
#? * (var_pytrash_delete_later)
#? * (var_py_packagecontext)
#? * (var_py_filesystemdefaultencoding)
#? * (var_pyimport_frozenmodules)
#? * (var_py_none)
#? * (var_py_notimplemented)
#? * (var_pythreadstate_current)
#? * (var_pytrash_delete_nesting)
#? * (var_py_debugflag)
#? * (var_py_verboseflag)
#? * (var_py_interactiveflag)
#? * (var_py_optimizeflag)
#? * (var_py_nositeflag)
#? * (var_py_useclassexceptionsflag)
#? * (var_py_frozenflag)
#? * (var_py_tabcheckflag)
#? * (var_py_unicodeflag)
#? * (var_py_ignoreenvironmentflag)
#? * (var_py_divisionwarningflag)
#? * (var_py_qnewflag)

;; ********************************************************


(de varp_PyClass_Type ()
    (gptr #{ &PyClass_Type #} ))

(de varp_PyInstance_Type ()
    (gptr #{ &PyInstance_Type #} ))

(de varp_PyMethod_Type ()
    (gptr #{ &PyMethod_Type #} ))

(de varp_PyComplex_Type ()
    (gptr #{ &PyComplex_Type #} ))

(de varp_PyWrapperDescr_Type ()
    (gptr #{ &PyWrapperDescr_Type #} ))

(de varp_PyBuffer_Type ()
    (gptr #{ &PyBuffer_Type #} ))

(de varp_PyCell_Type ()
    (gptr #{ &PyCell_Type #} ))

(de varp_PyCObject_Type ()
    (gptr #{ &PyCObject_Type #} ))

(de varp_PyProperty_Type ()
    (gptr #{ &PyProperty_Type #} ))

(de varp_PyDict_Type ()
    (gptr #{ &PyDict_Type #} ))

(de varp_PyFile_Type ()
    (gptr #{ &PyFile_Type #} ))

(de varp_PyFloat_Type ()
    (gptr #{ &PyFloat_Type #} ))

(de varp_PyFunction_Type ()
    (gptr #{ &PyFunction_Type #} ))

(de varp_PyClassMethod_Type ()
    (gptr #{ &PyClassMethod_Type #} ))

(de varp_PyStaticMethod_Type ()
    (gptr #{ &PyStaticMethod_Type #} ))

(de varp_PyInt_Type ()
    (gptr #{ &PyInt_Type #} ))

(de varp_PySeqIter_Type ()
    (gptr #{ &PySeqIter_Type #} ))

(de varp_PyCallIter_Type ()
    (gptr #{ &PyCallIter_Type #} ))

(de varp_PyList_Type ()
    (gptr #{ &PyList_Type #} ))

(de varp_PyLong_Type ()
    (gptr #{ &PyLong_Type #} ))

(de varp_PyCFunction_Type ()
    (gptr #{ &PyCFunction_Type #} ))

(de varp_PyModule_Type ()
    (gptr #{ &PyModule_Type #} ))

(de varp_PyType_Type ()
    (gptr #{ &PyType_Type #} ))
 
(de varp_PyBaseObject_Type ()
    (gptr #{ &PyBaseObject_Type #} ))
 
(de varp_PySuper_Type ()
    (gptr #{ &PySuper_Type #} ))
 
(de varp_PySlice_Type ()
    (gptr #{ &PySlice_Type #} ))

(de varp_PyString_Type ()
    (gptr #{ &PyString_Type #} ))

(de varp_PyRange_Type ()
    (gptr #{ &PyRange_Type #} ))

(de varp_PyTraceBack_Type ()
    (gptr #{ &PyTraceBack_Type #} ))

(de varp_PyTuple_Type ()
    (gptr #{ &PyTuple_Type #} ))

(de varp_PyUnicode_Type ()
    (gptr #{ &PyUnicode_Type #} ))

(de varp_PyWeakref_RefType ()
    (gptr #{ &_PyWeakref_RefType #} ))

(de varp_PyWeakref_ProxyType ()
    (gptr #{ &_PyWeakref_ProxyType #} ))

(de varp_PyWeakref_CallableProxyType ()
    (gptr #{ &_PyWeakref_CallableProxyType #} ))

(de varp_Py_ZeroStruct ()
    (gptr #{ &_Py_ZeroStruct #} ))

(de varp_Py_TrueStruct ()
    (gptr #{ &_Py_TrueStruct #} ))
 

(de varp_Py_NoneStruct ()
    (gptr #{ &_Py_NoneStruct #} ))
 
(de varp_Py_NotImplementedStruct ()
    (gptr #{ &_Py_NotImplementedStruct #} ))
 
(de varp_Py_EllipsisObject ()
    (gptr #{ &_Py_EllipsisObject #} ))
 

;; pointers...
(de var_PyExc_Exception ()
    (gptr #{ PyExc_Exception #}))

(de var_PyExc_StopIteration ()
    (gptr #{ PyExc_StopIteration #}))

(de var_PyExc_StandardError ()
    (gptr #{ PyExc_StandardError #}))

(de var_PyExc_ArithmeticError ()
    (gptr #{ PyExc_ArithmeticError #}))

(de var_PyExc_LookupError ()
    (gptr #{ PyExc_LookupError #}))

(de var_PyExc_AssertionError ()
    (gptr #{ PyExc_AssertionError #}))

(de var_PyExc_AttributeError ()
    (gptr #{ PyExc_AttributeError #}))

(de var_PyExc_EOFError ()
    (gptr #{ PyExc_EOFError #}))

(de var_PyExc_FloatingPointError ()
    (gptr #{ PyExc_FloatingPointError #}))

(de var_PyExc_EnvironmentError ()
    (gptr #{ PyExc_EnvironmentError #}))

(de var_PyExc_IOError ()
    (gptr #{ PyExc_IOError #}))

(de var_PyExc_OSError ()
    (gptr #{ PyExc_OSError #}))

(de var_PyExc_ImportError ()
    (gptr #{ PyExc_ImportError #}))

(de var_PyExc_IndexError ()
    (gptr #{ PyExc_IndexError #}))

(de var_PyExc_KeyError ()
    (gptr #{ PyExc_KeyError #}))

(de var_PyExc_KeyboardInterrupt ()
    (gptr #{ PyExc_KeyboardInterrupt #}))

(de var_PyExc_MemoryError ()
    (gptr #{ PyExc_MemoryError #}))

(de var_PyExc_NameError ()
    (gptr #{ PyExc_NameError #}))

(de var_PyExc_OverflowError ()
    (gptr #{ PyExc_OverflowError #}))

(de var_PyExc_RuntimeError ()
    (gptr #{ PyExc_RuntimeError #}))

(de var_PyExc_NotImplementedError ()
    (gptr #{ PyExc_NotImplementedError #}))

(de var_PyExc_SyntaxError ()
    (gptr #{ PyExc_SyntaxError #}))

(de var_PyExc_IndentationError ()
    (gptr #{ PyExc_IndentationError #}))

(de var_PyExc_TabError ()
    (gptr #{ PyExc_TabError #}))

(de var_PyExc_ReferenceError ()
    (gptr #{ PyExc_ReferenceError #}))

(de var_PyExc_SystemError ()
    (gptr #{ PyExc_SystemError #}))

(de var_PyExc_SystemExit ()
    (gptr #{ PyExc_SystemExit #}))

(de var_PyExc_TypeError ()
    (gptr #{ PyExc_TypeError #}))

(de var_PyExc_UnboundLocalError ()
    (gptr #{ PyExc_UnboundLocalError #}))

(de var_PyExc_UnicodeError ()
    (gptr #{ PyExc_UnicodeError #}))

(de var_PyExc_ValueError ()
    (gptr #{ PyExc_ValueError #}))

(de var_PyExc_ZeroDivisionError ()
    (gptr #{ PyExc_ZeroDivisionError #}))

(de var_PyExc_MemoryErrorInst ()
    (gptr #{ PyExc_MemoryErrorInst #}))

(de var_PyExc_Warning ()
    (gptr #{ PyExc_Warning #}))

(de var_PyExc_UserWarning ()
    (gptr #{ PyExc_UserWarning #}))

(de var_PyExc_DeprecationWarning ()
    (gptr #{ PyExc_DeprecationWarning #}))

(de var_PyExc_SyntaxWarning ()
    (gptr #{ PyExc_SyntaxWarning #}))

(de var_PyExc_OverflowWarning ()
    (gptr #{ PyExc_OverflowWarning #}))

(de var_PyExc_RuntimeWarning ()
    (gptr #{ PyExc_RuntimeWarning #}))

(de var_PyTrash_delete_later ()
    (gptr #{ _PyTrash_delete_later #}))


(de var_Py_PackageContext ()
    (gptr #{ _Py_PackageContext #}))

(de var_Py_FileSystemDefaultEncoding ()
    (gptr #{ Py_FileSystemDefaultEncoding #}))

(de var_PyImport_FrozenModules ()
    (gptr #{ PyImport_FrozenModules #}))

(de var_Py_None ()
    (gptr #{ Py_None #}))
 
(de var_Py_NotImplemented ()
    (gptr #{ Py_NotImplemented #}))

(de var_PyThreadState_Current ()
    (gptr #{ _PyThreadState_Current #}))

(de var_PyTrash_delete_nesting ()
    (int  #{ _PyTrash_delete_nesting #}))

(de var_Py_DebugFlag ()
    (int  #{ Py_DebugFlag #}))

(de var_Py_VerboseFlag ()
    (int  #{ Py_VerboseFlag #}))

(de var_Py_InteractiveFlag ()
    (int  #{ Py_InteractiveFlag #}))

(de var_Py_OptimizeFlag ()
    (int  #{ Py_OptimizeFlag #}))

(de var_Py_NoSiteFlag ()
    (int  #{ Py_NoSiteFlag #}))

(de var_Py_UseClassExceptionsFlag ()
    (int  #{ Py_UseClassExceptionsFlag #}))

(de var_Py_FrozenFlag ()
    (int  #{ Py_FrozenFlag #}))

(de var_Py_TabcheckFlag ()
    (int  #{ Py_TabcheckFlag #}))

(de var_Py_UnicodeFlag ()
    (int  #{ Py_UnicodeFlag #}))

(de var_Py_IgnoreEnvironmentFlag ()
    (int  #{ Py_IgnoreEnvironmentFlag #}))

(de var_Py_DivisionWarningFlag ()
    (int  #{ Py_DivisionWarningFlag #}))

(de var_Py_QnewFlag ()
    (int  #{ _Py_QnewFlag #}))





;; ********************************************************

(dhc-make () 
  dummy_aux_globalvar
  varp_pyclass_type
  varp_pyinstance_type
  varp_pymethod_type
  varp_pycomplex_type
  varp_pywrapperdescr_type
  varp_pybuffer_type
  varp_pycell_type
  varp_pycobject_type
  varp_pyproperty_type
  varp_pydict_type
  varp_pyfile_type
  varp_pyfloat_type
  varp_pyfunction_type
  varp_pyclassmethod_type
  varp_pystaticmethod_type
  varp_pyint_type
  varp_pyseqiter_type
  varp_pycalliter_type
  varp_pylist_type
  varp_pylong_type
  varp_pycfunction_type
  varp_pymodule_type
  varp_pytype_type
  varp_pybaseobject_type
  varp_pysuper_type
  varp_pyslice_type
  varp_pystring_type
  varp_pyrange_type
  varp_pytraceback_type
  varp_pytuple_type
  varp_pyunicode_type
  varp_pyweakref_reftype
  varp_pyweakref_proxytype
  varp_pyweakref_callableproxytype
  varp_py_zerostruct
  varp_py_truestruct
  varp_py_nonestruct
  varp_py_notimplementedstruct
  varp_py_ellipsisobject
  var_pyexc_exception
  var_pyexc_stopiteration
  var_pyexc_standarderror
  var_pyexc_arithmeticerror
  var_pyexc_lookuperror
  var_pyexc_assertionerror
  var_pyexc_attributeerror
  var_pyexc_eoferror
  var_pyexc_floatingpointerror
  var_pyexc_environmenterror
  var_pyexc_ioerror
  var_pyexc_oserror
  var_pyexc_importerror
  var_pyexc_indexerror
  var_pyexc_keyerror
  var_pyexc_keyboardinterrupt
  var_pyexc_memoryerror
  var_pyexc_nameerror
  var_pyexc_overflowerror
  var_pyexc_runtimeerror
  var_pyexc_notimplementederror
  var_pyexc_syntaxerror
  var_pyexc_indentationerror
  var_pyexc_taberror
  var_pyexc_referenceerror
  var_pyexc_systemerror
  var_pyexc_systemexit
  var_pyexc_typeerror
  var_pyexc_unboundlocalerror
  var_pyexc_unicodeerror
  var_pyexc_valueerror
  var_pyexc_zerodivisionerror
  var_pyexc_memoryerrorinst
  var_pyexc_warning
  var_pyexc_userwarning
  var_pyexc_deprecationwarning
  var_pyexc_syntaxwarning
  var_pyexc_overflowwarning
  var_pyexc_runtimewarning
  var_pytrash_delete_later
  var_py_packagecontext
  var_py_filesystemdefaultencoding
  var_pyimport_frozenmodules
  var_py_none
  var_py_notimplemented
  var_pythreadstate_current
  var_pytrash_delete_nesting
  var_py_debugflag
  var_py_verboseflag
  var_py_interactiveflag
  var_py_optimizeflag
  var_py_nositeflag
  var_py_useclassexceptionsflag
  var_py_frozenflag
  var_py_tabcheckflag
  var_py_unicodeflag
  var_py_ignoreenvironmentflag
  var_py_divisionwarningflag
  var_py_qnewflag
)
