aboutsummaryrefslogtreecommitdiff
path: root/science
diff options
context:
space:
mode:
authorMartin Wilke <miwi@FreeBSD.org>2006-11-04 23:57:18 +0000
committerMartin Wilke <miwi@FreeBSD.org>2006-11-04 23:57:18 +0000
commitf3d1535df5abe8a4f6c86ea324600c5db299f17b (patch)
tree09215e4a82a4d88806d577956cfcabf701919984 /science
parentbcd5e9b39d303b716ced3733640b1d4299ea4b1d (diff)
downloadports-f3d1535df5abe8a4f6c86ea324600c5db299f17b.tar.gz
ports-f3d1535df5abe8a4f6c86ea324600c5db299f17b.zip
- Update to 0.89
PR: ports/105035 Submitted by: KATO Tsuguru <tkato432@yahoo.com> Sponsored by: FreeBSD Bug-a-thon #2
Notes
Notes: svn path=/head/; revision=176383
Diffstat (limited to 'science')
-rw-r--r--science/gdis/Makefile34
-rw-r--r--science/gdis/distinfo6
-rw-r--r--science/gdis/files/patch-crystal_graph.c71
-rw-r--r--science/gdis/files/patch-file_bgf.c20
-rw-r--r--science/gdis/files/patch-file_cgf.c69
-rw-r--r--science/gdis/files/patch-gui_monty.c37
-rw-r--r--science/gdis/files/patch-gui_siesta.c113
-rw-r--r--science/gdis/files/patch-main.c41
-rw-r--r--science/gdis/files/patch-molsurf.c22
9 files changed, 376 insertions, 37 deletions
diff --git a/science/gdis/Makefile b/science/gdis/Makefile
index 50e404c34688..3087a8e81d9a 100644
--- a/science/gdis/Makefile
+++ b/science/gdis/Makefile
@@ -7,8 +7,7 @@
#
PORTNAME= gdis
-PORTVERSION= 0.86
-PORTREVISION= 3
+PORTVERSION= 0.89
CATEGORIES= science
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
@@ -21,36 +20,27 @@ LIB_DEPENDS= gtkglext-x11-1.0.0:${PORTSDIR}/x11-toolkits/gtkglext
USE_GL= yes
USE_GNOME= gtk20
+USE_GMAKE= yes
+MAKEFILE= makefile
+MAKE_ARGS= CC="${CC}" CFLAGS="${CFLAGS}"
+ALL_TARGET= ${PORTNAME}
CFLAGS+= -DINSTALL=\"\\\"${DATADIR}\\\"\"
-PORTDOCS= CHANGELOG README TODO gdis_manual.txt
-PLIST_FILES= bin/gdis %%DATADIR%%/gdis.elements
+PORTDOCS= CHANGELOG README TODO
+PLIST_FILES= bin/gdis %%DATADIR%%/gdis.elements %%DATADIR%%/gdis.library \
+ %%DATADIR%%/gdis.manual
PLIST_DIRS= %%DATADIR%%
-post-patch:
- @${FIND} ${WRKSRC} -name "*.c" | ${XARGS} ${REINPLACE_CMD} -e \
- 's|<sys/dir.h>|<dirent.h>|g ; \
- s|struct direct|struct dirent|g'
-
-do-configure:
- @${SED} 's|SRC.*=|SRCS=|g' < ${WRKSRC}/makefile.src > ${WRKSRC}/Makefile
- @${ECHO_CMD} 'PROG=gdis' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} 'CFLAGS+=`pkg-config --cflags gtk+-2.0 gthread-2.0 gtkglext-1.0`' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} 'LDADD=`pkg-config --libs gtk+-2.0 gthread-2.0 gtkglext-1.0`' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} 'PREFIX?=/usr/local' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} 'DESTDIR=$${PREFIX}' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} 'BINDIR=/bin' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} 'NOMAN=true' >> ${WRKSRC}/Makefile
- @${ECHO_CMD} '.include <bsd.prog.mk>' >> ${WRKSRC}/Makefile
-
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/gdis ${PREFIX}/bin
@${MKDIR} ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/gdis.elements ${DATADIR}
+.for file in gdis.elements gdis.library gdis.manual
+ ${INSTALL_DATA} ${WRKSRC}/${file} ${DATADIR}
+.endfor
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
-.for file in CHANGELOG README TODO gdis_manual.txt
+.for file in CHANGELOG README TODO
${INSTALL_DATA} ${WRKSRC}/${file} ${DOCSDIR}
.endfor
.endif
diff --git a/science/gdis/distinfo b/science/gdis/distinfo
index 0f73cb7227b9..cbdb39d96e77 100644
--- a/science/gdis/distinfo
+++ b/science/gdis/distinfo
@@ -1,3 +1,3 @@
-MD5 (gdis-0.86-source.tgz) = 55d3db8b382001300abe1795b1320a4b
-SHA256 (gdis-0.86-source.tgz) = 1348b6f151e532852743ce4d0fc528efacbc500bef1f5d27c0b0fc6f1e290840
-SIZE (gdis-0.86-source.tgz) = 649570
+MD5 (gdis-0.89-source.tgz) = 81da7f83b5eb8b7fc6c6a66416221373
+SHA256 (gdis-0.89-source.tgz) = 594e9c199d1911e2b3d4da0a704e8cf14e7813c099e1bfdde294abb4895dfcec
+SIZE (gdis-0.89-source.tgz) = 829113
diff --git a/science/gdis/files/patch-crystal_graph.c b/science/gdis/files/patch-crystal_graph.c
new file mode 100644
index 000000000000..d1f76909f64e
--- /dev/null
+++ b/science/gdis/files/patch-crystal_graph.c
@@ -0,0 +1,71 @@
+--- crystal_graph.c.orig Thu Nov 24 15:07:31 2005
++++ crystal_graph.c Thu Nov 2 00:00:23 2006
+@@ -110,6 +110,9 @@
+ gdouble run_gulp(GSList *cores, gchar *species)
+ {
+ struct model_pak *new_model, *result_model;
++ gchar *cmd;
++ gdouble result;
++
+ new_model = g_malloc(sizeof(struct model_pak));
+ result_model = g_malloc(sizeof(struct model_pak));
+
+@@ -128,13 +131,13 @@
+ new_model->periodic = 0;
+
+ write_gulp(new_model->gulp.temp_file, new_model);
+- gchar * cmd = g_strdup_printf("%s < %s > %s", sysenv.gulp_path,
++ cmd = g_strdup_printf("%s < %s > %s", sysenv.gulp_path,
+ new_model->gulp.temp_file, new_model->gulp.out_file);
+ system(cmd);
+ g_free(cmd);
+
+ read_gulp_output(new_model->gulp.out_file, result_model);
+- gdouble result = result_model->gulp.energy;
++ result = result_model->gulp.energy;
+ model_free(new_model);
+ model_free(result_model);
+
+@@ -156,6 +159,9 @@
+ gint b_images =(gint) model->monty.image_y + 0.5;
+ gint c_images =(gint) model->monty.image_z + 0.5;
+
++ gint nr_molecules;
++ gdouble * single_energies;
++
+ /* checks */
+ g_return_val_if_fail(sysenv.gulp_path != NULL, 4);
+ g_return_val_if_fail(model != NULL, 1);
+@@ -165,7 +171,7 @@
+ gui_text_show(ERROR, "Can not calculate a crystal graph for non crystalline models");
+ return 3;
+ }
+- gint nr_molecules = g_slist_length(model->moles);
++ nr_molecules = g_slist_length(model->moles);
+ /* initialize the key chunk to hold the maximum number of */
+ key_chunk = g_mem_chunk_create(gint,
+ nr_molecules * nr_molecules *(2*a_images+1)*(2*b_images+1)*(2*c_images+1),
+@@ -180,7 +186,7 @@
+ type_dreiding_gasteiger(model, DREIDING);
+
+ /* calculate the single energies */
+- gdouble * single_energies = g_new0(gdouble, nr_molecules);
++ single_energies = g_new0(gdouble, nr_molecules);
+
+ for (mol_iter = model->moles; mol_iter; mol_iter = mol_iter->next)
+ {
+@@ -218,12 +224,13 @@
+ if (pair != NULL)
+ {
+ gdouble *key_ptr;
++ gchar * combination;
+ key_ptr = g_chunk_new(gdouble, key_chunk);
+ *key_ptr = run_gulp(pair, model->gulp.species);
+ *key_ptr *= 96.48474; //eV --> kJ / mol
+ *key_ptr -= single_energies[m1];
+ *key_ptr -= single_energies[m2];
+- gchar * combination = g_strdup_printf(" %i - %i [ %i %i %i ]", m1+1, m2+1, x,y,z);
++ combination = g_strdup_printf(" %i - %i [ %i %i %i ]", m1+1, m2+1, x,y,z);
+ g_tree_insert(tree, key_ptr, combination);
+ }
+ }
diff --git a/science/gdis/files/patch-file_bgf.c b/science/gdis/files/patch-file_bgf.c
new file mode 100644
index 000000000000..634868ed7248
--- /dev/null
+++ b/science/gdis/files/patch-file_bgf.c
@@ -0,0 +1,20 @@
+--- file_bgf.c.orig Thu Nov 24 13:58:48 2005
++++ file_bgf.c Thu Nov 2 00:04:15 2006
+@@ -140,7 +140,7 @@
+ gint read_bgf(gchar *filename, struct model_pak *data)
+ {
+ gint n=0, w, i, num_tokens;
+- gchar **buff, **buff2, line[LINELEN];
++ gchar **buff, **buff2, line[LINELEN], *species_string;
+ struct core_pak *core, *core_bond_to;
+
+ GHashTable * atom_types_and_labels = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
+@@ -278,7 +278,7 @@
+ }
+
+ /* allocate 25 characters for each species line, that should be enough */
+- gchar * species_string = g_new(gchar, g_hash_table_size(atom_types_and_labels) * 25 );
++ species_string = g_new(gchar, g_hash_table_size(atom_types_and_labels) * 25 );
+ /* get all species from the hash table */
+ g_hash_table_foreach(atom_types_and_labels, species_line_from_hash_table, &species_string);
+
diff --git a/science/gdis/files/patch-file_cgf.c b/science/gdis/files/patch-file_cgf.c
new file mode 100644
index 000000000000..3ba1b617f06f
--- /dev/null
+++ b/science/gdis/files/patch-file_cgf.c
@@ -0,0 +1,69 @@
+--- file_cgf.c.orig Thu Nov 24 13:58:48 2005
++++ file_cgf.c Thu Nov 2 00:10:25 2006
+@@ -188,7 +188,7 @@
+ GSList *core_iter, *bond_iter;//,
+ GSList *primary_cores = NULL;
+ FILE *fp;
+- gint nr_primary_cores = 0, max_bonds = 0, bond_counter = 0, num_tokens = 0, offset_counter = 0;
++ gint nr_primary_cores = 0, max_bonds = 0, bond_counter = 0, num_tokens = 0, offset_counter = 0, total_bonds = 0;
+
+ gint *nr_bonds = g_new(gint, g_slist_length(data->cores));
+
+@@ -197,6 +197,9 @@
+
+ gchar **buff;
+
++ gdouble *bond_strengths;
++ gint *bond_to_values, *bond_offsets;
++
+ /* checks and open file */
+ g_return_val_if_fail(data != NULL, 1);
+ fp = fopen(filename, "wt");
+@@ -208,8 +211,6 @@
+ fprintf(fp, "alpha= %3.5f beta= %3.5f gamma= %3.5f\n", data->pbc[3] * R2D, data->pbc[4] * R2D, data->pbc[5] * R2D);
+ fprintf(fp, "Spacegroup information: SPGR = %-24s OPT = %i\n", data->sginfo.spacename, data->sginfo.cellchoice);
+
+- gint total_bonds = 0;
+-
+ for (core_iter = data->cores; core_iter; core_iter = core_iter->next)
+ {
+ core = (struct core_pak *)core_iter->data;
+@@ -229,9 +230,9 @@
+ }
+ }
+
+- gdouble * bond_strengths = g_new0(gdouble, total_bonds);
+- gint * bond_to_values = g_new0(gint, total_bonds);
+- gint * bond_offsets = g_new0(gint, total_bonds * 3);
++ bond_strengths = g_new0(gdouble, total_bonds);
++ bond_to_values = g_new0(gint, total_bonds);
++ bond_offsets = g_new0(gint, total_bonds * 3);
+
+ fprintf(fp, "Nr of centres of mass: %i\n", nr_primary_cores);
+ fprintf(fp, "Maximum connectivity: %i\n", max_bonds);
+@@ -280,6 +281,8 @@
+ gint *bondto;
+ gdouble *bond_offsets;
+ gdouble *bond_strengths;
++
++ gint bondto_counter = 0, bond_offsets_counter = 0, total_bonds = 0;
+
+ /* checks */
+ g_return_val_if_fail(data != NULL, 1);
+@@ -366,8 +369,6 @@
+ bond_offsets = g_new(gdouble, nr_bond_lines * num_gu * 15);
+ //bond_strengths = g_new(gdouble, nr_bond_lines * num_gu * 5);
+
+- gint bondto_counter = 0, bond_offsets_counter = 0;
+-
+ /* create GUs a priori */
+ for (n = 0; n < num_gu; ++n)
+ {
+@@ -442,7 +443,6 @@
+ fgetline(fp, line);
+ }
+
+- gint total_bonds = 0;
+ /* now we create new cores for each bond */
+ w = 0;
+ for (n = 0; n < num_gu; ++n)
diff --git a/science/gdis/files/patch-gui_monty.c b/science/gdis/files/patch-gui_monty.c
new file mode 100644
index 000000000000..84c29b055ce5
--- /dev/null
+++ b/science/gdis/files/patch-gui_monty.c
@@ -0,0 +1,37 @@
+--- gui_monty.c.orig Thu Nov 24 13:58:48 2005
++++ gui_monty.c Thu Nov 2 00:13:29 2006
+@@ -492,6 +492,7 @@
+ FILE *fp;
+ struct model_pak *model = data;
+ gchar *last_dirsep, *yes, *no;
++ gchar **hkls, **supersats, **out_dirs;
+ gint i;
+
+ yes = g_strdup("yes");
+@@ -513,7 +514,7 @@
+ g_strstrip(model->monty.hkls);
+
+ /* split the string by endline characters */
+- gchar **hkls = g_strsplit(model->monty.hkls, "\n", INT_MAX);
++ hkls = g_strsplit(model->monty.hkls, "\n", INT_MAX);
+
+ /* print all hkl values to the file */
+ for (i = 0; *(hkls+i); ++i)
+@@ -523,7 +524,7 @@
+
+ /* remove any whitespace, this also includes trailing \n characters */
+ g_strstrip(model->monty.supersaturations);
+- gchar **supersats = g_strsplit(model->monty.supersaturations, "\n", INT_MAX);
++ supersats = g_strsplit(model->monty.supersaturations, "\n", INT_MAX);
+ for (i = 0; *(supersats+i); ++i)
+ {
+ fprintf(fp, " -supersat %s\n", *(supersats +i));
+@@ -551,7 +552,7 @@
+
+ /* remove any whitespace, this also includes trailing \n characters */
+ g_strstrip(model->monty.output_dirs);
+- gchar **out_dirs = g_strsplit(model->monty.output_dirs, "\n", INT_MAX);
++ out_dirs = g_strsplit(model->monty.output_dirs, "\n", INT_MAX);
+ for (i = 0; *(out_dirs + i); ++i)
+ {
+ fprintf(fp, " -directory %s %s\n", *(hkls + i), *(out_dirs + i));
diff --git a/science/gdis/files/patch-gui_siesta.c b/science/gdis/files/patch-gui_siesta.c
new file mode 100644
index 000000000000..39450b620bf8
--- /dev/null
+++ b/science/gdis/files/patch-gui_siesta.c
@@ -0,0 +1,113 @@
+--- gui_siesta.c.orig Mon Oct 16 10:59:37 2006
++++ gui_siesta.c Thu Nov 2 00:30:56 2006
+@@ -58,10 +58,10 @@
+ /*************************/
+ void gui_siesta_dialog(void)
+ {
+- siestafileWRITE = FALSE;
+ GtkWidget *window;
+ gpointer dialog;
+ struct model_pak *model;
++ siestafileWRITE = FALSE;
+
+ model = sysenv.active_model;
+
+@@ -797,6 +797,8 @@
+ struct model_pak * model;
+ struct core_pak *core_i;
+ struct core_pak *core_j;
++GtkWidget *hbox, *vbox, *vbox2, *window;
++GtkWidget *dialog, *frame;
+
+
+ model = sysenv.active_model;
+@@ -826,8 +828,6 @@
+
+ num_lines = 3*2*num_atoms*num_atoms;
+
+- GtkWidget *hbox, *vbox, *vbox2, *window;
+- GtkWidget *dialog, *frame;
+ /* Create the widgets */
+
+ /* request a dialog */
+@@ -844,6 +844,10 @@
+ FILE *fp, *matout;
+
+ gchar * modelFCname, *modelFCnameCSV;
++ gdouble correction;
++ gint temp_int;
++ gdouble freq_i, freq_ii;
++ gint sizeofeig;
+
+ modelFCname = g_strdup_printf("%s/%s.FC", sysenv.cwd, model->basename);
+ modelFCnameCSV = g_strdup_printf("%s.csv", modelFCname);
+@@ -1102,7 +1106,6 @@
+ // enddo
+ // enddo
+
+- gdouble correction;
+ for (i=0; i<num_atoms; i++)
+ {
+ for (j=0; j<num_atoms; j++)
+@@ -1219,13 +1222,11 @@
+ model->siesta.sorted_eig_values[i] = i;
+ }
+
+- gint temp_int;
+- gdouble freq_i, freq_ii;
+
+ /*
+ gint sizeofeig = model->siesta.eigen_values->dim;
+ */
+- gint sizeofeig = mesch_dim_get(model->siesta.eigen_values);
++ sizeofeig = mesch_dim_get(model->siesta.eigen_values);
+
+
+ for (j=sizeofeig-1; j>1; j--)
+@@ -1350,10 +1351,10 @@
+ {
+ //evil active model call - evil evil evil
+ struct model_pak *model;
+- model = sysenv.active_model;
+-
+ gchar *buff;
+
++ model = sysenv.active_model;
++
+ buff = g_strdup(gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(data)->entry)));
+ if (g_ascii_strncasecmp("Verlet", buff, 6) == 0)
+ model->siesta.md_type_of_run = VERLET_MDRUN;
+@@ -1747,6 +1748,9 @@
+
+ for (i=0; i<total_files; i++)
+ {
++ //grab current grid_config_pak
++ struct grid_config_pak * grid_pak;
++
+ //set the range for md_fc_first, and md_fc_last
+ model->siesta.md_fc_first = i* model->siesta.atoms_per_job + 1;
+ model->siesta.md_fc_last = i * model->siesta.atoms_per_job + model->siesta.atoms_per_job;
+@@ -1763,9 +1767,6 @@
+ // call the fdf save bit....
+ file_save_as(filename, model);
+
+- //grab current grid_config_pak
+- struct grid_config_pak * grid_pak;
+-
+ //get job directory
+ siesta_make_runscript(model->basename, sysenv.cwd, grid_pak);
+
+@@ -1851,12 +1852,11 @@
+ int i, jobID;
+ int total_files;
+ gchar * filename, * orig_basename, *queuepath, *jobID_string;
++ struct grid_config_pak * grid_pak;
+
+ total_files = model->num_atoms / model->siesta.atoms_per_job +1;
+
+ orig_basename = g_strdup(model->basename);
+-
+- struct grid_config_pak * grid_pak;
+
+ //default jobstorage dir??
+ //"$homedir/.gdis_jobs/ ?
diff --git a/science/gdis/files/patch-main.c b/science/gdis/files/patch-main.c
index 6270599e5ea9..221909b316a3 100644
--- a/science/gdis/files/patch-main.c
+++ b/science/gdis/files/patch-main.c
@@ -1,15 +1,32 @@
---- main.c.orig Tue Nov 4 15:08:29 2003
-+++ main.c Wed Dec 31 02:11:54 2003
-@@ -433,6 +433,12 @@
- }
- }
+--- main.c.orig Wed Jul 26 15:15:28 2006
++++ main.c Wed Nov 1 23:53:11 2006
+@@ -364,7 +364,7 @@
+ void sys_init(gint argc, gchar *argv[])
+ {
+ gchar *temp;
+-const gchar *ctemp;
++const gchar *envdir, *ctemp;
+ struct light_pak *light;
+ FILE *fp;
+@@ -500,7 +500,7 @@
+
+ /* setup directory and file pointers */
+ sysenv.cwd = g_get_current_dir();
+-const gchar *envdir = g_getenv("GDIS_START_DIR");
++envdir = g_getenv("GDIS_START_DIR");
+ if (envdir)
+ sysenv.cwd = (gchar *) envdir;
+
+@@ -510,7 +510,11 @@
+
+ /* generate element file full pathname */
+ /* sometimes this returns the program name, and sometimes it doesn't */
+#ifdef INSTALL
-+strcpy(sysenv.elem_file, INSTALL);
-+strcat(sysenv.elem_file, DIR_SEP);
-+strcat(sysenv.elem_file, ELEM_FILE);
++temp = g_strdup(INSTALL);
++#else
+ temp = g_find_program_in_path(argv[0]);
+#endif
-+
- /* defaults */
- sysenv.povray_exe = g_strdup("povray");
- sysenv.convert_exe = g_strdup("convert");
+ /* remove program name (if attached) */
+ if (g_file_test(temp, G_FILE_TEST_IS_DIR))
+ sysenv.gdis_path = temp;
diff --git a/science/gdis/files/patch-molsurf.c b/science/gdis/files/patch-molsurf.c
new file mode 100644
index 000000000000..3f9b741f653b
--- /dev/null
+++ b/science/gdis/files/patch-molsurf.c
@@ -0,0 +1,22 @@
+--- molsurf.c.orig Mon Jun 19 17:42:29 2006
++++ molsurf.c Wed Nov 1 23:55:43 2006
+@@ -745,7 +745,7 @@
+ gdouble Dx, Dy, Dz; /* gradient */
+ gdouble temp[3]; /* the dreaded temporary variable */
+ gdouble theta, sinTheta, cosTheta;
+-gfloat hue, red, green, blue;
++gfloat hue, red, green, blue, colourRange, hueStep;
+ time_t jobStartTime;
+
+ #if DEBUG_SHAPE
+@@ -761,9 +761,7 @@
+ #endif
+
+ /* setup for colours */
+- gfloat colourRange= 256;
+- gfloat hueStep;
+-
++ colourRange= 256;
+ hueStep = 240/colourRange;
+
+