Oluşturma/yükleme/etc için autotools kullanan bir paketim var. C++ ile yazılmış bir Python modülüdür. (Kurmak zorunda olduğum python betiklerinin, neyin yapıldığının bir parçası olmadığını, yani bir xxxxx_SOURCES
birincil olmadıklarını bilmek dışında bu önemli değildir.) Bu modül yalnızca bir sürücü için bazı "birim testleri" için kullanılır. Ekibimizin bir HW çözümünde dağıtması. Çeşitli nedenlerle, python birim testlerini sisteme "yüklemem" gerekiyor.özel yükleme kancası ve rpmbuild
Bu python komut dosyaları modülün bir parçası olmadığından, yüklemeyi Makefile'de ayrı olarak yönetiyorum. İşte benim Makefile.am
yanı da bu: Bu modül için rpmbuild
haricinde gayet güzel çalışıyor
EXTRA_DIST = setupenv.sh bootstrap tests
dist-hook:
rm -rf $$(find $(distdir)/tests -name \*.swp -o -name \*.pyc)
install-exec-hook:
mkdir -p $(prefix)/unit_tests/unittest2
for f in tests/*.py; do \
cp $$f $(prefix)/unit_tests; \
done
for f in tests/unittest2/*.py; do \
cp $$f $(prefix)/unit_tests/unittest2; \
done
uninstall-hook:
rm -r $(prefix)/unit_tests
. Rpm işleminin onu yönlendirdiği dizini yapmak için install-exec-hook
kuralı doğru şekilde yazılmamıştır. Yani, mkdir - $(prefix)/...
yürütüldüğünde, komut dosyası tam anlamıyla dir: /opt/oursw/.... Bu kural yeniden yazılmalı, böylece rpmbuild onları modülün kurulumuyla aynı yere koyar?
Teşekkür ederiz. Sonunda sadece bunu yaptım, ama bir deney olarak. Bu takımdaki varlığımdan önce, kullandığım süreç, make install komutunu çağırırken DESTDIR'i ayarlıyor. Gerçekten kendi sorumu cevaplamak istemedim ve bunu doğru şekilde yaptığımdan emin değildim. –