Commit Graph

37 Commits

Author SHA1 Message Date
Ben Liblit 2f44bbf518 Help Emacs recognize that these are (fragments of) makefiles 2017-07-14 21:46:46 -07:00
Ben Liblit fae3ff6789 Set Emacs indentation configuration to mimic existing code
This isn't fix per se, but adding this configuration info helps me
edit this file in Emacs without introducing unnecessary indentation
changes.
2017-07-14 21:46:29 -07:00
Ben Liblit a1ef133501 Fail early if any subcommand fails or if an udefined var is used
I like my shell scripts to be paranoid.
2017-07-14 21:45:51 -07:00
Ben Liblit 433cd78f65 Move logic from "cbuild.sh" into portable "Makefile.configuration"
In "com.ibm.wala.cast.test", the "cbuild.sh" script is gone entirely.
Instead, "pom.xml" directs Maven to run "make" directly.  We still
have a "Makefile.configuration" file in this project, but this file is
now independent of where WALA is being built and of where Java is
installed.

In "com.ibm.wala.cast", a small "cbuild.sh" remains, to do some
special processing involving Visual Studio variables under Windows.
When not building under Windows, "cbuild.sh" now simply runs "make".
It may well be possible to hoist the special Windows stuff up into
this subproject's "pom.xml", or to change that "pom.xml" to run
"cbuild.sh" only when on Windows, and to run "make" directly
otherwise.  I don't know "pom.xml" stuff very well, though.  We still
have a "Makefile.configuration" file in this project, but this file is
now independent of where WALA is being built and of where Java is
installed.

The changes I've made in both "Makefile.configuration" files use GNU
make extensions.  I assume that's safe because "Makefile.definitions"
already relies on GNU make.
2017-07-14 21:44:33 -07:00
Julian Dolby 0aadaa7aa0 small extensions to native code 2017-07-13 21:20:48 +00:00
Ben Liblit 0e6b00e29f Revert accidental, harmless, but unnecessary make config changes 2017-07-12 10:39:06 -07:00
Ben Liblit e316471d88 Fix nearly all Eclipse warnings about using raw types
Along the way, I also converted many "for (;;)" loops into modern
"for (:)" loops.  I didn't systematically look for all opportunities
to do this, though.  I merely made this change where I was already
converting raw Iterator uses into modern Iterator<...> uses.

Better use of generics also allowed many casts to become statically
redundant.  I have removed all such redundant casts.

Only three raw-types warnings remain after this batch of fixes.  All
three involve raw uses of CallGraphBuilder.  I've tried to fix these
too, but it quickly snowballs into a cascade of changes that may or
may not eventually reach a statically-type-save fixed point.  I may
give these last few problem areas another go in the future.  For now,
though, the hundreds of other fixes seem worth keeping even if there
are a few stragglers.

This commit may change some public APIs, but only by making weaker
type signatures stronger by replacing raw types with generic types.
For example, we may change something like "Set" into "Set<String>",
but we're not adding new arguments, changing any
underlying (post-generics-erasure) types, etc.
2017-07-12 10:39:06 -07:00
Julian Dolby 773fa68a3f made native test run on a linux vm 2017-06-29 09:07:29 +00:00
Julian Dolby 6a6bf888e8 try some static linking 2017-06-28 17:30:55 -04:00
Julian Dolby d8f6bf2a26 more linking hacks 2017-06-28 15:24:22 -04:00
Julian Dolby 8c8f352325 link object file 2017-06-28 15:06:47 -04:00
Julian Dolby 9b6e29dcfd try extern "C" 2017-06-28 14:50:01 -04:00
Julian Dolby 3722190ece try extern "C" 2017-06-28 14:48:05 -04:00
Julian Dolby c57a21d4ef linking 2017-06-28 13:53:59 -04:00
Julian Dolby e21257f3e3 more lib paths 2017-06-28 13:33:13 -04:00
Julian Dolby 8138497ee2 more lib paths 2017-06-28 13:30:46 -04:00
Julian Dolby 1cd8db5571 jvm lib in different place on linux 2017-06-28 13:20:58 -04:00
Julian Dolby 2c5fb1aa1b linux perhaps needs more headers 2017-06-28 13:12:26 -04:00
Julian Dolby 5c242e8e10 more .. fussiness on linux
someone does not like -std=c++11
2017-06-28 13:04:51 -04:00
Julian Dolby b1c1ba8a48 linux seems fussier than the mac about .. 2017-06-28 12:57:33 -04:00
Julian Dolby 7c476eac3d native interface for WALA 2017-06-28 12:42:49 -04:00
Ben Liblit 5a5cccc062 Strip execute bits from many non-executable (i.e., non-script) files 2017-02-23 06:10:08 -06:00
dolby-oss 542a1ae876 clean up sample make config
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3789 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2010-01-06 13:53:34 +00:00
dolby-oss 74609400e7 jni fixes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3550 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-30 02:04:14 +00:00
dolby-oss f6f7b92bfe clean ups, and work on error reporting in the CAst front end
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3461 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-04-15 12:52:40 +00:00
dolby-oss 3e198f8244 merge of development on internal branch. Support for cross-building JNI code for Windows, and refactoring of abstract loader support.
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3242 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-26 16:54:30 +00:00
dolby-oss 65bfb788b7 adapt to core changes
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@3228 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2009-02-19 15:59:01 +00:00
dolby-oss e509347a24 support for include-style constructs at the AST level
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2731 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2008-03-25 15:16:21 +00:00
dolby-oss 8e46277e51 move echo instruction to CAst core; generalized invokes to deal with multiple return values; generalize function support to handle non-first-class functions, modeled as statics
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2131 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-12-10 04:26:21 +00:00
dolby-oss 9d980f3901 refactoring to bring reusable CAst translation code out of the PHP and JavaScript translators, and into the generic Cast projects. Also, adapted native code to compile on Mac OS X Tiger
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@2017 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-11-16 01:51:42 +00:00
dolby-oss 9f35d33d2e add native definition of IS_DEFINED_EXPR
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@1002 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-24 16:15:53 +00:00
tabee d84a963062 git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@940 f5eafffb-2e1d-0410-98e4-8ec43c5233c4 2007-04-12 05:45:22 +00:00
dolby-oss c51ad28e66 new CAstSymbol type for information about a symbol being declared. new support for default init values for unitialized variables
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@920 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-04-04 13:02:17 +00:00
tabee 75ac0b79c8 2007 02/27, Naoshi Tabuch: tabee@jp.ibm.com
Build script for native code.
On cygwin platforms, VC++/Platform SDK setup scripts are invoked first.

# moved from CAst.PHP project (yet unpublished)

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@798 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-27 14:53:46 +00:00
tabee 6f7e4c5b7d 2007 02/27, Naoshi Tabuch: tabee@jp.ibm.com
Fix for Visual C++
+ uses _alloca()/memset() instead of var-length arrays/bzero()
+ includes <malloc.h> for _alloca()
# neither do not affect gcc compilation

git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@797 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-27 14:44:42 +00:00
dolby-oss 334e6fc3c7 fixes to conversion of native code to wala'ized names
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@639 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-02 21:22:02 +00:00
dolby-oss 3d9390a397 Initial contribution of core script analysis code
git-svn-id: https://wala.svn.sourceforge.net/svnroot/wala/trunk@616 f5eafffb-2e1d-0410-98e4-8ec43c5233c4
2007-02-02 17:17:13 +00:00