Tentativo pacchettizzazione uMPS2 (abbandonato)

From vsd
Jump to navigation Jump to search

Creazione del pacchetto per Debian di uMPS2.

23/04/2019 - Da completare.
30/04/2019 - Progetto abbandonato per via della complessità.

Clonazione repository

$ git clone https://github.com/tjonjic/umps

Ridenominazione cartella sorgente

$ mv umps/ umps-2.0.1/

Rimozione file Git

$ cd umps-2.0.1/
$ rm .gitignore
$ rm -r .git/

dh-make

Il comando dh_make genera una cartella debian contenete file generici preformattati secondo le regole della pacchettizzazione di Debian.
Il flag --createorig genera il file umps_2.0.1.orig.tar.xz nella parent directory contenente i file sorgente.

$ dh_make --createorig

debian/control

Source: umps
Section: education
Priority: optional
Maintainer: Mattia Biondi <mattia.biondi3@studio.unibo.it>
Build-Depends: debhelper (>= 9)
Standards-Version: 3.9.8
Homepage: https://github.com/tjonjic/umps
Vcs-Git: https://github.com/tjonjic/umps

Package: umps
Architecture: any
Depends: qt4-default, libelf-dev, libboost-dev, libsigc++-2.0-dev, gcc-mipsel-linux-gnu, ${misc:Depends}
Description: Virtual machine simulator based around the MIPS R2/3000 microprocessor.

debian/changelog

umps (2.0.1-1) unstable; urgency=medium

  * Initial release (Closes: #NaN)

 -- Mattia Biondi <mattia.biondi3@studio.unibo.it>  Tue, 23 Apr 2019 13:49:58 +0200

debian/rules

#!/usr/bin/make -f
#export DH_VERBOSE = 1

%:
	dh $@ --with autotools-dev,autoreconf

override_dh_auto_configure:
	dh_auto_configure -- --enable-maintainer-mode --with-mips-tool-prefix=mipsel-linux-gnu-

Installazione dipendenze

$ sudo apt install qt4-default libelf-dev libboost-dev libsigc++-2.0-dev gcc-mipsel-linux-gnu

debuild

$ debuild -us -uc

Errori di lintian

Errori probabilmente dovuti al fatto che uMPS2 include sorgenti per diverse architetture.

E: umps source: source-is-missing src/support/legacy/crti_pic.o.eb
E: umps source: source-is-missing src/support/legacy/crti_pic.o.el
E: umps source: source-is-missing src/support/legacy/crtso_pic.o.eb
E: umps source: source-is-missing src/support/legacy/crtso_pic.o.el
E: umps source: source-is-missing src/support/legacy/libumps_pic.o.eb
E: umps source: source-is-missing src/support/legacy/libumps_pic.o.el
E: umps source: missing-build-dependency-for-dh-addon autoreconf => dh-autoreconf | debhelper (>= 9.20160403~)
E: umps source: missing-build-dependency-for-dh-addon autotools_dev => autotools-dev
E: umps: binary-from-other-architecture usr/lib/x86_64-linux-gnu/umps2/crti.o
E: umps: binary-from-other-architecture usr/lib/x86_64-linux-gnu/umps2/crtso.o
E: umps: binary-from-other-architecture usr/lib/x86_64-linux-gnu/umps2/libumps.o
E: umps: missing-dependency-on-libc needed by usr/bin/umps2 and 3 others
E: umps: depends-on-metapackage depends: qt4-default