Paquet OpenWrt : la variable PKG_MIRROR_MD5SUM

La variable PKG_MIRROR_MD5SUM a été ajoutée lors du commit [26260].

Une petite explication est nécessaire avant d’aborder cette variable. Dans le Makefile d’un paquet OpenWrt, la variable PKG_SOURCE_URL, comme son nom l’indique, spécifie l’URL à partir de laquelle les sources du paquet seront téléchargées. Différentes méthodes sont prises en charge, HTTP, FTP, git, subversion,… Dans les cas HTTP et FTP, c’est une archive (*.tar.bz2, *.tar.gz, *.zip,…) qui sera téléchargée, mais lorsqu’il s’agit d’un dépôt (git, subversion…), c’est un checkout qui sera effectué.

Dans ce dernier cas, OpenWrt va automatiquement créer une archive dans le répertoire dl/ (qui contient toutes les archives téléchargées) à partir du checkout. Cette archive aura le nom défini par la variable PKG_SOURCE.

Prenons un exemple avec le Makefile du paquet hostapd, dont voici un extrait :

PKG_NAME:=hostapd
PKG_VERSION:=20110527
PKG_RELEASE:=2
PKG_REV:=ceb34f250af7a7082f18c1e0451dc7fbc0f000f3
 
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=git://w1.fi/srv/git/hostap.git
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=$(PKG_REV)
PKG_SOURCE_PROTO:=git
PKG_MIRROR_MD5SUM:=4b98902d782813b41aca1faff613f677

hostapd est téléchargé à partir du dépôt git://w1.fi/srv/git/hostap.git. OpenWrt va automatiquement créer l’archive hostapd-20110527.tar.bz2 dans le répertoire dl/, qu’on peut mettre sur un miroir, afin qu’OpenWrt télécharge les sources directement sous forme d’archive, plutôt que de faire un checkout.

On peut vérifier, en gardant l’exemple du paquet hostapd, que la somme de contrôle MD5 de l’archive correspond bien à la valeur de PKG_MIRROR_MD5SUM définie dans le Makefile :

$ md5sum dl/hostapd-20110527.tar.bz2 
4b98902d782813b41aca1faff613f677  dl/hostapd-20110527.tar.bz2

Voici maintenant comment spécifier un miroir :

$ make menuconfig

Ensuite on sélectionne :

[*] Advanced configuration options (for developers)  --->

Puis :

()    Local mirror for source packages

Il suffit alors d’entrer l’adresse d’un serveur HTTP ou FTP :

et finalement quitter menuconfig en enregistrant la nouvelle configuration.

Vus : 1391
Publié par cksum : 5