* Led [090402 19:30]: > Только толку от него мало, если он у нас опционален, а не обязателен для > действительно noarch-частей. Т.о. Даже багу на этот счёт на пакет вешать > бесполезно, потому как мейнтейнер пошлёт подальше с формулировкой "А мне > что-то механизм noarch-субпакетов лично не нравится". Г-н, Led, это у Вас очередной случай так называемого вранья? Потрудитесь, пожалуйста, привести код, который функционально отличался бы от этого: 700 const char *platform = rpmExpand("%{_target_platform}", NULL); 701 const char *arch = rpmExpand("%{_target_cpu}", NULL); 702 const char *os = rpmExpand("%{_target_os}", NULL); 703 704 for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { ... 712 he->tag = RPMTAG_ARCH; 713 he->t = RPM_STRING_TYPE; 714 he->p.str = (pkg->noarch ? "noarch" : arch); 715 he->c = 1; 716 xx = headerPut(pkg->header, he, 0); 717 718 he->tag = RPMTAG_PLATFORM; 719 he->t = RPM_STRING_TYPE; 720 he->p.str = platform; 721 he->c = 1; 722 xx = headerPut(pkg->header, he, 0); Или этого: 853 const char *platform = rpmExpand("%{_target_platform}", NULL); 854 const char *arch = rpmExpand("%{_target_cpu}", NULL); 855 const char *os = rpmExpand("%{_target_os}", NULL); 856 #endif 857 858 for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) { ... 869 if (!headerIsEntry(pkg->header, RPMTAG_ARCH)) 870 headerAddEntry(pkg->header, RPMTAG_ARCH, RPM_STRING_TYPE, arch, 1); 871 else 872 assert(pkg != spec->packages); /* noarch subpackage */ 873 if (!headerIsEntry(pkg->header, RPMTAG_RHNPLATFORM)) 874 (void) headerAddEntry(pkg->header, RPMTAG_RHNPLATFORM, 875 RPM_STRING_TYPE, arch, 1); 876 (void) headerAddEntry(pkg->header, RPMTAG_PLATFORM, 877 RPM_STRING_TYPE, platform, 1); Первый фрагмент это HEAD rpm5.org, второй - так называемый "ALT-rpm", который Вы усиленно ругаете. -- Regards, Sir Raorn.