Autotools.
Avrete bisogno di scrivere uno script configure.ac e un Makefile.am.
Configure.ac è abbastanza semplice e può essere in gran parte generato automaticamente dall'esecuzione di "autoscan" sul codice sorgente. Questo genererà un file 'configure.scan' che dovrai modificare per generare il file configure.ac finale.
Il file Automake.am è tutto basato su convenzioni. Avrete probabilmente bisogno di qualcosa come:
AUTOMAKE_OPTIONS = foreign subdir-objects
AM_CXXFLAGS = -std=c++11 -static-libstdc++ -Wall -Werror \
-Wfatal-errors -I blah
AM_LDFLAGS = blah
bin_PROGRAMS = mybinary
mybinary_SOURCES = \
blah.h blah.cc
tutto si basa su uno schema di denominazione:
- dist vs nodist = dovrebbe essere costruito
- inst vs noinst = dovrebbe essere installato
file
- DATA = dati codice
- MANS = pagine man
- fONTI = fonte
quindi dist_noinst_DATA è per i file di dati richiesti per la costruzione ma non installati.
Una volta che avete entrambi questi file in genere è necessario eseguire qualcosa di simile:
aclocal & & autoheader & & automake --add mancanti & & autoconf
di impostare autotools file necessari per la costruzione. Questo può essere inserito in uno script di shell ed eseguito prima di eseguire ./configure.
Quando leggo la manpage collegata, non sembra rispondere alla domanda che credo sia stata posta: che cosa fornisce in primo luogo una piattaforma flessibile (ad esempio, aiuto nella scrittura di configure e makefile) ... rpmbuild sembra presumere che tu abbia una cosa del genere in atto. – dmckee
Forse ho frainteso la domanda. http://www.lrde.epita.fr/~adl/autotools.html – Sharique