Outils pour utilisateurs

Outils du site


autotools:configure.ac

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
autotools:configure.ac [2017/09/01 05:01] – Ajout de AH_BOTTOM rootautotools:configure.ac [2020/04/27 07:56] (Version actuelle) – Conversion de <note> vers <WRAP> root
Ligne 1: Ligne 1:
 +[[https://www.gnu.org/software/autoconf/manual/autoconf.pdf|Manuel 2.69]], {{ :autotools:configure.ac:autoconf_2_69.pdf |Archive}}
 +
 ====Détection des options de compilation compatible avec CXX==== ====Détection des options de compilation compatible avec CXX====
 Défini le langage du compilateur : g++ donc le compilateur défini par ''CXX''. Défini le langage du compilateur : g++ donc le compilateur défini par ''CXX''.
Ligne 25: Ligne 27:
 </code> </code>
  
-<note>[[https://github.com/gcc-mirror/gcc/blob/master/config/warnings.m4|Source]], {{:autotools:configure.ac:warnings.m4|Archive}} : gcc ne crée pas d'avertissement dans le cas de ''-Wno-*'' non supporté. Il est donc nécessaire de tester la version ''-W*''.</note>+<WRAP center round info 60%> 
 +[[https://github.com/gcc-mirror/gcc/blob/master/config/warnings.m4|warnings.m4]], {{:autotools:configure.ac:warnings.m4|Archive}} : gcc ne crée pas d'avertissement dans le cas de ''-Wno-*'' non supporté. Il est donc nécessaire de tester la version ''-W*''. 
 +</WRAP>
  
 Activation automatique des ''-Wno-warnings'' supportés. On teste les ''-Warnings'' mais on ajoute ''-Wno-warnings'' Activation automatique des ''-Wno-warnings'' supportés. On teste les ''-Warnings'' mais on ajoute ''-Wno-warnings''
Ligne 51: Ligne 55:
  
 ====Le cas clang==== ====Le cas clang====
-clang préfère avoir -fno-use-cxa-atexit pour éviter des erreurs de type "hidden symbol `atexit'.+clang préfère avoir ''-fno-use-cxa-atexit'' pour éviter des erreurs de type "hidden symbol `atexit'.
  
 Il suffit d'ajouter la fonction suivante : Il suffit d'ajouter la fonction suivante :
Ligne 70: Ligne 74:
 <code autoconf> <code autoconf>
 AH_BOTTOM([ AH_BOTTOM([
-  …+#ifdef _MSC_VER 
 +#define CHK _Check_return_ 
 + 
 +#ifndef ssize_t 
 +#include <BaseTsd.h> 
 +typedef SSIZE_T ssize_t; 
 +#endif // !ssize_t 
 + 
 +#else // !_MSC_VER 
 +#define CHK __attribute__ ((__warn_unused_result__)) 
 +#endif 
 + 
 +#if defined(_MSC_VER) 
 +#define SSCANF sscanf_s 
 +#define DllExport __declspec(dllexport) 
 +#else 
 +#define SSCANF sscanf 
 +#define DllExport 
 +#endif
 ]) ])
 +</code>
 +
 +====Ajout d'une option --with-…====
 +<code autoconf>
 +# Vérification de la possibilité de compiler la documentation via doxygen
 +AC_ARG_WITH(doc,
 +            AS_HELP_STRING([--with-doc],
 +                           [build with doc support]))
 +if test "$with_doc" != "yes"; then
 +  withdoc=false
 +else
 +  withdoc=true
 +fi
 +AC_MSG_RESULT([with-doc $withdoc])
 +AC_CHECK_PROGS([DOXYGEN], [doxygen])
 +if test -z "$DOXYGEN";
 +  then AC_MSG_WARN([Doxygen introuvable - documentation non compilable])
 +fi
 +AM_CONDITIONAL(HAVE_DOXYGEN, test x$withdoc = xtrue && test -n "$DOXYGEN")
 +if test x$withdoc = xtrue; then
 +AC_DEFINE(ENABLE_DOC, 1, [Défini si la doc doit être générée])
 +fi
 </code> </code>
autotools/configure.ac.1504234860.txt.gz · Dernière modification : 2017/09/01 05:01 de root