================================================================================
$Id: RpmMacros.txt 29 2006-06-10 12:08:45Z ns $
--------------------------------------------------------------------------------
Макросы для сборки модулей "Python", описание использвания

    setup_python_module <имя_модуля>

        Функция, инициирующая спек. Должна указываться в начале спека
        для инициализации параметров сборки. К моменту вызова функции должны
        быть определены переменные version & release.

        Проверить указанные ключа сборки --with pythonXY и/или with
        --python_auto, и установить сборочные зависимости пакета.
            
        Если при сборке было указан ключ --with pythonX.Y, то определить
        переменную __python_package_version, равную <версии_с_точкой>, и
        внести кляузу 

                BuildPreReq: python = X.Y

        в пакет.

        В случае одновременного использования двух разных ключей --with
        pythonX.Y инициируется аварийная остановка сборки

        Кроме того, определяет переменные packagename и __python_package_version
        (в зависимости от ключей и прочих параметров сборки).

    setup_python_module_loose <имя_модуля>

        Альтернатива setup_python_module, не использующая генерацию .rpmreq
        файла и не выполняющая проверку его наличия.
        
    py_requires <имя_модуля1> [ <имя_модуля2> ... ]        
    
        Генерирует список требуемых модулей, полезен при необходимости
        явного указания модуля (пишется вместо Requires: pythonX.Y(<имя модуля>)).
        
    py_provides <имя_модуля1> [ <имя_модуля2> ... ]        
    
        Генерирует список предоставляемых модулей, полезен при необходимости
        явного указания модуля (пишется вместо Provides: pythonX.Y(<имя модуля>)).
        
    py_dependencies <имя_модуля1> [ <имя_модуля2> ... ]        
        
        Генерирует список модулей для указания в директивах BuildRequires и др,
        расширяется в pythonX.Y(<имя_модуля1>) [ pythonX.Y(<имя_модуля1>) ... ]
    
    py_package_requires <pypackage1> [[>= <pypackage1_version>] [<pypackage2> ...]]
    
        Аналогично py_requires, но оперирует не модулями python, а
        пакетами модулей python, возможно, с указанием версий (<, <=, =, =>, >).
        
        Например, строчка ::
        
            %py_package_requires pack1 pack2 >= 1.0-alt1 pack3
            
        расширяется в:            

            pythonX.Y-module-pack1
            
            pythonX.Y-module-pack2 >= 1.0-alt1
            
            pythonX.Y-module-pack3
            
        где X.Y - текущая (выбранная) версия python.    
        
    py_package_provides <pypackage1> [[>= <pypackage1_version>] [<pypackage2> ...]]

        Аналогично py_package_requires, но формирует не списки Requires, а списки
        Provides

    py_package_dependencies <pypackage1> [[>= <pypackage1_version>] [<pypackage2> ...]]

        Аналогично py_package_requires, но формирует только список, без указания
        RPM-предиката, то есть, подходит для использования, например, так
        
            BuildRequires: %py_package_dependencies pack1 pack2 >= 1.2-alt1 pack3
            
        ВНИМАНИЕ: НЕ ТЕСТИРОВАЛОСЬ! ;-)

Дополнительные макросы, рекомендуемые к использованию :

    %python_includedir -- Указывает на директорию, содержащую заголовочные
        файлы для компиляции расширений на C;

    %python_libdir -- Указывает на директорию, содержащую модули Python,
        включенные в официальный релиз

    %python_sitelibdir -- Указывает на директорию, содержащую модули Python,
        установленные в дополнение к официальному релизу

    %python_dynlibdir %python_libdir/lib-dynload -- Указывает на директорию,
        содержащую скомпилированные библиотеки расширений для языка Python;

    %python_tooldir %python_libdir/tools -- Указывает на директорию,
            содержащую утилиты на языке Python;
            
    Некоторые другие интересные макросы по управлению сборкой и поиском зависимостей
    перечислены  в AutoReqProv.txt и ByteCompiler.txt.
    
Не документировано:

    %setup_python_subpackage 
    
    %setup_std_python_package_deps 
           
    
================================================================================
