From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=unavailable version=3.2.5 To: Sergei Epiphanov X-PHP-Originating-Script: 0:func.inc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Thu, 22 Mar 2012 11:29:21 +0400 From: Vitaly Kuznetsov In-Reply-To: <1405812.gHcWKTkXEn@epiphanov.bkpi82.nikiet.ru> References: <4056768.JmKUQKL2OI@epiphanov.bkpi82.nikiet.ru> <1405812.gHcWKTkXEn@epiphanov.bkpi82.nikiet.ru> Message-ID: <1e00edce6ec2029d320793f77bc24b20@hadoop.ru> X-Sender: vitty@altlinux.ru User-Agent: Roundcube Webmail/0.5.3 Cc: ALT Linux Team general development Subject: Re: [devel] =?utf-8?b?0JrQsNC6INGB0L7QsdC40YDQsNGC0Ywg0LTQu9GPIHB5?= =?utf-8?q?thon3=3F?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Mar 2012 07:29:40 -0000 Archived-At: List-Archive: List-Post: On Thu, 22 Mar 2012 10:39:07 +0400, Sergei Epiphanov wrote: > Добрый день! > > On 22 марта 2012 09:51 Vitaly Kuznetsov wrote: >> Я хочу добавить новый механизм вида %add_python3_path для указания >> того, что в конкретном каталоге .py файлы следует рассматривать как >> python3 со всеми вытекающими (компиляция, поиск requires и provides) >> последствиями. > > То есть пока со сборкой blender подождать до выхода этой > функциональности? Я постараюсь собрать rpm-build-python/rpm-build-python3 сегодня. >> При этом на выходе мы получим следующие python3-зависимости: >> >> $ rpm -qp --requires >> ~/RPM/RPMS/x86_64/blender-2.62-alt0.2.x86_64.rpm | >> grep python3.2\(.*\) > > Тогда уж необходимо, чтобы они (зависимости самого blender) были как > Provides, а не Requires. А то такой пакет не встанет никуда, так как > он требует самого > себя, но не знает об этом. :) blender таскает модули по нестандартному пути (кстати, зачем?). Для того, чтобы воспринимать их как модули нужно добавить в spec следующее: %add_python3_lib_path /usr/lib/blender/scripts/modules (следите за отсутствием trailing slash, с ним работать не будет) Мы получим вот что: $ rpm -qp --provides ~/RPM/RPMS/x86_64/blender-2.62-alt0.2.x86_64.rpm python3.2(addon_utils) python3.2(animsys_refactor) python3.2(blend_render_info) python3.2(bpy) python3.2(bpy.ops) python3.2(bpy.path) python3.2(bpy.utils) python3.2(bpy_extras) python3.2(bpy_extras.anim_utils) python3.2(bpy_extras.image_utils) python3.2(bpy_extras.io_utils) python3.2(bpy_extras.keyconfig_utils) python3.2(bpy_extras.mesh_utils) python3.2(bpy_extras.object_utils) python3.2(bpy_extras.view3d_utils) python3.2(bpy_types) python3.2(bpyml) python3.2(bpyml_ui) python3.2(console) python3.2(console.complete_calltip) python3.2(console.complete_import) python3.2(console.complete_namespace) python3.2(console.intellisense) python3.2(console_python) python3.2(console_shell) python3.2(graphviz_export) python3.2(keyingsets_utils) python3.2(rna_info) python3.2(rna_prop_ui) python3.2(rna_xml) python3.2(sys_info) blender = 2.62-alt0.2 Но, видимо, этого будет недостаточно, всё равно останутся странные зависимости вида python3.2(_bpy) С ними легко побороться с помощью %add_python3_req_skip _bpy либо нужно разобрать откуда она таки импортирует эти недостающие модули и включить эти пути с помощью %add_python3_lib_path. Но это имеет смысл только в том случае, если эту зависимость надо экспортировать в пакете (и, соответственно, использовать в каких-то других пакетах).