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
sometimes convert_swig is the first to process a file and it needs
to be able to create the output directory for its output. The output
directory should use perl's make_path because the output directories
are deep down in the build area.
refs #80
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
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
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
Found that we need to add python files to lists of expected modules
before testing if they are being excluded. Moved the check to
exclude to after adding the files to the list.
This may have uninteded consequences. Might have to revisit using
different mechanism to exclude files and mark files as expected from
libraries.
refs #74
Added AX_PTHREAD to the configure.ac script. This change forces us to
have install-sh, config.sub and some other autoconf files. Created
an autoconf directory to hold these files. Changed the makefiles to
use the PTHREAD variables coming out of configure.
refs #69
Added 2 flags to trick-ICG. "-o" will specify an output directory. Added this
option to the calls to trick-ICG for the Memory Manager tests. Also added
a "-m" option to create the map files ICG creates for sims. The memory manager
tests do not need these maps so we don't include the option. Added the -m option
to the sim makefile and the master makefile so we do create the map when compile
Trick core and sims.
refs #72
defined CONFIG_MK in the trick_util makefiles to allow making those directories
without running configure first. Removed link to hs_msg.h which no longer
exists.
refs #71
I changed trick comm so that there is only one version built, not a slightly different version
if you are in or out of a sim. While I was in the trick comm code, I removed all of the
unnecessary system header file inclusions out of tc.h. I modified each of the source files
to include the system files it requires. Some sim_services files were including tc.h and
also had to be edited to add headers. I removed the stand-alone makefiles out of all
of the trick_utils directories. Finally I modified the master makefile to exclude the
trick_util directories comm, math, and units from being archived into libtrick.a. Each of
those directories will create their own library and will be included when linking a Trick sim.
refs #71
Adjusted all of the source code to point to the header files in their new
locations. Adjusted the makefiles for the header locations as well.
Added .gitignore files in the test directories to ignore test object code.
Moved the header files and the swig .i files to include/trick/swig. Adjusted the
source files and the convert_swig script to find the headers in their new
location.
refs #67
I have /usr/local/bin in my PATH and so I was finding swig there.
Running configure through brew does not include /usr/local/bin.
I changed the test to look for swig in a set of directories we
normally use.
refs #66
Added /usr/local to the list of search directories in the configure script
for the motif header files. Added -lc++abi to the list of link libraries.
refs #66
The clang path created uses the patchlevel which prior to 3.4 was not used by
clang. This resulted in a bad being created and eventually an llvm assertion
error. Added a compiler ifdef so that the patchlevel is not used before 3.4
refs #65
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