Отключите шаг проверки лицензии CDBS для локальных сборок с помощью dpkg-buildpackage -b

Я делаю несколько огромных сборок пакетов с помощью dpkg-buildpackage -b в Ubuntu 17.04 (как в Debian "stretch/sid"). Пакеты имеют очень большое количество файлов, и в процессе сборки есть шаг Scanning upstream source for new/changed copyright notices... со сценарием licensecheck для воссоздания debian/copyright_newhints:

apt source packagename-V.E.R
sudo apt build-dep packagename-V.E.R
cd packagename-V.E.R

DEB_BUILD_OPTIONS='nostrip noopt debug' dpkg-buildpackage -b -uc -us

... normal work ...

make[1]: Leaving directory '..../debian/build/deb'
touch debian/stamp-makefile-check/deb
CDBS WARNING:  DEB_MAKE_CHECK_TARGET unset, not running checks
 fakeroot debian/rules binary
CDBS WARNING:  copyright-check disabled - touch debian/copyright_hints to enable.
debian/rules:158: warning: overriding recipe for target 'list-missing'
/usr/share/cdbs/1/rules/utils.mk:126: warning: ignoring old recipe for target 'list-missing'
test -x debian/rules
dh_testroot
dh_prep -X org.gtk.test.gschema.xml.orig
dh_installdirs -A
mkdir -p "debian/build"
CDBS WARNING:    DEB_DH_INSTALL_ARGS is deprecated since 0.4.85
CDBS WARNING:    DEB_DH_STRIP_ARGS is deprecated since 0.4.85
CDBS WARNING:    DEB_DH_BUILDDEB_ARGS is deprecated since 0.4.85

Scanning upstream source for new/changed copyright notices...

set -e; LC_ALL=C.UTF-8 /usr/bin/licensecheck --check '.*' --recursive --copyright --deb-fmt --ignore '^(debian/(changelog|copyright(|_hints|_newhints)))$' --lines 0 * | /usr/lib/cdbs/licensecheck2dep5 > debian/copyright_newhints

Шаг licensecheck --check '.*' --recursive очень медленный и занимает до дюжины минут или даже дольше (а в top выводе licensecheck это программа, потребляющая процессорное время). Он делает что-то вроде пользовательского поиска всех файлов. Но у меня быстрая ФС и чтение всех файлов (с вычислением md5sum) занимает всего 10 секунд.

Я хочу сделать этот шаг быстрее: либо полностью отключив запуск licensecheck, либо изменив некоторые настройки licensecheck, чтобы сделать его быстрее.


person osgx    schedule 25.02.2017    source источник


Ответы (1)


Я сам застрял в этом вопросе. Быстрый и грязный обходной путь — просто apt-get remove licensecheck, а затем переустановить после завершения сборки. Он просто скажет, что не смог его найти, и продолжит сборку.

Я бы разместил это как комментарий, но stackoverflow хочет, чтобы я зарегистрировал учетную запись.

person user7640817    schedule 01.03.2017