mirror of
https://github.com/ioacademy-jikim/debugging
synced 2025-06-08 00:16:11 +00:00
173 lines
5.0 KiB
Bash
173 lines
5.0 KiB
Bash
#!/bin/sh
|
|
|
|
downloads="$HOME/software/downloads"
|
|
|
|
if [ ! -e /usr/include/tiffio.h ]; then
|
|
echo "Error: could not find file tiffio.h. Please install libtiff4-dev."
|
|
exit 1
|
|
fi
|
|
|
|
export LC_ALL=C
|
|
|
|
mkdir -p "${downloads}"
|
|
|
|
cd "$(dirname $0)/.."
|
|
|
|
if [ -e splash2 ]; then
|
|
echo "Error: a directory with the name splash2 already exists. Please"
|
|
echo "remove it before running this script, or run this script in another"
|
|
echo "directory."
|
|
exit 1
|
|
fi
|
|
|
|
(
|
|
cd "$downloads"
|
|
if [ ! -e splash2.tar.gz ]; then
|
|
wget -q http://www-flash.stanford.edu/apps/SPLASH/splash2.tar.gz
|
|
fi
|
|
if [ ! -e splash2-modified.patch.gz ]; then
|
|
wget -q http://www.capsl.udel.edu/splash/splash2-modified.patch.gz
|
|
fi
|
|
)
|
|
|
|
tar zxf $downloads/splash2.tar.gz
|
|
cd splash2
|
|
gzip -cd < "$downloads/splash2-modified.patch.gz" | patch -p1 -s
|
|
patch -p1 -s <<'EOF'
|
|
diff -ru orig/splash2/codes/apps/radiosity/display.C splash2/codes/apps/radiosity/display.C
|
|
--- orig/splash2/codes/apps/radiosity/display.C 2008-05-25 10:38:52.000000000 +0200
|
|
+++ splash2/codes/apps/radiosity/display.C 2008-05-25 10:37:51.000000000 +0200
|
|
@@ -14,6 +14,7 @@
|
|
/* */
|
|
/*************************************************************************/
|
|
|
|
+#include <math.h>
|
|
#include <stdio.h>
|
|
|
|
EXTERN_ENV;
|
|
--- orig/splash2/codes/apps/radiosity/Makefile 2008-05-25 10:38:52.000000000 +0200
|
|
+++ splash2/codes/apps/radiosity/Makefile 2008-05-25 13:05:36.000000000 +0200
|
|
@@ -15,7 +15,7 @@
|
|
|
|
LOADLIBES = glibdumb/glib.a glibps/glibps.a
|
|
|
|
-$(TARGET): $(OBJS)
|
|
+$(TARGET): $(OBJS) $(LOADLIBES)
|
|
$(CC) $(OBJS) $(CFLAGS) $(LOADLIBES) -o $(TARGET) $(LDFLAGS)
|
|
|
|
radiosity.h: patch.h model.h parallel.h task.h
|
|
@@ -29,3 +29,7 @@
|
|
visible.c: visible.C $(HS)
|
|
rad_tools.c: rad_tools.C $(HS)
|
|
room_model.c: room_model.C $(HS)
|
|
+glibdumb/glib.a:
|
|
+ make -C glibdumb glib.a
|
|
+glibps/glibps.a:
|
|
+ make -C glibps glibps.a
|
|
diff -ru orig/splash2/codes/apps/raytrace/rltotiff/Makefile splash2/codes/apps/raytrace/rltotiff/Makefile
|
|
--- orig/splash2/codes/apps/raytrace/rltotiff/Makefile 2008-05-25 10:38:52.000000000 +0200
|
|
+++ splash2/codes/apps/raytrace/rltotiff/Makefile 2008-05-25 10:31:57.000000000 +0200
|
|
@@ -4,6 +4,3 @@
|
|
include ../../../Makefile.config
|
|
|
|
LDFLAGS := $(LDFLAGS) -ltiff
|
|
-
|
|
-clean:
|
|
- rm -rf $(OBJS) $(TARGET)
|
|
EOF
|
|
|
|
|
|
patch -p1 -s <<EOF
|
|
diff -ru orig/splash2/codes/Makefile.config splash2/codes/Makefile.config
|
|
--- orig/splash2/codes/Makefile.config 2008-05-25 10:38:52.000000000 +0200
|
|
+++ splash2/codes/Makefile.config 2008-05-25 10:14:25.000000000 +0200
|
|
@@ -1,5 +1,5 @@
|
|
-CC := gcc
|
|
+CC := gcc
|
|
-CFLAGS := -O3 -pthread -D_POSIX_C_SOURCE=200112
|
|
+CFLAGS := -g3 -m32 -O3 -pthread -D_POSIX_C_SOURCE=200112
|
|
#CFLAGS := -g3 -pthread -D_POSIX_C_SOURCE=200112
|
|
CFLAGS := \$(CFLAGS) -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wdisabled-optimization
|
|
CFLAGS := \$(CFLAGS) -Wpadded -Winline -Wpointer-arith -Wsign-compare -Wendif-labels
|
|
@@ -5,8 +5,8 @@
|
|
CFLAGS := \$(CFLAGS) -Wpadded -Winline -Wpointer-arith -Wsign-compare -Wendif-labels
|
|
LDFLAGS := -lm
|
|
|
|
-BASEDIR := \$(HOME)/splash2/codes
|
|
-MACROS := \$(BASEDIR)/null_macros/c.m4.null
|
|
+BASEDIR := ${PWD}/codes
|
|
+MACROS := \$(BASEDIR)/null_macros/c.m4.null.POSIX_BARRIER
|
|
M4 := m4 -s -Ulen -Uindex
|
|
|
|
x = *
|
|
--- orig/splash2/codes/apps/radiosity/elemman.C 2008-07-13 20:24:35.000000000 +0200
|
|
+++ splash2/codes/apps/radiosity/elemman.C 2008-07-13 20:45:15.000000000 +0200
|
|
@@ -24,6 +24,7 @@
|
|
|
|
|
|
#include <stdio.h>
|
|
+#include "drd.h"
|
|
|
|
EXTERN_ENV;
|
|
|
|
@@ -707,6 +708,12 @@ void process_rays(Element *e, long proce
|
|
e->n_interactions = 0 ;
|
|
UNLOCK(e->elem_lock->lock);
|
|
|
|
+ {
|
|
+ Interaction* p;
|
|
+ for (p = i_list; p; p = p->next)
|
|
+ DRD_IGNORE_VAR(*p);
|
|
+ }
|
|
+
|
|
/* For each interaction, do BF-error-analysis */
|
|
bf_error_analysis_list( e, i_list, process_id ) ;
|
|
|
|
--- orig/splash2/codes/apps/radiosity/rad_main.C 2008-07-13 20:24:35.000000000 +0200
|
|
+++ splash2/codes/apps/radiosity/rad_main.C 2008-07-13 20:50:01.000000000 +0200
|
|
@@ -30,6 +30,7 @@
|
|
#include <panel.h>
|
|
#endif
|
|
#endif
|
|
+#include "drd.h"
|
|
|
|
/* ANL macro initialization */
|
|
|
|
@@ -1084,6 +1085,18 @@ void init_global(long process_id)
|
|
/* Initialize statistical info */
|
|
init_stat_info(process_id) ;
|
|
|
|
+ {
|
|
+ int i;
|
|
+
|
|
+ DRD_IGNORE_VAR(global->pbar_count);
|
|
+ for (i = 0;
|
|
+ i < sizeof(global->task_queue) / sizeof(global->task_queue[0]);
|
|
+ i++)
|
|
+ {
|
|
+ DRD_IGNORE_VAR(global->task_queue[i].n_tasks);
|
|
+ }
|
|
+ DRD_IGNORE_VAR(global->element_buf);
|
|
+ }
|
|
}
|
|
|
|
|
|
--- orig/splash2/codes/apps/radiosity/Makefile 2008-07-13 20:24:35.000000000 +0200
|
|
+++ splash2/codes/apps/radiosity/Makefile 2008-07-13 20:09:27.000000000 +0200
|
|
@@ -6,7 +6,7 @@ HS = model.h parallel.h patch.h radiosit
|
|
|
|
include ../../Makefile.config
|
|
|
|
-CFLAGS := \$(CFLAGS) -I./glibdumb -I./glibps
|
|
+CFLAGS := \$(CFLAGS) -I./glibdumb -I./glibps -I../../../../../drd -I../../../../../include
|
|
|
|
#CCOPTS = -I -float -I/usr/include \$(CFLAGS)
|
|
#LDFLAGS = -lm -lpthread
|
|
EOF
|
|
|
|
for m in $(find codes -name Makefile)
|
|
do
|
|
echo "==== $m ===="
|
|
make -s -C $(dirname $m)
|
|
done
|