X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafb-args.c;h=9d15608820b22c4afbac4155b91af0c84623ebda;hb=ca0f859d96599c8ae295c85f825030c891969de1;hp=af3cfcabac0d657b52f8c7c057ed74af1507e41f;hpb=16f014ef35b8355de1006891fe6920c8b51675fe;p=src%2Fapp-framework-binder.git diff --git a/src/afb-args.c b/src/afb-args.c index af3cfcab..9d156088 100644 --- a/src/afb-args.c +++ b/src/afb-args.c @@ -38,9 +38,6 @@ #define _d2s_(x) #x #define d2s(x) _d2s_(x) -#if !defined(BINDING_INSTALL_DIR) -#error "you should define BINDING_INSTALL_DIR" -#endif #if !defined(AFB_VERSION) #error "you should define AFB_VERSION" #endif @@ -122,6 +119,7 @@ #define SET_DAEMON 'D' #define SET_EXEC 'e' #define GET_HELP 'h' +#define ADD_INTERFACE 'i' #define SET_LOG 'l' #if defined(WITH_MONITORING_OPTION) #define SET_MONITORING 'M' @@ -161,7 +159,8 @@ static struct option_desc optdefs[] = { {SET_NAME, 1, "name", "Set the visible name"}, - {SET_PORT, 1, "port", "HTTP listening TCP port [default " d2s(DEFAULT_HTTP_PORT) "]"}, + {SET_PORT, 1, "port", "HTTP listening TCP port of all interfaces [default " d2s(DEFAULT_HTTP_PORT) "]"}, + {ADD_INTERFACE, 1, "interface", "Add HTTP listening interface (ex: tcp:localhost:8080)"}, {SET_ROOT_HTTP, 1, "roothttp", "HTTP Root Directory [default no root http (files not served but apis still available)]"}, {SET_ROOT_BASE, 1, "rootbase", "Angular Base Root URL [default /opa]"}, {SET_ROOT_API, 1, "rootapi", "HTML Root API URL [default /api]"}, @@ -176,7 +175,12 @@ static struct option_desc optdefs[] = { {SET_ROOT_DIR, 1, "rootdir", "Root Directory of the application [default: workdir] relative to workdir"}, #if WITH_DYNAMIC_BINDING - {ADD_LDPATH, 1, "ldpaths", "Load bindings from dir1:dir2:... [default = " BINDING_INSTALL_DIR "]"}, + + {ADD_LDPATH, 1, "ldpaths", "Load bindings from dir1:dir2:..." +#if defined(INTRINSIC_BINDING_DIR) + "[default = " INTRINSIC_BINDING_DIR "]" +#endif + }, {ADD_BINDING, 1, "binding", "Load the binding of path"}, {ADD_WEAK_LDPATH, 1, "weak-ldpaths","Same as --ldpaths but ignore errors"}, {SET_NO_LDPATH, 0, "no-ldpaths", "Discard default ldpaths loading"}, @@ -232,14 +236,13 @@ static struct option_desc optdefs[] = { }; #if defined(WITH_MONITORING_OPTION) -static const char MONITORING_ALIAS[] = "/monitoring:"BINDING_INSTALL_DIR"/monitoring"; +static const char MONITORING_ALIAS[] = "/monitoring:"INTRINSIC_BINDING_DIR"/monitoring"; #endif static const struct { int optid; int valdef; } default_optint_values[] = { - { SET_PORT, DEFAULT_HTTP_PORT }, { SET_API_TIMEOUT, DEFAULT_API_TIMEOUT }, { SET_CACHE_TIMEOUT, DEFAULT_CACHE_TIMEOUT }, { SET_SESSION_TIMEOUT, DEFAULT_SESSION_TIMEOUT }, @@ -364,7 +367,7 @@ static void printVersion(FILE * file) #endif "HOOK " -#if WITH_TRACE +#if WITH_AFB_TRACE "+" #else "-" @@ -373,29 +376,21 @@ static void printVersion(FILE * file) "[" #if WITH_DYNAMIC_BINDING - "BINDINGS " "+" #else "-" #endif + "BINDINGS " #if WITH_LEGACY_BINDING_V1 - "+" -#else - "-" + "+V1 " #endif - "V1 " #if WITH_LEGACY_BINDING_VDYN - "+" -#else - "-" + "+VDYN " #endif - "VDYN " #if WITH_LEGACY_BINDING_V2 - "+" -#else - "-" + "+V2 " #endif - "V2 +V3]\n" + "+V3]\n" "\n", AFB_VERSION ); @@ -847,6 +842,7 @@ static void parse_arguments_inner(int argc, char **argv, struct json_object *con case ADD_WS_CLIENT: case ADD_WS_SERVICE: case ADD_AUTO_API: + case ADD_INTERFACE: config_add_optstr(config, optid); break; @@ -991,13 +987,16 @@ static void fulfill_config(struct json_object *config) if (!config_has(config, default_optstr_values[i].optid)) config_set_str(config, default_optstr_values[i].optid, default_optstr_values[i].valdef); + if (!config_has(config, SET_PORT) && !config_has(config, ADD_INTERFACE) && !config_has_bool(config, SET_NO_HTTPD)) + config_set_int(config, SET_PORT, DEFAULT_HTTP_PORT); + // default AUTH_TOKEN if (config_has_bool(config, SET_RANDOM_TOKEN)) config_del(config, SET_TOKEN); -#if WITH_DYNAMIC_BINDING +#if WITH_DYNAMIC_BINDING && defined(INTRINSIC_BINDING_DIR) if (!config_has(config, ADD_LDPATH) && !config_has(config, ADD_WEAK_LDPATH) && !config_has_bool(config, SET_NO_LDPATH)) - config_add_str(config, ADD_LDPATH, BINDING_INSTALL_DIR); + config_add_str(config, ADD_LDPATH, INTRINSIC_BINDING_DIR); #endif #if defined(WITH_MONITORING_OPTION)