Commit Graph

64 Commits

Author SHA1 Message Date
Alex Lin
4ab584ed55 Support using Python 3
Fixed the configure script to allow the user to specify using a python3
interpreter.  Had to change the the way to load the swig generated python modules.
Also had to change code dealing with python strings, oct, long, and
boolean operations.

refs #258
2016-06-28 13:44:21 -05:00
Alex Lin
1224c43e7f Set and use LD in our makefiles correctly.
Set LD in our makefiles to the ld executable found by configure.
Changed the final sim link to use TRICK_CPPC as the link command since
it was using the compiler anyways.  Changed the places where we use "ld" to
use LD.

refs #131
2016-06-27 12:48:35 -05:00
Alex Lin
6f20aa4b8b Save X11 include and library information from configure
Saved the value of x_libraries variable from the autoconf AC_PATH_X if
the location is not standard.

refs #133
2016-06-27 09:50:04 -05:00
Alex Lin
8921811f7e When running a monte carlo set, don't delete the log files in the master run directory.
Moved the job that removes log files from a default data to a phase 1 initialization
job.  Initialization jobs are not run in the master sim if the sim is a monte carlo
run, so the data is not deleted.

refs #35
2016-06-24 17:20:13 -05:00
Alex Lin
9bcee57b6a S_define_exp needs a list of dependencies
I made S_define_exp a PHONY target in the makefile so it is always
regenerated.  It's fast to regenerate, so I'm taking the easy way
out. :D

refs #138
2016-06-24 15:59:50 -05:00
Alex Lin
11fb71f036 man pages completely out of date
First step to updating man pages, renaming pages to match executable name and deleting man pages for commands long gone.

refs #253
2016-06-20 11:22:45 -05:00
Alex Lin
fb4601734f Need to include SimTime.hh for ICG and swig processing.
Added the sim time header files to files_to_ICG.hh and sim_services.i so it will be processed.

refs #247
2016-06-15 16:11:09 -05:00
John M. Penn
5b53f8155a Delete these tutorial files because they are going into the wiki rather than here. Ref #241 2016-05-25 17:06:33 -05:00
John M. Penn
323ea2a40a First four sections of rewritten tutorial. Refs #241 2016-05-25 15:58:06 -05:00
Alex Lin
f19c002365 ./configure needs to properly enforce java version dependency
Really strange, all of the python flags changed.  Must have been
using an old autoconf cache for a long time.

refs #234
2016-05-12 09:31:05 -05:00
Alex Lin
83e299f618 ./configure needs to properly enforce java version dependency
Somewhere along the way the configure variable PYTHON_LDFLAGS changed
to PYTHON_LIBS.

refs #234
2016-05-12 09:27:17 -05:00
Alex Lin
929372e863 Use udunits package for units conversions
Created a UDUNITS_LDFLAGS to store an link library path and -luduints2.

refs #231
2016-05-11 14:43:53 -05:00
Alex Lin
1454236a81 Use udunits package for units conversions
Created a check in the configure script looking for the udunits header
files.  Also added a sim to test some of the new units capabilities.

refs #231
2016-05-09 16:40:48 -05:00
Alex Lin
6defa99b34 Use udunits package for units conversions
Changed the include for udunits to #include <udunits2.h> to work
on all platforms.  Added the include directory /usr/include/udunits2
for Linux.

refs #231
2016-05-09 10:23:19 -05:00
Alex Lin
684f0e6bdc Use udunits package for units conversions
Initial checkin of using udunits for measurement units conversions.  Replaced
our conversion code in ICG and swig code to use udunits.

Also added code to convert unit symbols that we used in Trick that are different
names in udunits.

Added a sim_object that will eventually allow users to specify a custom
set of files to read units information.

refs #231
2016-05-05 14:49:49 -05:00
Alex Lin
d503d52bd8 Debugger command on mac is now lldb not gdb
Added a test to set the debugger command to gdb or lldb depending
on availability.  Created a new script for lldb to run.  Modified
the script for gdb to backtrace all threads.

refs #227
2016-04-20 14:12:03 -05:00
Alex Lin
c8a39f4a44 Add direct STL checkpointing
Removed the previous attempts at STL checkpointing. Removed
the header files and sims.  Also simplified the names of some of
the templates.

refs #206
2016-03-31 14:50:27 -05:00
Alex Lin
46aec08b80 Add direct STL checkpointing
Initial checkin of STL checkpointing.  This checkin only covers the sequential
STLs, vector, list, deque, set, and multiset.  This checkin does include the
changes in Trick header files to include/exclude our STLs properly to make a
restartable checkpoint.

refs #206
2016-03-29 09:26:49 -05:00
Alex Lin
d884370175 Split test sims and fun sims into separate directories.
Moved SIM_segments to test.

refs #191
2016-02-23 16:53:19 -06:00
Alex Lin
90fd0ff9f8 Split test sims and fun sims into separate directories.
Moved SIM_test_ip and a couple of other sims that depend on the same model set
to a new test directory.  I'm doing a couple of sims at a time.

refs #191
2016-02-23 10:23:55 -06:00
Alex Lin
83572b20cb Print some timing statistics when the sim exits
Saved the timestamps on the default gettimeofday clock as close to
the beginning of the simulation, after initialization is finished and
at the end of shutdown.  Printed out the elapsed time as well as
the number of overruns counted by RealtimeSync.

refs #183
2016-02-17 16:27:37 -06:00
Alex Lin
4c3015851f Merge in the er7_utils integrators
Taking in the latest er7_utils directory and adding it into Trick in the
same location it was as an external repository.  Made one change to
the files_to_ICG.hh file in the repository to remove the CheckpointHelper
header files.  Those go in the Trick files_to_ICG.hh file.

refs #180
2016-02-10 09:32:53 -06:00
Alex Lin
87a48b36f5 make javadoc broken
The makefile rule javadoc was misnamed docs in trick_source/java/makefile. I fixed hundreds
of warnings and errors that were present when creating the java docs.

refs #159
2016-01-12 16:39:47 -06:00
Alex Lin
32da702aeb configure script does not check for clang/llvm
We were using "llvm-config --bindir" to set the path for clang.  But
on some systems clang is not in that directory.  Changed the configure
script to search for clang in the bindir first, if not found, search
the normal locations.

refs #130
2015-12-16 16:53:06 -06:00
Alex Lin
9daa108950 Bad permissions on files copied to the SIM directory
Changed the commands to force the copy files in the the SIM directory
from "cp" to "cp -f".   Added a rule in Makefile.sim to properly
call the configuration processor if the build directory is missing.
Also added a loop to filter the files found to be in an external
library.  Those files need to be tested to see if they include ICG: (No)

refs #156
2015-12-15 15:05:13 -06:00
Alex Lin
bdc24072e5 Including GSL in the configure script does not work if GSL not in standard path
Added lines to -I/gsl/include/path to Makefile.common if the path is not either
/usr or /usr/local.

refs #147
2015-12-02 10:26:41 -06:00
Alex Lin
ca51142553 Configure script does not set up GSL correctly
The configure script does not set up the defines for GSL correctly which causes our GSL
support code not to compile correctly. Fixed it.

refs #143
2015-11-18 08:30:21 -06:00
Alex Lin
0f3d900539 The moose want to retire
Retiring the moose.

refs #135
2015-10-06 16:40:06 -05:00
Alex Lin
c6e2a4acb5 Change new get_val;ue_by_ref name to var_get
Changed the name.

refs #125
2015-09-22 09:10:46 -05:00
Alex Lin
57c76041f5 Get the value of a variable not parsed by SWIG in python
Wrote a python routine called get_value_by_ref_name that takes
a variable name string as an argument.  The string is passed to
ref_attributes to find the address and returns a REF2 structure.  The REF2
structure is passed to ref_to_value and the type and value of the variable
is returned in a structure.  We call vval_<type> to extract the raw value
from the structure and return that to python space.

Made a couple of other bug fixes in the FieldVisior and cpp input file
example found while investigating this issue.

refs #123
2015-09-18 09:03:24 -05:00
Alex Lin
2de18b9174 configure script reports missing motif as error.
So I found that I didn't write many of the autoconf rules correctly including
the one searching for motif.  I also messed up the checks for bison, flex, and
perl.  I added new rules to search for Xwindows headers and libraries.  The
motif rule is only executed if we find fermi-ware where it is used.

refs #119
2015-09-18 08:46:53 -05:00
Alex Lin
a61dd2c031 Removed unused code in libexec
See title.

refs #97
2015-08-04 09:30:43 -05:00
Alex Lin
a5929dbe6c Move search for library dependencies to make_makefile
Moved the search for all library dependencies into make_makefile.
Made a couple of minor clean up edits as well.

refs #92
2015-07-24 16:16:22 -05:00
Alex Lin
cde32e6f60 Trick should not modify TRICK_CFLAGS and TRICK_CXXFLAGS
Jenkins not happy with me.  Jenkins has empty TRICK_CFLAGS and
TRICK_CXXFLAGS.  There was an if statement in Makefile.common that
did something different if it was empty.

refs #90
2015-07-22 16:28:25 -05:00
Alex Lin
b3d1a1d162 Trick should not modify TRICK_CFLAGS and TRICK_CXXFLAGS
Well sims compiled, but I forgot to test if Trick itself
would compile.  It didn't.  Added TRICK_SYSTEM_CFLAGS and
TRICK_SYSTEM_CXXFLAGS where needed.

refs #90
2015-07-22 15:34:54 -05:00
Alex Lin
90c85c73fc Trick should not modify TRICK_CFLAGS and TRICK_CXXFLAGS
Created TRICK_SYSTEM_CFLAGS, TRICK_SYSTEM_CXXFLAGS, and TRICK_SYSTEM_SFLAGS
that Trick uses to add the Trick system includes, defines and other
compilation flags.  TRICK_CFLAGS and TRICK_CXXFLAGS are now in
full control of the user.

refs #90
2015-07-22 14:20:36 -05:00
Alex Lin
d744eba557 Split CP up into components that can be called individually
Added a new TRICK_EXT_LIB_DIRS variable that allows users to
tell Trick about external libraries, rather than trying to
use TRICK_EXCLUDE. Added back getting multiple library dependency
sections from source files.

refs #86
2015-07-22 10:54:00 -05:00
Alex Lin
deac866379 Split CP up into components that can be called individually
Found some more dead code to delete.  Added a couple of progress
printouts.

refs #86
2015-07-21 09:55:53 -05:00
Alex Lin
d7b386227a Split CP up into components that can be called individually
Fixed some library dependency bugs.  JEOD test sims compile now.

refs #86
2015-07-21 08:52:00 -05:00
Alex Lin
dfa961808b Split CP up into components that can be called individually
First tests are working.  Changing a source file and header works
as before.  Adding library dependencies in either of these files
causes the makefile pieces to be redone.  Only tested in the ball
sim so far.

refs #86
2015-07-20 16:22:34 -05:00
Alex Lin
e1c1bbaccf Split CP up into components that can be called individually
Initial rough checkin that partially works for the ball sim.

refs #86
2015-07-16 15:36:36 -05:00
Alex Lin
0b99667d9b librt is missing from link on RHEL 6.
librt was on added to TRICK_EXEC_LINK_LIBS but it was overwritten.  Changed
librt to be added to a different variable name, PLATFORM_LIBS and that
variable is added to TRICK_EXEC_LINK_LIBS.

refs #83
2015-07-13 10:06:51 -05:00
Alex Lin
a4f1da2b14 Trick library files going into lib64 if TRICK_FORCE_32BIT is on.
Added a test for TRICK_FORCE_32BIT and changed the lib directory to
lib instead of lib64.

refs #82
2015-07-08 14:50:21 -05:00
Alex Lin
2ffcdcc12c Create a separate directory for simulation compiliation.
ld -m32 is actually -melf_i386.

refs #80
2015-07-08 14:37:27 -05:00
Alex Lin
5d397ecf1c Create a separate directory for simulation compiliation.
Partial link commands need -m32 for 32 bit builds.  Fixed help text
for simulation makefile.

refs #80
2015-07-08 14:19:39 -05:00
Alex Lin
b660aa371e Create a separate directory for simulation compiliation.
Made adjustments to accomodate differences in arguments to perform
partial linking on the Mac.

refs #80
2015-07-08 11:25:59 -05:00
Alex Lin
5848d80bc4 Create a separate directory for simulation compiliation.
Made some adjustments for sims larger than the ball sim.
Make some changes to handle library packages such as JEOD.  Also
removed some dead code.
2015-07-08 10:33:56 -05:00
Alex Lin
5a77824638 Create a separate directory for simulation compilation.
Functioning build directory on Linux.  Everything is going into the build directory.
All files for all steps use the full path.  this change removes the need for us to
call depend_objs to fix makefile dependencies.  Changed the makefile rules to use
more pattern rules reducing the size of make_makefile.pm and the makefile too.
Changed the output of make to show short commands for each compile line.  Setting
the variable TRICK_VERBOSE_BUILD in the environement, command line, or in S_overrides.mk
will change the output to the full printout.

refs #80
2015-07-07 14:42:58 -05:00
Alex Lin
469be90e32 Create a separate direcotry for simulation compilation.
Moved most generated files into the build directory.  All object code,
io_src realated files, and swig related files are now in build.

Realized that ICG should be creating the makefile for the io_src
code.  ICG knows which files it created.

refs #80
2015-07-02 10:09:31 -05:00
John M. Penn
293bdad014 Merge Alex's and my changes to Makefile.common 2015-06-30 18:09:25 -05:00