File:  [local] / rpl / src / Makefile.am
Revision 1.2: download - view: text, annotated - select for diffs - revision graph
Fri Jan 29 11:38:15 2010 UTC (14 years, 3 months ago) by bertrand
Branches: MAIN
CVS tags: rpl-4_0_10, HEAD


Ajout du fichier asprintf.c

    1: ldadd_libncurses = $(top_builddir)/tools/@NCURSES@/lib/libncurses.a
    2: include_libncurses = -I$(top_builddir)/tools/@NCURSES@/include \
    3:         -I$(top_srcdir)/tools/@NCURSES@/include
    4: 
    5: ldadd_libhistory = $(top_builddir)/tools/@READLINE@/libhistory.a
    6: ldadd_libreadline = $(top_builddir)/tools/@READLINE@/libreadline.a
    7: include_libreadline = -I$(top_srcdir)/tools/@READLINE@ \
    8:         -I$(top_builddir)/tools/@READLINE@ -DREADLINE_LIBRARY
    9: 
   10: ldadd_libgsl = $(top_builddir)/tools/@GSL@/.libs/libgsl.a
   11: include_libgsl = -I$(top_builddir)/tools/@GSL@
   12: 
   13: ldadd_libiconv = $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a
   14: include_libiconv = -I$(top_builddir)/tools/@ICONV@/include
   15: 
   16: date := -Dd_date_rpl="\"$(shell LC_ALL=fr_FR date +'%A %x, %X %Z')\"" \
   17:         -Dd_date_en_rpl="\"$(shell LC_ALL=C date +'%A %x, %X %Z')\""
   18: 
   19: SRCC=\
   20:     algebre_lineaire1.c\
   21:     algebre_lineaire2.c\
   22:     algebre_lineaire3.c\
   23:     algebre_lineaire4.c\
   24:     analyse.c\
   25:     analyse_notation_algebrique.c\
   26:     analyse_notation_rpn.c\
   27:     asprintf.c\
   28:     bibliotheques_externes.c\
   29:     calcul_differentiel.c\
   30:     calcul_integral.c\
   31:     chainage.c\
   32:     compilation.c\
   33:     completion.c\
   34:     daemon.c\
   35:     date.c\
   36:     depassements.c\
   37:     dft.c\
   38:     encart.c\
   39:     evaluation.c\
   40:     fonctions_trigonometriques.c\
   41:     formateur.c\
   42:     formateur_fichiers.c\
   43:     fusible.c\
   44:     generateurs_aleatoires.c\
   45:     gestion_fichiers.c\
   46:     gestion_interruptions.c\
   47:     gestion_niveaux.c\
   48:     gestion_objets.c\
   49:     gestion_pile.c\
   50:     gestion_pile_last.c\
   51:     gestion_pile_systeme.c\
   52:     gestion_processus.c\
   53:     gestion_threads.c\
   54:     gestion_variables.c\
   55:     gestion_variables_statiques.c\
   56:     gestion_variables_partagees.c\
   57:     indicateurs.c\
   58:     instructions_a1.c\
   59:     instructions_a2.c\
   60:     instructions_a3.c\
   61:     instructions_a4.c\
   62:     instructions_a5.c\
   63:     instructions_b1.c\
   64:     instructions_c1.c\
   65:     instructions_c2.c\
   66:     instructions_c3.c\
   67:     instructions_c4.c\
   68:     instructions_c5.c\
   69:     instructions_c6.c\
   70:     instructions_c7.c\
   71:     instructions_d1.c\
   72:     instructions_d2.c\
   73:     instructions_d3.c\
   74:     instructions_d4.c\
   75:     instructions_d5.c\
   76:     instructions_d6.c\
   77:     instructions_e1.c\
   78:     instructions_e2.c\
   79:     instructions_e3.c\
   80:     instructions_e4.c\
   81:     instructions_f1.c\
   82:     instructions_f2.c\
   83:     instructions_f3.c\
   84:     instructions_f4.c\
   85:     instructions_g1.c\
   86:     instructions_g2.c\
   87:     instructions_g3.c\
   88:     instructions_g4.c\
   89:     instructions_h1.c\
   90:     instructions_h2.c\
   91:     instructions_i1.c\
   92:     instructions_i2.c\
   93:     instructions_i3.c\
   94:     instructions_i4.c\
   95:     instructions_j1.c\
   96:     instructions_k1.c\
   97:     instructions_l1.c\
   98:     instructions_l2.c\
   99:     instructions_l3.c\
  100:     instructions_l4.c\
  101:     instructions_l5.c\
  102:     instructions_m1.c\
  103:     instructions_m2.c\
  104:     instructions_m3.c\
  105:     instructions_m4.c\
  106:     instructions_n1.c\
  107:     instructions_n2.c\
  108:     instructions_o1.c\
  109:     instructions_o2.c\
  110:     instructions_p1.c\
  111:     instructions_p2.c\
  112:     instructions_p3.c\
  113:     instructions_p4.c\
  114:     instructions_p5.c\
  115:     instructions_p6.c\
  116:     instructions_p7.c\
  117:     instructions_q1.c\
  118:     instructions_r1.c\
  119:     instructions_r2.c\
  120:     instructions_r3.c\
  121:     instructions_r4.c\
  122:     instructions_r5.c\
  123:     instructions_r6.c\
  124:     instructions_s1.c\
  125:     instructions_s2.c\
  126:     instructions_s3.c\
  127:     instructions_s4.c\
  128:     instructions_s5.c\
  129:     instructions_s6.c\
  130:     instructions_s7.c\
  131:     instructions_s8.c\
  132:     instructions_s9.c\
  133:     instructions_s10.c\
  134:     instructions_t1.c\
  135:     instructions_t2.c\
  136:     instructions_t3.c\
  137:     instructions_u1.c\
  138:     instructions_v1.c\
  139:     instructions_v2.c\
  140:     instructions_w1.c\
  141:     instructions_w2.c\
  142:     instructions_x1.c\
  143:     instructions_x2.c\
  144:     instructions_y1.c\
  145:     interface_gnuplot.c\
  146:     interface_tex.c\
  147:     interruptions.c\
  148:     messages.c\
  149:     occupation_memoire.c\
  150:     operations_atomiques.c\
  151:     operations_binaires.c\
  152:     optimisation.c\
  153:     profilage.c\
  154:     rpl.c\
  155:     rplcore.c\
  156:     sequenceur.c\
  157:     simplification.c\
  158:     sommations.c\
  159:     sql.c\
  160:     statistiques.c\
  161:     transliteration.c\
  162:     types.c
  163: 
  164: SRCH=\
  165:     completion.h\
  166:     convert.h\
  167:     copyright.h\
  168:     garanties.h\
  169:     gnuplot.h\
  170:     librpl.h\
  171:     licence.h\
  172:     rpl.h\
  173:     rplexternals.h\
  174:     rpltypes.h\
  175:     tex.h\
  176:     usages.h\
  177:     vim.h
  178: 
  179: SRCF=\
  180:     arithmetique.f\
  181:     bibliotheque_logarithmique.f\
  182:     bibliotheque_trigonometrique.f
  183: 
  184: SRCF90=\
  185:     combinaisons.F90\
  186:     distributions.F90\
  187:     fonctions_speciales.F90
  188: 
  189: SRCINC=\
  190:     rplftypes.inc
  191: 
  192: SRCXPM=\
  193:     rpl.xpm
  194: 
  195: INIT_EXE=init.c
  196: 
  197: INIT_LIB=librpl.c
  198: 
  199: LIB=-lz @LIBMTMALLOC@
  200: 
  201: bin_PROGRAMS = rpl
  202: lib_LIBRARIES = librpl.a
  203: 
  204: SRCCc=$(SRCC:.c=.conv.c)
  205: SRCHc=$(SRCH:.h=.conv.h)
  206: SRCFc=$(SRCF:.f=.conv.f)
  207: SRCF90c=$(SRCF90:.F90=.conv.F90)
  208: SRCINCc=$(SRCINC:.inc=.conv.inc)
  209: INIT_LIBc=$(INIT_LIB:.c=.conv.c)
  210: INIT_EXEc=$(INIT_EXE:.c=.conv.c)
  211: 
  212: %.conv.c: %.c
  213:     $(top_builddir)/rpliconv/rpliconv \
  214:             -f `$(top_builddir)/tools/@FILE@/src/rplfile \
  215:             -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \
  216:             awk -F= '{print $$2;}'` \
  217:             -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@
  218: 
  219: %.conv.h: %.h
  220:     $(top_builddir)/rpliconv/rpliconv \
  221:             -f `$(top_builddir)/tools/@FILE@/src/rplfile \
  222:             -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \
  223:             awk -F= '{print $$2;}'` \
  224:             -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@
  225: 
  226: %.conv.f: %.f
  227:     $(top_builddir)/rpliconv/rpliconv \
  228:             -f `$(top_builddir)/tools/@FILE@/src/rplfile \
  229:             -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \
  230:             awk -F= '{print $$2;}'` \
  231:             -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@
  232: 
  233: %.conv.F90: %.F90
  234:     $(top_builddir)/rpliconv/rpliconv \
  235:             -f `$(top_builddir)/tools/@FILE@/src/rplfile \
  236:             -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \
  237:             awk -F= '{print $$2;}'` \
  238:             -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@
  239: 
  240: %.conv.inc: %.inc
  241:     $(top_builddir)/rpliconv/rpliconv \
  242:             -f `$(top_builddir)/tools/@FILE@/src/rplfile \
  243:             -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \
  244:             awk -F= '{print $$2;}'` \
  245:             -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@
  246: 
  247: licences:
  248:     cat $(srcdir)/../COPYING > $(srcdir)/licence.h
  249:     echo >> $(srcdir)/licence.h
  250:     echo >> $(srcdir)/licence.h
  251:     echo "#ifndef INCLUSION_LICENCE" >> $(srcdir)/licence.h
  252:     echo "#   define INCLUSION_LICENCE" >> $(srcdir)/licence.h
  253:     echo "    unsigned char CeCILL_fr[] =" >> $(srcdir)/licence.h
  254:     sed -e '1,$$s/"/\\"/g' $(srcdir)/../Licence_CeCILL_V2-fr.txt | \
  255:             awk -F'\n' '{ printf("\"%s\\n\"\n", $$1);}' \
  256:             >> $(srcdir)/licence.h
  257:     echo "    ;" >> $(srcdir)/licence.h
  258:     echo "    unsigned char CeCILL_en[] =" >> $(srcdir)/licence.h
  259:     sed -e '1,$$s/"/\\"/g' $(srcdir)/../Licence_CeCILL_V2-en.txt | \
  260:             awk -F'\n' '{ printf("\"%s\\n\"\n", $$1);}' \
  261:             >> $(srcdir)/licence.h
  262:     echo "    ;" >> $(srcdir)/licence.h
  263:     echo "#endif" >> $(srcdir)/licence.h
  264:     echo >> $(srcdir)/licence.h
  265:     echo "// vim: ts=4" >> $(srcdir)/licence.h
  266:     for i in $(SRCC) $(SRCH) $(INIT_EXE) $(INIT_LIB); \
  267:     do \
  268:         cat $(srcdir)/../COPYING > $(srcdir)/tmp; \
  269:         echo >> $(srcdir)/tmp; \
  270:         echo >> $(srcdir)/tmp; \
  271:         awk -F'\n' 'BEGIN {d=0;} /^#/ {d=1;} {if(d==1) print $$1;}' \
  272:                 $(srcdir)/$$i >> $(srcdir)/tmp; \
  273:         mv -f $(srcdir)/tmp $(srcdir)/$$i; \
  274:     done
  275:     for i in $(SRCINC); \
  276:     do \
  277:         iconv -f `file -i $(srcdir)/../COPYING | awk -F= '{print $$2;}'` \
  278:                 $(srcdir)/../COPYING | \
  279:                 awk -F'\n' '! (/^\/\*/ || /^\*\//) \
  280:                 {printf("!%s\n", substr($$1,2));}' | \
  281:                 iconv -t `file -i $(srcdir)/../COPYING | \
  282:                 awk -F= '{print $$2;}'` > $(srcdir)/tmp; \
  283:         awk -F'\n' 'BEGIN {d=0;} ! /^!/ {d=1;} {if(d==1) print $$1;}' \
  284:                 $(srcdir)/$$i >> $(srcdir)/tmp; \
  285:         mv -f $(srcdir)/tmp $(srcdir)/$$i; \
  286:     done
  287:     for i in $(SRCF); \
  288:     do \
  289:         iconv -f `file -i $(srcdir)/../COPYING | awk -F= '{print $$2;}'` \
  290:                 $(srcdir)/../COPYING | \
  291:                 awk -F'\n' '! (/^\/\*/ || /^\*\//) \
  292:                 {printf("C%s\n", substr($$1,2));}' | \
  293:                 iconv -t `file -i $(srcdir)/../COPYING | \
  294:                 awk -F= '{print $$2;}'` > $(srcdir)/tmp; \
  295:         awk -F'\n' 'BEGIN {d=0;} ! /^C/ {d=1;} {if(d==1) print $$1;}' \
  296:                 $(srcdir)/$$i >> $(srcdir)/tmp; \
  297:         mv -f $(srcdir)/tmp $(srcdir)/$$i; \
  298:     done
  299:     for i in $(SRCF90); \
  300:     do \
  301:         iconv -f `file -i $(srcdir)/../COPYING | awk -F= '{print $$2;}'` \
  302:                 $(srcdir)/../COPYING | \
  303:                 awk -F'\n' '! (/^\/\*/ || /^\*\//) \
  304:                 {printf("!%s\n", substr($$1,2));}' | \
  305:                 iconv -t `file -i $(srcdir)/../COPYING | \
  306:                 awk -F= '{print $$2;}'` > $(srcdir)/tmp; \
  307:         awk -F'\n' 'BEGIN {d=0;} ! /^!/ {d=1;} {if(d==1) print $$1;}' \
  308:                 $(srcdir)/$$i >> $(srcdir)/tmp; \
  309:         mv -f $(srcdir)/tmp $(srcdir)/$$i; \
  310:     done
  311: 
  312: librplprototypes.h: rpl.h conversion.awk
  313:     awk -f $(srcdir)/conversion.awk $(srcdir)/rpl.h > \
  314:             $(top_builddir)/src/librplprototypes.h
  315: generateurs.c: generateurs_aleatoires.awk
  316:     awk -f $(srcdir)/generateurs_aleatoires.awk \
  317:             $(srcdir)/../tools/@GSL@/rng/gsl_rng.h > \
  318:             $(top_builddir)/src/generateurs.c
  319: 
  320: EXTRA_DIST = $(SRCC) $(SRCH) $(SRCF) $(SRCF90) $(SRCINC) \
  321:         $(INIT_EXE) $(INIT_LIB) $(SRCXPM) \
  322:         conversion.awk generateurs_aleatoires.awk
  323: BUILT_SOURCES = librplprototypes.h generateurs.c \
  324:         $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) \
  325:         $(INIT_LIBc) $(SRCINCc) $(INIT_EXEc)
  326: CLEANFILES= $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) $(SRCINCc) \
  327:         $(INIT_LIBc) $(INIT_EXEc) librplprototypes.h
  328: 
  329: nodist_rpl_SOURCES = $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) $(INIT_EXEc) \
  330:         $(SRCXPM) $(SRCINCc)
  331: #rpl_LDFLAGS = -g @DEBUG@ @PROFILAGE@ $(LIB) -rdynamic
  332: rpl_LDFLAGS = -g @DEBUG@ @PROFILAGE@ $(LIB) -export-dynamic
  333: 
  334: rpl_CFLAGS = $(AM_CFLAGS) -D_REENTRANT -Wall -Wextra \
  335:              -Wno-pointer-sign -Wno-unused-parameter
  336: rpl_FFLAGS = $(AM_FFLAGS) -fno-f2c
  337: rpl_FCFLAGS = $(AM_FCFLAGS) -fno-second-underscore -fno-f2c
  338: 
  339: nodist_librpl_a_SOURCES = $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) $(INIT_LIBc) \
  340:          $(SRCXPM) $(SRCINCc)
  341: librpl_a_CFLAGS = $(AM_CFLAGS) -DLIBRPL -D_REENTRANT \
  342:         -Wall -Wextra -Wno-pointer-sign -Wno-unused-parameter
  343: librpl_a_FFLAGS = $(AM_FFLAGS) -ff2c
  344: librpl_a_FCFLAGS = $(AM_FCLAGS) -fno-second-underscore
  345: 
  346: include_HEADERS = rplexternals.h rpltypes.h rpl.h librpl.h
  347: 
  348: INCLUDES = -I$(srcdir) -I$(top_builddir) \
  349:         $(include_libreadline) $(include_libncurses) $(include_libgsl) \
  350:         $(include_libiconv) \
  351:         @includeX@ @libMySQLinc@ @libPgSQLinc@
  352: DEFS = -DHAVE_CONFIG_H -Dd_version_rpl=\"@VERSION@\" \
  353:         -Dd_exec_path=\"@RUNPATH@\" @FORCE_GNUPLOT_PATH@ @DEBUG_CODE@ \
  354:         @MOTIF_SUPPORT@ @POSTSCRIPT_SUPPORT@ @GNUPLOT_SUPPORT@ \
  355:         @VIM_SUPPORT@ @MYSQL_SUPPORT@ @POSTGRESQL_SUPPORT@ \
  356:         @EXPERIMENTAL_CODE@ $(date) -g @PROFILAGE@ \
  357:         -Dd_locale=\"$(shell locale charmap)\" \
  358:         -D$(shell uname)
  359: rpl_LDADD = $(top_builddir)/lapack/lapack/liblapack.a \
  360:         $(top_builddir)/lapack/blas/libblas.a \
  361:         $(ldadd_libhistory) $(ldadd_libreadline) $(ldadd_libncurses) \
  362:         $(ldadd_libiconv) \
  363:         $(ldadd_libgsl) @libX@ @libMySQLlib@ @libPgSQLlib@
  364: 
  365: always: $(top_builddir)/src/rpl.conv.c
  366:     touch $(top_builddir)/src/rpl.conv.c; \
  367:     (cd $(srcdir); ctags $(SRCC) $(SRCF) $(SRCF90) $(SRCH) $(SRCINC) \
  368:             $(INIT_LIB) $(INIT_EXE) 2>&1 /dev/null);
  369: 
  370: .PHONY: always librpl licences
  371: 
  372: all-local: always
  373: 
  374: install-exec-local: librpl
  375: 
  376: librpl: install-libLIBRARIES
  377:     echo \
  378:         open $(libdir)/librpl.a+ \
  379:         addlib $(top_builddir)/lapack/lapack/liblapack.a+ \
  380:         addlib $(top_builddir)/lapack/blas/libblas.a+ \
  381:         addlib $(ldadd_libhistory)+ \
  382:         addlib $(ldadd_libreadline)+ \
  383:         addlib $(ldadd_libncurses)+ \
  384:         addlib $(ldadd_libgsl)+ \
  385:         addlib $(ldadd_libiconv)+ \
  386:         save+ \
  387:         end \
  388:     | tr '+' '\n' | ar -M; \
  389:     $(RANLIB) $(libdir)/librpl.a

CVSweb interface <joel.bertrand@systella.fr>