Pregunta

Estoy escribiendo mi propia biblioteca de pruebas de unidad (usando autoconf, automake y libtool) para ajustarme mejor a mis necesidades (no necesito una gran cantidad de funciones, solo un corredor de pruebas y aserciones). He llegado al punto en que parece ser utilizable.

Por supuesto, utiliza un config.h para averiguar qué encabezados incluir. El problema es que no estoy seguro de dónde debería ir config.h, ya que tenderá a entrar en conflicto fácilmente con config.h de otros proyectos, así como el hecho de que depende de la arquitectura.

¿Cuál debería ser mi método para instalar este encabezado? (Es necesario por todos los otros encabezados)

¿Fue útil?

Solución

La macro ax_prefix_config_h suena como lo que quieres. Proporciona una forma de crear otro archivo de tipo config.h que contenga la información de config.h con el prefijo. Entonces, por ejemplo, en lugar de #define HAVE_SOMETHING en config.h obtendrá #define MYLIB_HAVE_SOMETHING en mylib_config.h. Muy práctico.

Otros consejos

No deberías exportar config.h en la interfaz de tu biblioteca de todos modos.

Este enlace muestra un método para evitar eso si sus encabezados instalados realmente Realmente necesitamos ser dependientes de la plataforma. Sin embargo, es un método frágil que utiliza una macro de autoconf desactualizada.

Puede elegir generar un archivo de configuración diferente cambiando la macro AC_OUTPUT, aunque no estoy seguro de cómo se integrará su proyecto con otros proyectos. Si es un subproyecto, entonces estará en un subdirectorio de todos modos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top