celix_status_t dm_destroy(void *userData, bundle_context_pt context, dm_dependency_manager_pt manager) { celix_status_t status = CELIX_SUCCESS; struct activator *activator = userData; bar_destroy(activator->bar); free(activator); return status; };
int main(int argc, char *argv[]) { char *path = NULL; struct bar *bar; int c; while (c = getopt(argc, argv, "c:vhV"), c != -1) { switch (c) { case 'c': path = optarg; break; case 'v': log_level++; break; case 'h': printf("Usage: %s [-c <configfile>] [-v] [-h] [-V]\n", argv[0]); return 0; case 'V': printf(PACKAGE_STRING " © 2014 Vivien Didelot and contributors\n"); return 0; default: error("Try '%s -h' for more information.", argv[0]); return 1; } } bar = bar_create(); if (!bar) return EXIT_FAILURE; bar_load(bar, path); bar_schedule(bar); bar_destroy(bar); return EXIT_SUCCESS; }