var-subs.pl et dossiers de modèles par correctement compressé sous macport (Support #684)


Added by Joël Brogniart 3 months ago. Updated 3 months ago.


Status:Feedback Start date:11/19/2019
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:-
Target version:-

Description

Je vois que le fichier var-subs.pl est généré pendant la phase de configuration à partir du contenu de différents fichiers de configuration makefile. Avec macports ce fichier prends bien en compte le fichier Makefile-macport.conf et on y trouve bien une ligne avec l'information suivante.

s|@/TAR_REPRODUCIBLE_ARGS/@|nonreproducible|g;

Par contre, lors du build, (macports) lorsque c'est le tour du dossier doc, les dossiers de modèles ne sont pas correctement compressés car is sont compressés avec la mauvaise commande.

Le fichier doc/makefile contient

%.tgz: %.d
    find $< -type d -exec chmod 0755 '{}' \;
    find $< -type f -exec chmod 0644 '{}' \;
ifeq ($(TAR_REPRODUCIBLE_ARGS),nonreproducible)
    tar -cz -f $@ -C $< .
else
    tar cn -C $< $(TAR_REPRODUCIBLE_ARGS) -O . | gzip $(GZIP_REPRODUCIBLE_ARGS) -c > $@
endif

La version utilisée est celle du else alors que c'est celle du if qui aurait dû être utilisée.
La compression échoue.

:info:build find modeles/ar/scoring.d -type d -exec chmod 0755 '{}' \;
:info:build find modeles/ar/scoring.d -type f -exec chmod 0644 '{}' \;
:info:build tar cn -C modeles/ar/scoring.d --owner=root --group=root --numeric-owner --mtime=@1451602800 -O . | gzip -n -c > modeles/ar/scoring.tgz
:info:build tar: Option --owner=root is not supported
:info:build Usage:
:info:build   List:    tar -tf <archive-filename>
:info:build   Extract: tar -xf <archive-filename>
:info:build   Create:  tar -cf <archive-filename> [filenames...]
:info:build   Help:    tar --help

Je ne connais pas très bien le système du build alors je ne sais pas si c'est parce qu'au moment du build le fichier Makefile-macport.conf n'est pas pris en compte et pourquoi ou autre chose.


History

Updated by Joël Brogniart 3 months ago

C'est bon, je crois avoir trouvé. Je pensais que la variable d'environnement "AMCCONF=macports" utilisée lors de la phase de configuration suffisait, mais il semble qu'il faille la déclarer à nouveau lors de la phase de build.

Il faut que je fasse quelques tests pour voir les répercussions.

Updated by Alexis Bienvenüe 3 months ago

C'est bon, je crois avoir trouvé. Je pensais que la variable d'environnement "AMCCONF=macports" utilisée lors de la phase de configuration suffisait, mais il semble qu'il faille la déclarer à nouveau lors de la phase de build.

En effet il faut l'utiliser à chaque appel à make.

  • Status changed from New to Feedback

Also available in: Atom PDF