--- rpl/src/Makefile.am 2010/04/27 15:53:36 1.18 +++ rpl/src/Makefile.am 2011/10/10 10:58:11 1.68 @@ -1,47 +1,63 @@ -ldadd_libncurses = $(top_builddir)/tools/@NCURSES@/lib/libncurses.a +include $(top_builddir)/tools/openmotif.lib + +ldadd_libncurses = $(top_builddir)/tools/@NCURSES@/lib/@LIB_PREFIX@ncurses.a include_libncurses = -I$(top_builddir)/tools/@NCURSES@/include \ -I$(top_srcdir)/tools/@NCURSES@/include -ldadd_libhistory = $(top_builddir)/tools/@READLINE@/libhistory.a -ldadd_libreadline = $(top_builddir)/tools/@READLINE@/libreadline.a +ldadd_libhistory = $(top_builddir)/tools/@READLINE@/@LIB_PREFIX@history.a +ldadd_libreadline = $(top_builddir)/tools/@READLINE@/@LIB_PREFIX@readline.a include_libreadline = -I$(top_srcdir)/tools/@READLINE@ \ -I$(top_builddir)/tools/@READLINE@ -DREADLINE_LIBRARY -ldadd_libgsl = $(top_builddir)/tools/@GSL@/.libs/libgsl.a +ldadd_libgsl = $(top_builddir)/tools/@GSL@/.libs/@LIB_PREFIX@gsl.a include_libgsl = -I$(top_builddir)/tools/@GSL@ -ldadd_libiconv = $(top_builddir)/tools/@ICONV@/lib/.libs/libiconv.a +ldadd_libiconv = $(top_builddir)/tools/@ICONV@/lib/.libs/@LIB_PREFIX@iconv.a include_libiconv = -I$(top_builddir)/tools/@ICONV@/include -ldadd_libcrypto = $(top_builddir)/tools/@OPENSSL@/libcrypto.a -ldadd_libssl = $(top_builddir)/tools/@OPENSSL@/libssl.a +ldadd_libcrypto = $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@crypto.a +ldadd_libssl = $(top_builddir)/tools/@OPENSSL@/@LIB_PREFIX@ssl.a include_libcrypto = -I$(top_builddir)/tools/@OPENSSL@/include -ldadd_libsqlite = $(top_builddir)/tools/@SQLITE@/.libs/libsqlite3.a +ldadd_libsqlite = $(top_builddir)/tools/@SQLITE@/.libs/@LIB_PREFIX@sqlite3.a include_libsqlite = -I$(top_srcdir)/tools/@SQLITE@ -date := -Dd_date_rpl="\"$(shell LC_ALL=fr_FR date +'%A %x, %X %Z' | \ +ldadd_libsigsegv = $(top_builddir)/tools/@SIGSEGV@/src/.libs/@LIB_PREFIX@sigsegv.a +include_libsigsegv = -I$(top_builddir)/tools/@SIGSEGV@/src + +ldadd_librplcas = @LIBRPLCAS@ +include_librplcas = -I$(top_builddir)/rplcas/include/giac \ + -I$(top_builddir)/rplcas/include + +ldadd_libmotif = @LIBMOTIF@ +include_libmotif = @INCMOTIF@ + +date = -Dd_date_rpl="\"$(shell LC_ALL=fr_FR date +'%A %x, %X %Z' | \ $(AWK) '{ v=$$0; gsub(/^[ \t]+/, "", v); gsub(/[ \t]+$$/, "", v); \ printf("%s\n", v);}')\"" \ -Dd_date_en_rpl="\"$(shell LC_ALL=C date +'%A %x, %X %Z' | \ $(AWK) '{ v=$$0; gsub(/^[ \t]+/, "", v); gsub(/[ \t]+$$/, "", v); \ printf("%s\n", v);}')\"" -hash := -Drplpp_md5="\"$(shell $(top_builddir)/rplsums/rplmd5sum \ +hash = -Drplpp_md5="\"$(shell @RPLTOOLS@/rplsums/rplmd5sum$(EXEEXT) \ $(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT))\"" \ - -Drplpp_sha1="\"$(shell $(top_builddir)/rplsums/rplsha1sum \ + -Drplpp_sha1="\"$(shell @RPLTOOLS@/rplsums/rplsha1sum$(EXEEXT) \ $(top_builddir)/tools/@GPP@/src/gpp$(EXEEXT))\"" \ - -Drplfile_md5="\"$(shell $(top_builddir)/rplsums/rplmd5sum \ + -Drplfile_md5="\"$(shell @RPLTOOLS@/rplsums/rplmd5sum$(EXEEXT) \ $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT))\"" \ - -Drplfile_sha1="\"$(shell $(top_builddir)/rplsums/rplsha1sum \ + -Drplfile_sha1="\"$(shell @RPLTOOLS@/rplsums/rplsha1sum$(EXEEXT) \ $(top_builddir)/tools/@FILE@/src/rplfile$(EXEEXT))\"" \ - -Drpliconv_md5="\"$(shell $(top_builddir)/rplsums/rplmd5sum \ + -Drpliconv_md5="\"$(shell @RPLTOOLS@/rplsums/rplmd5sum$(EXEEXT) \ $(top_builddir)/rpliconv/rpliconv$(EXEEXT))\"" \ - -Drpliconv_sha1="\"$(shell $(top_builddir)/rplsums/rplsha1sum \ + -Drpliconv_sha1="\"$(shell @RPLTOOLS@/rplsums/rplsha1sum$(EXEEXT) \ $(top_builddir)/rpliconv/rpliconv$(EXEEXT))\"" \ - -Drplconvert_md5="\"$(shell $(top_builddir)/rplsums/rplmd5sum \ + -Drplawk_md5="\"$(shell @RPLTOOLS@/rplsums/rplmd5sum$(EXEEXT) \ + $(top_builddir)/rplawk/rplawk$(EXEEXT))\"" \ + -Drplawk_sha1="\"$(shell @RPLTOOLS@/rplsums/rplsha1sum$(EXEEXT) \ + $(top_builddir)/rplawk/rplawk$(EXEEXT))\"" \ + -Drplconvert_md5="\"$(shell @RPLTOOLS@/rplsums/rplmd5sum$(EXEEXT) \ $(top_builddir)/tools/@UNITS@/units$(EXEEXT))\"" \ - -Drplconvert_sha1="\"$(shell $(top_builddir)/rplsums/rplsha1sum \ + -Drplconvert_sha1="\"$(shell @RPLTOOLS@/rplsums/rplsha1sum$(EXEEXT) \ $(top_builddir)/tools/@UNITS@/units$(EXEEXT))\"" SRCC=\ @@ -69,6 +85,7 @@ SRCC=\ fonctions_trigonometriques.c\ formateur.c\ formateur_fichiers.c\ + formateur_flux.c\ fusible.c\ generateurs_aleatoires.c\ gestion_fichiers.c\ @@ -83,6 +100,7 @@ SRCC=\ gestion_variables.c\ gestion_variables_statiques.c\ gestion_variables_partagees.c\ + getaddrinfo.c\ indicateurs.c\ instructions_a1.c\ instructions_a2.c\ @@ -128,10 +146,12 @@ SRCC=\ instructions_l3.c\ instructions_l4.c\ instructions_l5.c\ + instructions_l6.c\ instructions_m1.c\ instructions_m2.c\ instructions_m3.c\ instructions_m4.c\ + instructions_m5.c\ instructions_n1.c\ instructions_n2.c\ instructions_o1.c\ @@ -160,6 +180,7 @@ SRCC=\ instructions_s8.c\ instructions_s9.c\ instructions_s10.c\ + instructions_s11.c\ instructions_t1.c\ instructions_t2.c\ instructions_t3.c\ @@ -191,11 +212,15 @@ SRCC=\ transliteration.c\ types.c +SRCCPP=\ + interface_cas.cpp + SRCH=\ completion.h\ convert.h\ copyright.h\ garanties.h\ + getaddrinfo.h\ gnuplot.h\ librpl.h\ licence.h\ @@ -226,51 +251,59 @@ INIT_EXE=init.c INIT_LIB=librpl.c -LIB=-lz @LIBMTMALLOC@ +LIB=-lz @MALLOC@ bin_PROGRAMS = rpl lib_LIBRARIES = librpl.a -SRCCc=$(SRCC:.c=.conv.c) -SRCHc=$(SRCH:.h=.conv.h) -SRCFc=$(SRCF:.f=.conv.f) -SRCF90c=$(SRCF90:.F90=.conv.F90) -SRCINCc=$(SRCINC:.inc=.conv.inc) -INIT_LIBc=$(INIT_LIB:.c=.conv.c) -INIT_EXEc=$(INIT_EXE:.c=.conv.c) - -%.conv.c: %.c - $(top_builddir)/rpliconv/rpliconv \ - -f `$(top_builddir)/tools/@FILE@/src/rplfile \ - -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \ +SRCCc=$(SRCC:.c=-conv.c) +SRCHc=$(SRCH:.h=-conv.h) +SRCCPPc=$(SRCCPP:.cpp=-conv.cpp) +SRCFc=$(SRCF:.f=-conv.f) +SRCF90c=$(SRCF90:.F90=-conv.F90) +SRCINCc=$(SRCINC:.inc=-conv.inc) +INIT_LIBc=$(INIT_LIB:.c=-conv.c) +INIT_EXEc=$(INIT_EXE:.c=-conv.c) + +%-conv.c: %.c + @RPLTOOLS@/rpliconv/rpliconv \ + -f `@RPLTOOLS@/tools/@FILE@/src/rplfile \ + -m @RPLTOOLS@/tools/@FILE@/magic/magic -i $< | \ $(AWK) -F= '{print $$2;}'` \ -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@ -%.conv.h: %.h - $(top_builddir)/rpliconv/rpliconv \ - -f `$(top_builddir)/tools/@FILE@/src/rplfile \ - -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \ +%-conv.cpp: %.cpp + @RPLTOOLS@/rpliconv/rpliconv \ + -f `@RPLTOOLS@/tools/@FILE@/src/rplfile \ + -m @RPLTOOLS@/tools/@FILE@/magic/magic -i $< | \ $(AWK) -F= '{print $$2;}'` \ -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@ -%.conv.f: %.f - $(top_builddir)/rpliconv/rpliconv \ - -f `$(top_builddir)/tools/@FILE@/src/rplfile \ - -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \ +%-conv.h: %.h + @RPLTOOLS@/rpliconv/rpliconv \ + -f `@RPLTOOLS@/tools/@FILE@/src/rplfile \ + -m @RPLTOOLS@/tools/@FILE@/magic/magic -i $< | \ $(AWK) -F= '{print $$2;}'` \ -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@ -%.conv.F90: %.F90 - $(top_builddir)/rpliconv/rpliconv \ - -f `$(top_builddir)/tools/@FILE@/src/rplfile \ - -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \ +%-conv.f: %.f + @RPLTOOLS@/rpliconv/rpliconv \ + -f `@RPLTOOLS@/tools/@FILE@/src/rplfile \ + -m @RPLTOOLS@/tools/@FILE@/magic/magic -i $< | \ $(AWK) -F= '{print $$2;}'` \ -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@ -%.conv.inc: %.inc - $(top_builddir)/rpliconv/rpliconv \ - -f `$(top_builddir)/tools/@FILE@/src/rplfile \ - -m $(top_builddir)/tools/@FILE@/magic/magic -i $< | \ +%-conv.F90: %.F90 + @RPLTOOLS@/rpliconv/rpliconv \ + -f `@RPLTOOLS@/tools/@FILE@/src/rplfile \ + -m @RPLTOOLS@/tools/@FILE@/magic/magic -i $< | \ + $(AWK) -F= '{print $$2;}'` \ + -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@ + +%-conv.inc: %.inc + @RPLTOOLS@/rpliconv/rpliconv \ + -f `@RPLTOOLS@/tools/@FILE@/src/rplfile \ + -m @RPLTOOLS@/tools/@FILE@/magic/magic -i $< | \ $(AWK) -F= '{print $$2;}'` \ -t @FINAL_ENCODING@//TRANSLIT $< | expand -t 4 > $@ @@ -293,7 +326,7 @@ licences: echo "#endif" >> $(srcdir)/licence.h echo >> $(srcdir)/licence.h echo "// vim: ts=4" >> $(srcdir)/licence.h - for i in $(SRCC) $(SRCH) $(INIT_EXE) $(INIT_LIB); \ + for i in $(SRCC) $(SRCCPP) $(SRCH) $(INIT_EXE) $(INIT_LIB); \ do \ cat $(srcdir)/../COPYING > $(srcdir)/tmp; \ echo >> $(srcdir)/tmp; \ @@ -349,12 +382,14 @@ generateurs.c: generateurs_aleatoires.aw $(top_builddir)/src/generateurs.c rpl.inc: - echo BUILDPATH=$(shell pwd)/.. > $@ - echo COMPILE=$(DEFS) >> $@ - echo LINK=@libX@ @libMySQLlib@ @libPgSQLlib@ $(LIBS) >> $@ - echo OBJECTS=$(SRCCc:.c=.o) $(SRCFc:.f=.o) $(SRCF90c:.F90=.o) \ - librpl.conv.o >> $@ - echo EXTOBJECTS= \ + echo BUILDPATH=$(top_builddir)/.. > $@ + echo COMPILE="$(DEFS) @ABI@" | sed -e '1,$$s/"/\\"/g' | \ + sed -e '1,$$s/=\\"/="\\"/g' | sed -e '1,$$s/\\" /\\"" /g' >> $@ + echo LINK=@libX@ @libMySQLlib@ @libPgSQLlib@ -lz >> $@ + echo OBJECTS=$(SRCCc:.c=.$(OBJEXT)) $(SRCFc:.f=.$(OBJEXT)) \ + $(SRCF90c:.F90=.$(OBJEXT)) \ + librpl-conv.$(OBJEXT) >> $@ + echo EXTOBJECTS= @EXT_SQL@ \ $(top_builddir)/lapack/lapack/liblapack.a \ $(top_builddir)/lapack/blas/libblas.a \ $(ldadd_libhistory) \ @@ -365,33 +400,37 @@ rpl.inc: $(ldadd_libcrypto) \ $(ldadd_libssl) \ $(ldadd_libsqlite) \ + $(ldadd_librplcas) \ + $(ldadd_libsigsegv) \ + $(ldadd_libmotif) \ >> $@ - gcc $(INCLUDES) $(DEFS) $(AM_CFLAGS) $(rpl_CFLAGS) librpl.conv.c \ - -c -o rpl-librpl.conv.o -EXTRA_DIST = $(SRCC) $(SRCH) $(SRCF) $(SRCF90) $(SRCINC) \ +EXTRA_DIST = $(SRCC) $(SRCH) $(SRCCPP) $(SRCF) $(SRCF90) $(SRCINC) \ $(INIT_EXE) $(INIT_LIB) $(SRCXPM) \ conversion.awk generateurs_aleatoires.awk BUILT_SOURCES = librplprototypes.h generateurs.c \ - $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) \ + $(SRCCc) $(SRCHc) $(SRCCPPc) $(SRCFc) $(SRCF90c) \ $(INIT_LIBc) $(SRCINCc) $(INIT_EXEc) \ rpl.inc -CLEANFILES= $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) $(SRCINCc) \ +CLEANFILES= $(SRCCc) $(SRCHc) $(SRCCPPc) $(SRCFc) $(SRCF90c) $(SRCINCc) \ $(INIT_LIBc) $(INIT_EXEc) librplprototypes.h generateurs.c \ - rpl.inc rpl-librpl.conv.o + rpl.inc rpl-librpl-conv.$(OBJEXT) -nodist_rpl_SOURCES = $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) $(INIT_EXEc) \ +nodist_rpl_SOURCES = \ + $(SRCCc) $(SRCHc) $(SRCCPPc) $(SRCFc) $(SRCF90c) $(INIT_EXEc) \ $(SRCXPM) $(SRCINCc) -rpl_LDFLAGS = -g @PROFILAGE@ $(LIB) -Wl,@EXPORT_DYNAMIC@ - -rpl_CFLAGS = $(AM_CFLAGS) -ULIBRPL -Wall -Wextra \ +rpl_LDFLAGS = -g @PROFILAGE@ $(LIB) @EXPORT_DYNAMIC@ @ELF@ @WHOLE_LIB1@ \ + $(ldadd_libmotif) $(LD_MOTIF_LIBS) \ + $(LD_MOTIF_X_XMU) @WHOLE_LIB2@ +rpl_CFLAGS = $(AM_CFLAGS) @C_STANDARD@ -Wall -Wextra -Wno-unused-function \ -Wno-pointer-sign -Wno-unused-parameter @NESTED_FUNCTIONS@ rpl_FFLAGS = $(AM_FFLAGS) -fno-f2c rpl_FCFLAGS = $(AM_FCFLAGS) -fno-second-underscore -fno-f2c -nodist_librpl_a_SOURCES = $(SRCCc) $(SRCHc) $(SRCFc) $(SRCF90c) $(INIT_LIBc) \ - $(SRCXPM) $(SRCINCc) -librpl_a_CFLAGS = $(AM_CFLAGS) -DLIBRPL -Wall -Wextra \ +nodist_librpl_a_SOURCES = \ + $(SRCCc) $(SRCHc) $(SRCFc) $(SRCCPPc) $(SRCF90c) $(INIT_LIBc) \ + $(SRCXPM) $(SRCINCc) +librpl_a_CFLAGS = $(AM_CFLAGS) @C_STANDARD@ -Wall -Wextra -Wno-unused-function \ -Wno-pointer-sign -Wno-unused-parameter @NESTED_FUNCTIONS@ librpl_a_FFLAGS = $(AM_FFLAGS) -ff2c librpl_a_FCFLAGS = $(AM_FCLAGS) -fno-second-underscore @@ -401,25 +440,29 @@ include_HEADERS = rplexternals.h rpltype INCLUDES = -I$(srcdir) -I$(top_builddir) \ $(include_libreadline) $(include_libncurses) $(include_libgsl) \ - $(include_libiconv) $(include_libcrypto) $(include_libsqlite)\ + $(include_libiconv) $(include_libcrypto) $(include_libsqlite) \ + $(include_librplcas) $(include_libsigsegv) \ + $(include_libmotif) \ @includeX@ @libMySQLinc@ @libPgSQLinc@ DEFS = -DHAVE_CONFIG_H -Dd_version_rpl=\"@VERSION@\" \ -Dd_exec_path=\"@RUNPATH@\" @FORCE_GNUPLOT_PATH@ @DEBUG@ \ @MOTIF_SUPPORT@ @POSTSCRIPT_SUPPORT@ @GNUPLOT_SUPPORT@ \ @VIM_SUPPORT@ @MYSQL_SUPPORT@ @POSTGRESQL_SUPPORT@ \ - @SEMAPHORES_NOMMES@ \ + @SEMAPHORES_NOMMES@ @IPCS_SYSV@ @SEMUN@ @IPV6@ \ @EXPERIMENTAL_CODE@ $(date) $(hash) -g @PROFILAGE@ \ -Dd_locale=\"@FINAL_ENCODING@\" \ - -D@OS@ -rpl_LDADD = $(top_builddir)/lapack/lapack/liblapack.a \ + -D@OS@ @BSH_PATH@ @RPLCAS@ -DHOST=\"@HOST@\" @SHARED_MEMORY@ \ + @PSELECT@ +rpl_LDADD = -lgfortran \ + $(top_builddir)/lapack/lapack/liblapack.a \ $(top_builddir)/lapack/blas/libblas.a \ $(ldadd_libhistory) $(ldadd_libreadline) $(ldadd_libncurses) \ $(ldadd_libiconv) $(ldadd_libcrypto) $(ldadd_libssl) \ - $(ldadd_libsqlite) \ - $(ldadd_libgsl) @libX@ @libMySQLlib@ @libPgSQLlib@ + $(ldadd_libsqlite) $(ldadd_libsigsegv) \ + $(ldadd_libgsl) $(ldadd_librplcas) @libX@ @libMySQLlib@ @libPgSQLlib@ -always: $(top_builddir)/src/rpl.conv.c - touch $(top_builddir)/src/rpl.conv.c; \ +always: $(top_builddir)/src/rpl-conv.c + touch $<; \ if [ x$(shell which ctags) != x ]; then \ (cd $(srcdir); ctags $(SRCC) $(SRCF) $(SRCF90) \ $(INIT_LIB) $(INIT_EXE) 2>&1 /dev/null); \ @@ -432,20 +475,58 @@ all-local: always install-exec-local: librpl librpl: install-libLIBRARIES - if [ ! -d $(top_builddir)/librpl ]; then mkdir -p $(top_builddir)/librpl; fi - \rm -rf $(top_builddir)/librpl/* + if [ -d $(top_builddir)/librpl ]; then \ + rm -rf $(top_builddir)/librpl; \ + fi + mkdir -p $(top_builddir)/librpl; \ for i in $(top_builddir)/src/librpl.a \ $(ldadd_libhistory) $(ldadd_libreadline) \ $(top_builddir)/lapack/lapack/liblapack.a \ $(top_builddir)/lapack/blas/libblas.a \ $(ldadd_libncurses) $(ldadd_libgsl) $(ldadd_libiconv) \ - $(ldadd_libcrypto) $(ldadd_libssl) $(ldadd_libsqlite); \ + $(ldadd_libcrypto) $(ldadd_libssl) $(ldadd_libsqlite) \ + $(ldadd_librplcas) $(ldadd_libsigsegv) $(ldadd_libmotif); \ do \ - \cp -f $$i $(top_builddir)/librpl; \ + cp -f $$i $(top_builddir)/librpl; \ done - (cd $(top_builddir)/librpl && \ - for i in *.a; do ar x $$i && \rm -f $$i; done; \ - ar cr librpl.a *) - \mv -f $(top_builddir)/librpl/librpl.a $(top_builddir)/src/librpl.a - \rm -rf $(top_builddir)/librpl - $(RANLIB) $(top_builddir)/src/librpl.a + (cd $(top_builddir)/librpl && n=0 && \ + echo Building standalone librpl.a; \ + for i in *.a; \ + do echo Extracting $$i; ar x $$i; \ + for j in `ar t $$i`; \ + do cp -f $$j $$n-$$j; \ + rm -f $$j; \ + done; \ + n=`expr $$n + 1`; \ + rm -f $$i; \ + done; \ + L="start"; \ + while test -n "$$L"; \ + do \ + echo -n "Remaining files "; \ + find . -name "*.$(OBJEXT)" | wc -l; \ + L=""; j=0; \ + for i in `find . -name "*.$(OBJEXT)"`; \ + do \ + k=`echo $$i | wc -c`; \ + j=`expr $$j + $$k + 1`; \ + if test $$j -le 8000; then \ + L="$$L $$i"; \ + else \ + break; \ + fi; \ + done; \ + if test -n "$$L"; then \ + echo -n "Adding files to librpl.a archive... "; \ + ar cru librpl.a $$L; \ + rm -f $$L; \ + echo "done"; \ + fi; \ + done; \ + echo Archive created; \ + ar s librpl.a; \ + if [ @OS@ != OS2 -a @OS@ != Darwin ]; then \ + echo Stripping librpl.a && strip -d librpl.a; \ + fi;); \ + $(INSTALL_DATA) $(top_builddir)/librpl/librpl.a $(DESTDIR)$(libdir)/librpl.a +