From 5d8b9b96e21e6076d7e62d452094be2fd2bf0875 Mon Sep 17 00:00:00 2001 From: navarrop Date: Tue, 2 Mar 2010 09:33:56 +0000 Subject: [PATCH] Add some patches for delete some warnings with cmake. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7163 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- .../include/simgrid_config.h.in | 0 .../src/bindings/ruby/rb_msg.h | 0 .../src/bindings/ruby/rb_msg_host.c | 0 .../src/bindings/ruby/rb_msg_host.h | 0 .../src/bindings/ruby/rb_msg_process.c | 0 .../src/bindings/ruby/rb_msg_task.c | 0 .../src/simix/smx_context.c | 0 .../src/simix/smx_context_ruby.c | 0 .../CPACK/Patch/tools/gras/stub_generator.c | 177 ++++++++++++++++++ 9 files changed, 177 insertions(+) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/include/simgrid_config.h.in (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/bindings/ruby/rb_msg.h (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/bindings/ruby/rb_msg_host.c (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/bindings/ruby/rb_msg_host.h (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/bindings/ruby/rb_msg_process.c (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/bindings/ruby/rb_msg_task.c (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/simix/smx_context.c (100%) rename buildtools/CPACK/{simgrid_CMakeList => Patch}/src/simix/smx_context_ruby.c (100%) create mode 100644 buildtools/CPACK/Patch/tools/gras/stub_generator.c diff --git a/buildtools/CPACK/simgrid_CMakeList/include/simgrid_config.h.in b/buildtools/CPACK/Patch/include/simgrid_config.h.in similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/include/simgrid_config.h.in rename to buildtools/CPACK/Patch/include/simgrid_config.h.in diff --git a/buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg.h b/buildtools/CPACK/Patch/src/bindings/ruby/rb_msg.h similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg.h rename to buildtools/CPACK/Patch/src/bindings/ruby/rb_msg.h diff --git a/buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_host.c b/buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_host.c similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_host.c rename to buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_host.c diff --git a/buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_host.h b/buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_host.h similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_host.h rename to buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_host.h diff --git a/buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_process.c b/buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_process.c similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_process.c rename to buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_process.c diff --git a/buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_task.c b/buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_task.c similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/bindings/ruby/rb_msg_task.c rename to buildtools/CPACK/Patch/src/bindings/ruby/rb_msg_task.c diff --git a/buildtools/CPACK/simgrid_CMakeList/src/simix/smx_context.c b/buildtools/CPACK/Patch/src/simix/smx_context.c similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/simix/smx_context.c rename to buildtools/CPACK/Patch/src/simix/smx_context.c diff --git a/buildtools/CPACK/simgrid_CMakeList/src/simix/smx_context_ruby.c b/buildtools/CPACK/Patch/src/simix/smx_context_ruby.c similarity index 100% rename from buildtools/CPACK/simgrid_CMakeList/src/simix/smx_context_ruby.c rename to buildtools/CPACK/Patch/src/simix/smx_context_ruby.c diff --git a/buildtools/CPACK/Patch/tools/gras/stub_generator.c b/buildtools/CPACK/Patch/tools/gras/stub_generator.c new file mode 100644 index 0000000000..b1d6fe7ead --- /dev/null +++ b/buildtools/CPACK/Patch/tools/gras/stub_generator.c @@ -0,0 +1,177 @@ +/* $Id: stub_generator.c 6309 2009-05-26 15:29:22Z mquinson $ */ + +/* gras_stub_generator - creates the main() to use a GRAS program */ + +/* Copyright (c) 2003-2007 Martin Quinson, Arnaud Legrand, Malek Cherier. */ +/* All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + +/* specific to Borland Compiler */ +#ifdef __BORLANDDC__ +#pragma hdrstop +#endif + +#include +#include "xbt/sysdep.h" +#include "xbt/function_types.h" +#include "xbt/log.h" +#include "surf/surfxml_parse.h" +#include "surf/surf.h" +#include "portable.h" /* Needed for the time of the SIMIX convertion */ + +#include "gras_stub_generator.h" +#include + + + +XBT_LOG_NEW_DEFAULT_SUBCATEGORY(stubgen, gras, "Stub generator"); + + +#ifdef _WIN32 +#include +#endif + +/* specific to Borland Compiler */ +#ifdef __BORLANDDC__ +#pragma argsused +#endif + + +/**********************************************/ +/********* Parse XML deployment file **********/ +/**********************************************/ +xbt_dict_t process_function_set = NULL; +xbt_dynar_t process_list = NULL; +xbt_dict_t machine_set = NULL; + +void s_process_free(void *process) +{ + s_process_t *p = (s_process_t *) process; + int i; + for (i = 0; i < p->argc; i++) + free(p->argv[i]); + free(p->argv); + free(p->host); +} + +static s_process_t process; + +static void parse_process_init(void) +{ + xbt_dict_set(process_function_set, A_surfxml_process_function, NULL, NULL); + xbt_dict_set(machine_set, A_surfxml_process_host, NULL, NULL); + process.argc = 1; + process.argv = xbt_new(char *, 1); + process.argv[0] = xbt_strdup(A_surfxml_process_function); + process.host = strdup(A_surfxml_process_host); + /*VERB1("Function: %s",A_surfxml_process_function); */ +} + +static void parse_argument(void) +{ + process.argc++; + process.argv = xbt_realloc(process.argv, (process.argc) * sizeof(char *)); + process.argv[(process.argc) - 1] = xbt_strdup(A_surfxml_argument_value); +} + +static void parse_process_finalize(void) +{ + xbt_dynar_push(process_list, &process); + /*VERB1("Function: %s",process.argv[0]); */ +} + +/*void surfxml_add_callback(xbt_dynar_t cb_list, void_f_void_t function) +{ + xbt_dynar_push(cb_list, &function); +}*/ + + +int main(int argc, char *argv[]) +{ + char *project_name = NULL; + char *deployment_file = NULL; + int i; + + surf_init(&argc, argv); + process_function_set = xbt_dict_new(); + process_list = xbt_dynar_new(sizeof(s_process_t), s_process_free); + machine_set = xbt_dict_new(); + + for (i = 1; i < argc; i++) { + int need_removal = 0; + if (!strncmp("--extra-process=", argv[i], strlen("--extra-process="))) { + xbt_dict_set(process_function_set, argv[i] + strlen("--extra-process="), + NULL, NULL); + need_removal = 1; + } + + + if (need_removal) { /* remove the handled argument from argv */ + int j; + for (j = i + 1; j < argc; j++) { + argv[j - 1] = argv[j]; + } + argv[j - 1] = NULL; + argc--; + i--; /* compensate effect of next loop incrementation */ + } + } + + xbt_assert1((argc >= 3), + "Usage: %s project_name deployment_file [deployment_file...]\n", + argv[0]); + + project_name = argv[1]; + + surf_parse_reset_parser(); + DEBUG2("%p %p", parse_process_init, &parse_process_init); + surfxml_add_callback(STag_surfxml_process_cb_list, &parse_process_init); + surfxml_add_callback(ETag_surfxml_argument_cb_list, &parse_argument); + surfxml_add_callback(ETag_surfxml_process_cb_list, &parse_process_finalize); + + for (i = 2; i < argc; i++) { + deployment_file = argv[i]; + surf_parse_open(deployment_file); + if (surf_parse()) + xbt_assert1(0, "Parse error in %s", deployment_file); + + surf_parse_close(); + } + + + warning = xbt_new(char, strlen(WARN) + strlen(deployment_file) + 10); + sprintf(warning, WARN, deployment_file); + + /*if(XBT_LOG_ISENABLED(stubgen, xbt_log_priority_debug)) { + xbt_dict_cursor_t cursor=NULL; + char *key = NULL; + void *data = NULL; + + for (cursor=NULL, xbt_dict_cursor_first((process_function_set),&(cursor)) ; + xbt_dict_cursor_get_or_free(&(cursor),&(key),(void**)(&data)); + xbt_dict_cursor_step(cursor) ) { + DEBUG1("Function %s", key); + } + + xbt_dict_dump(process_function_set,print); + } */ + + generate_sim(project_name); + generate_rl(project_name); + generate_makefile_local(project_name, deployment_file); +#ifdef _WIN32 + generate_borland_simulation_project(project_name); + generate_borland_real_life_project(project_name); + generate_simulation_dsp_file(project_name); + generate_real_live_dsp_file(project_name); + + if (__gras_path) + xbt_free(__gras_path); +#endif + + free(warning); + surf_exit(); + return 0; +} -- 2.20.1