Bug 32231 - .spec: it's better not to redefine %_libdir for build (and check for 64 differently)
: .spec: it's better not to redefine %_libdir for build (and check for 64 diffe...
Status: NEW
: Sisyphus
(All bugs in Sisyphus/picolisp)
: unstable
: all Linux
: P3 minor
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2016-06-29 17:23 by
Modified: 2016-06-29 19:22 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2016-06-29 17:23:29
picolisp-16.6-alt1

С переназначением %_libdir тоже хорошо бы что-то сделать (потому что
сборочные "инструменты"/"реквизиты" будут искаться ведь тоже не там! И та
простыня ошибок была вызвана чем-то вроде этой причины):

# pretty much hardwired
%define _libdir %_usr/lib

Т.е. высталять новое значение как параметр сборки явно в %build, %install,
%files?

(Тут ещё возникает неожиданное несоответствие между %_lib и %_libdir -- обычно
одно в конце другого, а здесь:

    export RPM_LIB="lib64"
    export RPM_LIBDIR="/usr/lib"
    export RPM_DATADIR="/usr/share"

).

* * *

Попробовал переписать проверку 64ёх на более осмысленную в master в
git.alt:/people/imz/packages/picolisp.git :

diff --git a/picolisp.spec b/picolisp.spec
index 534ceed..cb6a61d 100644
--- a/picolisp.spec
+++ b/picolisp.spec
@@ -28,10 +28,12 @@ PicoLisp can be viewed from two different aspects:
 %setup -n picoLisp

 %build
-%ifarch x86_64 ia64 ppc64 sparc64 s390x
+%if "%(getconf LONG_BIT)" == "64"
 cd src64
-%else
+%elif "%(getconf LONG_BIT)" == "32"
 cd src
+%else
+exit 1
 %endif
 make
 cd ..

Можно ещё ExclusiveArch прописать (на твой вкус).