diff --git a/Makefile.in b/Makefile.in index e2de949bf..cc29360b2 100644 --- a/Makefile.in +++ b/Makefile.in @@ -99,7 +99,7 @@ clean: distclean: clean rm -f config.status rm -f config.log - rm -f config.rebar + rm -f rebar.config.script rm -rf deps rm -f Makefile rm -rf rel/files diff --git a/configure b/configure index 8c4e0301d..5b54f7f5b 100755 --- a/configure +++ b/configure @@ -561,6 +561,7 @@ ac_default_prefix=/ ac_subst_vars='LTLIBOBJS LIBOBJS INSTALLUSER +pubsub_ng debug iconv json @@ -646,6 +647,7 @@ enable_riak enable_json enable_iconv enable_debug +enable_pubsub_ng enable_user ' ac_precious_vars='build_alias @@ -1290,6 +1292,7 @@ Optional Features: --enable-json enable JSON support for mod_bosh (default: no) --enable-iconv enable iconv support (default: no) --enable-debug enable debug information (default: yes) + --enable-pubsub_ng enable PubSub NG (default: no) --enable-user[[[=USER]]] allow this system user to start ejabberd (default: no) @@ -2629,6 +2632,19 @@ fi +# Check whether --enable-pubsub_ng was given. +if test "${enable_pubsub_ng+set}" = set; then : + enableval=$enable_pubsub_ng; case "${enableval}" in + yes) pubsub_ng=true ;; + no) pubsub_ng=false ;; + *) as_fn_error $? "bad value ${enableval} for --enable-pubsub_ng" "$LINENO" 5 ;; +esac +else + pubsub_ng=false +fi + + + ac_config_files="$ac_config_files Makefile rebar.config.script src/ejabberd.app.src rel/reltool.config" diff --git a/configure.ac b/configure.ac index a26afc3d1..db0c85d3f 100644 --- a/configure.ac +++ b/configure.ac @@ -183,6 +183,15 @@ AC_ARG_ENABLE(debug, esac],[debug=true]) AC_SUBST(debug) +AC_ARG_ENABLE(pubsub_ng, +[AC_HELP_STRING([--enable-pubsub_ng], [enable PubSub NG (default: no)])], +[case "${enableval}" in + yes) pubsub_ng=true ;; + no) pubsub_ng=false ;; + *) AC_MSG_ERROR(bad value ${enableval} for --enable-pubsub_ng) ;; +esac],[pubsub_ng=false]) +AC_SUBST(pubsub_ng) + AC_CONFIG_FILES([Makefile rebar.config.script src/ejabberd.app.src diff --git a/rebar.config.script.in b/rebar.config.script.in index 8c83c6b05..38779997f 100644 --- a/rebar.config.script.in +++ b/rebar.config.script.in @@ -14,6 +14,8 @@ Cfg = [%% Macros {nif, @nif@}, {db_type, @db_type@}, {debug, @debug@}, + {hipe, @hipe@}, + {pubsub_ng, @pubsub_ng@}, %% Dependencies {mysql, @mysql@}, @@ -49,12 +51,23 @@ DebugInfo = case lists:keysearch(debug, 1, Cfg) of [] end, -Head = [{erl_opts, [{i, "include"}, - {i, filename:join(["deps", "logger", "include"])}, - {i, filename:join(["deps", "xml", "include"])}] - ++ Macros ++ DebugInfo}, - {src_dirs, [asn1, src]}, - {sub_dirs, ["rel"]}], +HiPE = case lists:keysearch(hipe, 1, Cfg) of + {value, {hipe, true}} -> + [native]; + _ -> + [] + end, + +Includes = [{i, "include"}, + {i, filename:join(["deps", "logger", "include"])}, + {i, filename:join(["deps", "xml", "include"])}], + +SrcDirs = lists:foldl( + fun({pubsub_ng, true}, Acc) -> + [mod_pubsub_ng|Acc]; + (_, Acc) -> + Acc + end, [], Cfg), Deps = [{logger, ".*", {git, "git://github.com/processone/p1_logger"}}, {tls, ".*", {git, "git://github.com/processone/tls"}}, @@ -85,7 +98,10 @@ CfgDeps = lists:flatmap( [] end, Cfg), -Head ++ [{deps, Deps ++ CfgDeps}]. +[{erl_opts, Includes ++ Macros ++ HiPE ++ DebugInfo}, + {src_dirs, [asn1, src | SrcDirs]}, + {sub_dirs, ["rel"]}, + {deps, Deps ++ CfgDeps}]. %% Local Variables: %% mode: erlang