view src/sources @ 1739:c414850f206f

Add support for -boot flag, which allows in-tree execution of Ur/Web The boot flag rewrites most hardcoded paths to point to the build directory, and also forces static compilation. This is convenient for developing Ur/Web, or if you cannot 'sudo make install' Ur/Web. The following changes were made: * Header files were moved to include/urweb instead of include; this lets FFI users point their C_INCLUDE_PATH at this directory at write <urweb/urweb.h>. For internal Ur/Web executables, we simply pass -I$PATH/include/urweb as normal. * Differentiate between LIB and SRCLIB; SRCLIB is Ur and JavaScript source files, while LIB is compiled products from libtool. For in-tree compilation these live in different places. * No longer reference Config for paths; instead use Settings; these settings can be changed dynamically by Compiler.enableBoot () (TODO: add a disableBoot function.) * config.h is now generated directly in include/urweb/config.h, for consistency's sake (especially since it gets installed along with the rest of the headers!) * All of the autotools build products got updated. * The linkStatic field in protocols now only contains the name of the build product, and not the absolute path. Future users have to be careful not to reference the Settings files to early, lest they get an old version (this was the source of two bugs during development of this patch.)
author Edward Z. Yang <ezyang@mit.edu>
date Wed, 02 May 2012 17:17:57 -0400
parents 4a03aa3251cb
children 38297294cf98
line wrap: on
line source
config.sig
config.sml

search.sig
search.sml

list_util.sig
list_util.sml

order.sig
order.sml

errormsg.sig
errormsg.sml

print.sig
print.sml

settings.sig
settings.sml

http.sig
http.sml

cgi.sig
cgi.sml

fastcgi.sig
fastcgi.sml

static.sig
static.sml

prim.sig
prim.sml

mysql.sig
mysql.sml

sqlite.sig
sqlite.sml

datatype_kind.sml

export.sig
export.sml

source.sml

utf8.sig
utf8.sml

../xml/entities.sml

urweb.grm
urweb.lex

source_print.sig
source_print.sml

elab.sml

elab_util.sig
elab_util.sml

elab_env.sig
elab_env.sml

elab_print.sig
elab_print.sml

elab_ops.sig
elab_ops.sml

disjoint.sig
disjoint.sml

elab_err.sig
elab_err.sml

mod_db.sig
mod_db.sml

elaborate.sig
elaborate.sml

unnest.sig
unnest.sml

termination.sig
termination.sml

expl.sml

expl_util.sig
expl_util.sml

expl_env.sig
expl_env.sml

expl_print.sig
expl_print.sml

explify.sig
explify.sml

core.sml

core_util.sig
core_util.sml

core_env.sig
core_env.sml

core_print.sig
core_print.sml

corify.sig
corify.sml

reduce_local.sig
reduce_local.sml

shake.sig
shake.sml

core_untangle.sig
core_untangle.sml

especialize.sig
especialize.sml

reduce.sig
reduce.sml

unpoly.sig
unpoly.sml

specialize.sig
specialize.sml

rpcify.sig
rpcify.sml

tag.sig
tag.sml

effectize.sig
effectize.sml

marshalcheck.sig
marshalcheck.sml

css.sig
css.sml

mono.sml

mono_util.sig
mono_util.sml

mono_env.sig
mono_env.sml

mono_print.sig
mono_print.sml

monoize.sig
monoize.sml

mono_reduce.sig
mono_reduce.sml

mono_opt.sig
mono_opt.sml

untangle.sig
untangle.sml

mono_shake.sig
mono_shake.sml

fuse.sig
fuse.sml

sql.sml

iflow.sig
iflow.sml

jscomp.sig
jscomp.sml

pathcheck.sig
pathcheck.sml

sidecheck.sig
sidecheck.sml

cjr.sml

postgres.sig
postgres.sml

cjr_env.sig
cjr_env.sml

cjr_print.sig
cjr_print.sml

cjrize.sig
cjrize.sml

scriptcheck.sig
scriptcheck.sml

prepare.sig
prepare.sml

checknest.sig
checknest.sml

compiler.sig
compiler.sml

demo.sig
demo.sml

tutorial.sig
tutorial.sml