2010-01-23 4 views
4

J'essaye d'éditer un script de configuration qui exécutera ce morceau de code s'il est au dessus de Automake version x.xx, et si ce n'est pas le cas, il exécute un autre morceau de code code.vérifier la version automake/autoconf dans le script configure

, j'ai besoin de la version à 1.10 ou au-dessus, puis quand il est le cas, je veux faire:

m4_rename_force([glibcxx_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) 

Et, sinon:

m4_rename([glibcxx_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) 

Je suppose donc il ressemblerait à quelque chose comme ça (en configure.in):

if test GET_AUTOMAKE_VERSION >= 1.10; then 
    m4_rename_force([glibcxx_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) 
else 
    m4_rename([glibcxx_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) 
fi 

aussi, dois-je vérifier l'o autoconf r version automake? Peut-être les deux?

Répondre

1

Pour tester la version autoconf, je pense que quelque chose comme ça va fonctionner.

m4_version_prereq (1.10, 
    m4_rename_force([glibcxx_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]), 
    m4_rename([glibcxx_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) 
) 

Je ne sais pas comment faire la même chose pour automake.

+0

Ne semble pas fonctionner. Pas d'erreurs de syntaxe ou quoi que ce soit, mais cela me donne l'erreur que j'aurais normalement si j'utilisais simplement m4_rename. –

4

Cela n'a aucun sens de vérifier la version d'automake au moment de la configuration. Le script configure est exécuté longtemps après automake et peut s'exécuter sur une boîte sur laquelle automake n'est pas installé du tout. Ecrivez votre configure.ac (pas configure.in) pour utiliser automake moderne. Le développeur qui exécute autoconf pour générer le script configure doit installer automake moderne. L'utilisateur qui appelle le script configure n'aura besoin d'aucun des autotools installés.

Questions connexes