Commit 7f9283b9 authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

synt/misc: started to prepare subdirectory for publication

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.

SVN Path:     http://gpitrsvn.gpi.uni-karlsruhe.de/repos/TFSoftware/trunk
SVN Revision: 5420
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent 42b92245
this is <COPYING>
============================================================================
synt/misc: miscellaneous programs for time series synthesis
-----------------------------------------------------------
$Id$
============================================================================
Copyright (C) 1996, 2013 by Thomas Forbriger
----
These programs are free software; you can redistribute them and/or modify
them under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
These programs are distributed in the hope that they will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
----
----- END OF COPYING -----
......@@ -12,13 +12,19 @@
# code compiles but is not tested
# 27.12.2010 V1.2 migrate to new SVN scheme
# 20.01.2011 V1.3 distinguish between compilation and installation
# 05.01.2014 V1.4 preparing to be published
#
# ============================================================================
PROGRAMS=bfotide dispfield kette planefield tidesff coupledoscillators \
dispfieldx lamb lambx modeinterference
dispfieldx lamb lambx modeinterference \
siggen tesiff teswf hamres siggenx
# gez does not compile correctly
.PHONY: list-programs
list-programs:
echo $(PROGRAMS) | tr ' ' '\n' | sort
.PHONY: all
all: install
......@@ -30,7 +36,8 @@ $(LOCBINDIR)/%: %
#----------------------------------------------------------------------
# standard edit targets
flist: $(wildcard *.f *.inc Makefile); echo $^ | tr ' ' '\n' | sort > $@
flist: Makefile COPYING README $(sort $(wildcard *.cc *.f *.inc)) $(TF_EDIT)
echo $^ | tr ' ' '\n' > $@
.PHONY: edit
edit: flist; vim $<
......@@ -69,22 +76,32 @@ tidesff: %: %.o
bfotide gez: %: %.o
$(FC) -O3 -Wall -o$@ -fno-automatic $< -L$(LOCLIBDIR)
dispfield: dispfield.o
phasedsignals siggen tesiff teswf hamres lamb planefield dispfield: %: %.o
$(FC) -o $@ $< -ltf -lsffu -lsff -L$(LOCLIBDIR)
lamb planefield: %: %.o
$(FC) -o $@ $< -ltf -lsffu -lsff -L$(LOCLIBDIR)
siggen: %: %.o
$(FC) -o $@ $< -ltf -lsffu -lsff -lgsl -lgslcblas -L$(LOCLIBDIR)
lambx dispfieldx: %x: %.o
$(FC) -o $@ $< -ltf -lsffu \
-lfapidxx -ldatrwxx -lsffxx -lgsexx -ltime++ -laff \
-L$(LOCLIBDIR)
siggenx: %x: %.o
$(FC) -o $@ $< -ltf -lsffu \
-lfapidxx -ldatrwxx -lsffxx -lgsexx -ltime++ -laff -lgsl -lgslcblas \
-L$(LOCLIBDIR)
modeinterference: modeinterference.o
$(FC) -o $@ $< -ltf $(TF_LINK_PGPLOT) -L$(LOCLIBDIR)
.PHONY: list-libraries
list-libraries:
grep ' -l' Makefile | tr ' ' '\n' | egrep '^-l' | sort | uniq
#======================================================================
# test cases
# ----------
alldisp: dispfield.ps dispfield.bp10.fil.ps dispfield.bp100.fil.ps
......@@ -133,4 +150,25 @@ planefield.ps: planefield.sff Makefile
%.psp: %.ps; gv $<; /bin/rm -fv $<
#
#======================================================================
# create package
# --------------
# is delegated to Makefile.packages
ifdef TF_MAKEPKG
.PHONY: package
package: $(TF_MAKEPKG)
$(MAKE) -f $< \
PACKAGE=convsff \
PACKAGEEXPORT="trunk/src/conv/sff:src" \
PACKAGETARGETS="src:all" \
PACKAGELIBS="-"
.PHONY: fullpackage
fullpackage: $(TF_MAKEPKG)
$(MAKE) -f $< \
PACKAGE=convsffwithlibs \
PACKAGEEXPORT="trunk/src/conv/sff:src" \
PACKAGETARGETS="src:all" \
PACKAGELIBS="libsff libtf libsffu libts libaff libtime libgsexx libsffxx libdatrwxx libtfxx libtsxx"
endif
#
# ----- END OF Makefile -----
this is <README>
============================================================================
synt/misc: miscellaneous programs for time series synthesis
-----------------------------------------------------------
$Id$
============================================================================
Currently maintained programs:
lamb
bfotide
gez
tidesff
coupledoscillators
hamres
kette
modeinterference
phasedsignals
dispfield
planefield
teswf
siggen
tesiff
============================================================================
Installation
------------
For compilation instructions see README.1st in the root directory of the
tar-ball or
http://gpitrsvn.gpi.uni-karlsruhe.de:8000/TFSoftware/wiki/docs/installation
The Makefile supports program compilation and linking. Some binary libraries
are required.
The command
make all
will compile and install the binary executables as well as the doxygen
documentation.
Environment variables control where the results are stored and where
libraries and library header files are expected:
LOCLIBDIR defines location of binary libraries
LOCINCLUDEDIR defines location of C/C++ header files (prototypes)
LOCBINDIR defines location of binary executables
TF_WWWBASEDIR defines location of doxygen output
Dependencies:
Compilers required to build the programs:
Fortran compiler
C++ compiler
C/C++ preprocessor
doxygen (required to process source code documentation)
extern libraries/packages needed to compile the code
PGPLOT (libpgplot, libcpgplot)
liblapack: linear algebra package
libblas: basic linear algebra functions
libgsl: GNU scientific library (libgsl, libgslcblas)
The header files for these libraries are required as well. Under OpenSuSE
you have to install the respective devel packages.
TFSoftware libraries required to compile the code:
libaff
libdatrwxx
libfapidxx
libfourier (libfourier, libfourierxx)
libgsexx
liblinearxx
libpgplot++ (libpgplotCpp)
libseife (libcseife, libseife)
libsff
libsffu
libsffxx
libstfinv
libtf
libtfxx
libtime (libtime, libtime++)
libtsxx
============================================================================
The home of this software suite is
http://gpitrsvn.gpi.uni-karlsruhe.de:8000/TFSoftware/wiki/trunk/src/ts/wf
Please send bug reports and suggestions to
Thomas.Forbriger@kit.edu
----- END OF README -----
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment