Tried using clang/llvm from ubuntu distribution. Needed to change the include directory for compiling ICG. Also found that
the clang include files can be in a linked directory. Used realpath to make sure we have the absolute path.
refs #63
Moved the no_arch swig files to share/trick/swig and adjusted the makefiles to look for the files in the new location. Changed the install rule to only copy the files we need for our installation.
refs #63
Found that on the Mac ICG was ignoring all of header files comments in ${TRICK_HOME}/include because it had the relative directory "include" listed as a system path. Comments were only processed if it wasn't in a system directory. Changed the check to use our function that checks to see if a header is in user or Trick code, basically the same check, but it only uses full paths and doesn't get confused with "include".
refs #63
Tested without the er7_utils directory and found some makefile dependencies that depend on er7_tuils files. Also found that I forgot to change the include directories for the trick_algorithm integrators.
refs #63
On some systems llvm-config includes -ledit as a system library to link with. Our application doesn't need -ledit and sometimes that library is not installed. I filtered out that library in the makefile.
refs #63
Modified the makefile for ICG to be able to use clang from yum, fink, and manual installs. Removed the requirement for copying the clang friendly header files into Trick. However Trick will be expecting the clang header files to be in it's search path.
refs #40
Moved the io_src code created by sim_services to sim_servivces/include. Also found some makefiles that needed to be changed to refer to the makefiles in their new locations.
refs #63
Reorganized. Created a new top level include directory that will hold all of Trick's header files. Moved all of the Trick headers to this directory. Created a libexec directory that holds all of the executables that users don't need to execute directly. Changed all of the executables remaining in bin to start with "trick-". In the sim_services directories changed all source files to find the Trick headers in their new location. Since all of the include files are gone in sim_services, removed the src directories as well, moving all of the source files up a level. Moved the makefiles, docs, man, and other architecture independent files into a top level share directory. Renamed lib_${TRICK_HOST_CPU} to lib64 or lib depending on the platform we're currently on.
refs #63
Changed the FXPLOT makefile to use the HDF5 libraries determined by the master makefile. This makes it consistent with the way we build sims.
refs #62.
Changed the way JITEvents are created and handled. Instead of taking a function pointer directly we save a name of a function to the JITEvent class. The class will dynamically look up a function that matches the name both during event creation and during checkpoint restart.
Fixes#53
Added a couple of batch files in the java GUI area so they can be used with
Windows. Made an addition in TrickApplication.java to add the .bat suffix
to script calls when using Windows.
Fixes#47
After further discussion, it was revealed that the event printouts would stop
coming out if a new event was created. Found that the constructor of the
event was clearing out the static info_msg flag all events used to test
for printing. Removed the assignment in the constructor and set the
initial value of the info_msg flag to false at the declaration point.
Fixes#38
I think I ran into this before. The offsetof calls that use
fully qualified fields in classes is not compilable using clang
on the Mac. So I've decided to only conditionally compile this
code for non Apple platforms. So this fix will work in Linux,
but not on Macs. We'll have to revisit this and see if we
can make it work for both.
refers to #31
When a field is processed in a class it is added to a list. This list
will contain the fields from base classes the current class inherits
from. We check the list of fields we inherited, if we find that the
current field overloads the name of an inherited field we adjust the
inherited field's name to be shown as the fully qualified name in io_src
code.
Fixes#31
Added a test in the variable server listen restart job to see if the the name of the
machine in the checkpoint file matches the machine that we are running on. We
test all of the network names avaiable on the machine. If the name is not found then
we assume that the checkpoint was taken on another machine and wipe out the machine
name. This will default the machine name back to localhost.
Fixes#24.
Found that my check for embedded classes was also catching some typedef structures.
This was causing some io_src code not to be generated. Changed the test so that
we can differentiate between embedded classes and the typedefs.
This change fixes#10 and fixes#23.
Missed a couple of files where message_publish is in an ifdef __APPLE__
section. But I decided to put message_type.h back in message_proto.h
because taking it out would affect a lot of user code.
Adds to #14.
Changed all header file once include variables to follow the same naming
convention and not start with any underscores. Also deleted old
incorrect copyright notices. Also removed $Id: tags from all files.
Fixes#14. Fixes#22.
The calling argument to setASTConsumer changed between clang 3.5
and 3.6. Changed the code to create a std::unique_ptr that the
call now requires and call setASTConsumer with the unique pointer.
Fixes#15
Modified the makefile to copy jaxb.index files into the JAR.
Removed now-unnecessary annotations from TVBean.
Modified and exposed the save/open .tv file framework to subclasses so they can add additional information to .tv files.
fixes#12