--- /dev/null
+# Makefile de ejemplo para C++
+#
+# Creado: jue abr 15 15:34:19 ART 2004
+#
+# Copyleft 2004 - Leandro Lucarella, Bajo licencia GPL [http://www.gnu.org/]
+#
+
+# CONFIGURACION
+################
+
+# Nombre del ejecutable.
+target = tp
+
+# Extensión de los archivos a compilar (c para C, cpp o cc o cxx para C++).
+extension = c
+
+# Archivos con el código fuente que componen el ejecutable. Si no se especifica,
+# toma todos los archivos con la extensión mencionada. Para especificar hay que
+# descomentar la línea (quitarle el '#' del principio).
+# NOTA: No poner cabeceras (.h).
+#fuentes = entrada.cpp
+
+# Si es un programa GTK+, descomentá (quitale el '#' a) la siguiente línea.
+#gtk = si
+
+
+# CONFIGURACION "AVANZADA"
+###########################
+
+# Opciones para el compilador C.
+CFLAGS = -Werror -Wall -ggdb -ansi -pedantic -DDEBUG
+
+# Opciones para el compilador C++.
+CXXFLAGS = $(CFLAGS) -fno-inline
+
+# Opciones del enlazador.
+LDFLAGS=-static
+
+
+# VARIABLES CALCULADAS A PARTIR DE LA CONFIGURACION
+####################################################
+
+# Agrego flags y libs de GTK+ de ser necesario.
+ifdef gtk
+CFLAGS += $(shell pkg-config --cflags gtk+-2.0)
+CXXFLAGS += $(shell pkg-config --cflags gtk+-2.0)
+LDFLAGS += $(shell pkg-config --libs gtk+-2.0)
+endif
+
+# Uso enlazador de c++ si es código no C.
+ifeq ($(extension), c)
+enlazador = $(CC)
+else
+enlazador = $(CXX)
+endif
+
+# Si no especifica archivos, tomo todos.
+fuentes ?= $(wildcard *.$(extension))
+
+
+# REGLAS
+#########
+
+.PHONY: all clean
+
+all: $(target)
+
+o_files = $(patsubst %.$(extension),%.o,$(fuentes))
+
+$(target): $(o_files)
+ $(enlazador) $(LDFLAGS) $(o_files) $(LOADLIBES) $(LDLIBS) -o $(target)
+
+clean:
+ @$(RM) -fv *.o $(target)
+
--- /dev/null
+#!/bin/sh
+../src/sc_dbq Intento set 1 compila=None \
+ && ../src/sc_dbq Prueba rm 1 \
+ && ../src/sc_dbq Prueba rm 2 \
+ && ../src/sc_dbq Prueba rm 3
--- /dev/null
+# Makefile de ejemplo para C++
+#
+# Creado: jue abr 15 15:34:19 ART 2004
+#
+# Copyleft 2004 - Leandro Lucarella, Bajo licencia GPL [http://www.gnu.org/]
+#
+
+# CONFIGURACION
+################
+
+# Nombre del ejecutable.
+target = tp
+
+# Extensión de los archivos a compilar (c para C, cpp o cc o cxx para C++).
+extension = c
+
+# Archivos con el código fuente que componen el ejecutable. Si no se especifica,
+# toma todos los archivos con la extensión mencionada. Para especificar hay que
+# descomentar la línea (quitarle el '#' del principio).
+# NOTA: No poner cabeceras (.h).
+#fuentes = entrada.cpp
+
+# Si es un programa GTK+, descomentá (quitale el '#' a) la siguiente línea.
+#gtk = si
+
+
+# CONFIGURACION "AVANZADA"
+###########################
+
+# Opciones para el compilador C.
+CFLAGS = -Wall -ggdb -ansi -pedantic -DDEBUG
+
+# Opciones para el compilador C++.
+CXXFLAGS = $(CFLAGS) -fno-inline
+
+# Opciones del enlazador.
+LDFLAGS=-static
+
+
+# VARIABLES CALCULADAS A PARTIR DE LA CONFIGURACION
+####################################################
+
+# Agrego flags y libs de GTK+ de ser necesario.
+ifdef gtk
+CFLAGS += $(shell pkg-config --cflags gtk+-2.0)
+CXXFLAGS += $(shell pkg-config --cflags gtk+-2.0)
+LDFLAGS += $(shell pkg-config --libs gtk+-2.0)
+endif
+
+# Uso enlazador de c++ si es código no C.
+ifeq ($(extension), c)
+enlazador = $(CC)
+else
+enlazador = $(CXX)
+endif
+
+# Si no especifica archivos, tomo todos.
+fuentes ?= $(wildcard *.$(extension))
+
+
+# REGLAS
+#########
+
+.PHONY: all clean
+
+all: $(target)
+
+o_files = $(patsubst %.$(extension),%.o,$(fuentes))
+
+$(target): $(o_files)
+ $(enlazador) $(LDFLAGS) $(o_files) $(LOADLIBES) $(LDLIBS) -o $(target)
+
+clean:
+ @$(RM) -fv *.o $(target)
+
--- /dev/null
+complicado
--- /dev/null
+complicado
--- /dev/null
+/tp
+--full
--- /dev/null
+/tp
+--full
+--no-full
+parametros "raros"
--- /dev/null
+
+; No editar los loggers
+[loggers]
+keys = root,fetch,test
+
+; A partir de acá se puede editar
+[handlers]
+;keys = file,mail,stderr
+keys = stderr
+
+[formatters]
+keys = file,mail,stderr
+
+[logger_root]
+level = NOTSET
+;handlers = file,mail,stderr
+handlers = stderr
+
+[logger_fetch]
+level = NOTSET
+handlers =
+propagate = 1
+qualname = fetch
+
+[logger_test]
+level = NOTSET
+handlers =
+propagate = 1
+qualname = test
+
+;[handler_file]
+;class = FileHandler
+;level = DEBUG
+;formatter = file
+;args = ('sercom.log', 'a')
+
+[handler_stderr]
+class = StreamHandler
+level = DEBUG
+formatter = stderr
+args = (sys.stderr,)
+
+;[handler_mail]
+;class = handlers.SMTPHandler
+;level = WARNING
+;formatter = mail
+; smtp, from, to, subject
+;args = ('llucax.hn.org', 'sercom@llucax.hn.org', 'luca@llucax.hn.org', '[SERCOM] Log')
+
+[formatter_file]
+format = %(asctime)s %(name)5s[%(process)d] %(levelname)-8s %(message)s
+datefmt = %c
+
+[formatter_stderr]
+format = %(levelname)s: %(message)s
+datefmt = %c
+
+[formatter_mail]
+format = %(levelname)s en %(name)s (pid %(process)d)
+ en el archivo %(pathname)s, linea %(lineno)d
+ el %(asctime)s
+ ------------------------------------------------------------------------
+ %(message)s
+ ------------------------------------------------------------------------
+datefmt = %c
+
--- /dev/null
+
+; Opciones generales para todos los programadas de sercom
+[general]
+; Nivel de reporte de errores.
+error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
+; Directorio base en donde almacenar los archivos de datos (entregas, intentos)
+data_dir = /home/luca/taller/sercom/test/data
+; Claves para validar la identidad del alumno (a usar para crear el código)
+claves = entropia
+; Cantidad de segundos a esperar para ver si hay una nueva entrega
+intervalo = 5
+; Usuario con el cual ejecutar las pruebas
+user = luca
+; Tiempo de CPU máximo disponible por omisión para probar un intento (seg)
+tiempo_cpu = 60
+
+[log]
+; Nivel de loggeo: CRITICAL, ERROR, WARNING, INFO, DEBUG
+; (ver T/logconstants.php)
+level = DEBUG
+; Archivo de log (si no se especifica, se usa la salida de error)
+file =
+
+[mail]
+; E-Mail del administrador, a donde enviar errores graves, avisos, etc
+admin = luca@llucax.hn.org
+; Dirección desde la cual enviar mails
+from = TALLER DE PROGRAMACION I <7542@fi.uba.ar>
+; Mailbox local en donde hacer backup de los mails entregados
+; (si está vacío no se hace backup).
+mbox_bak = mbox
+
+
+; fiuba (imap)
+server = mail.fi.uba.ar
+;user = llucare
+;pass = theterror1
+user = mat7542
+pass = mecondav
+protocol = imap
+options = novalidate-cert/ssl
+
+
+[dbo]
+database = sqlite:////home/luca/taller/sercom/test/corrector.sqlite
+;?debug=1
+schema_location = T/DBO/schema/
+class_location = T/DBO/
+require_prefix = T/DBO/
+class_prefix = T_DBO_
+;debug = 1
+;extends_location = DB/DataObject.php
+;extends = DB_DataObject
+
--- /dev/null
+
+-- Cursos (id, anio, cuatrimestre, curso, descripcion)
+INSERT INTO curso VALUES (1, 2004, 1, 1, 'Martes');
+INSERT INTO curso VALUES (2, 2004, 1, 2, 'Jueves');
+INSERT INTO curso VALUES (3, 2004, 2, 1, 'Martes');
+INSERT INTO curso VALUES (4, 2004, 2, 2, 'Jueves');
+INSERT INTO curso VALUES (5, 2005, 1, 1, 'Martes');
+INSERT INTO curso VALUES (6, 2005, 1, 2, 'Jueves');
+INSERT INTO curso VALUES (7, 2005, 2, 1, 'Martes');
+INSERT INTO curso VALUES (8, 2005, 2, 2, 'Jueves');
+
+-- Docentes (id, nombre, mail, corrige)
+INSERT INTO docente VALUES (1, 'Leandro Lucarella', 'luca-taller@llucax.hn.org', 1);
+INSERT INTO docente VALUES (2, 'Gonzalo Merayo', 'merayo@gmail.com', 1);
+INSERT INTO docente VALUES (3, 'Andrés Veiga', 'aveiga@advtechnology.com.ar', 0);
+INSERT INTO docente VALUES (4, 'Lautaro Mazzitelli', 'lmazzitelli@gmail.com', 1);
+
+-- Docentes por curso (curso_id, docente_id)
+INSERT INTO curso_docente VALUES (6, 1);
+INSERT INTO curso_docente VALUES (5, 2);
+INSERT INTO curso_docente VALUES (6, 4);
+
+-- Inscriptos (id, padron, curso_id, mail, activo)
+INSERT INTO inscripto VALUES (1, 77891, 6, 'luca-alumno@llucax.hn.org', 1);
+INSERT INTO inscripto VALUES (2, 77892, 6, 'luca-alumno2@llucax.hn.org', 1);
+
+-- Ejercicios (id, nombre, numero, docente_id)
+INSERT INTO ejercicio VALUES (1, 'Punteros inteligentes', 4, 1);
+INSERT INTO ejercicio VALUES (2, 'XML parser', 4, 2);
+
+-- Entregas (id, curso_id, nro_ejercicio, entrega, ejercicio_id, desde, hasta)
+INSERT INTO entrega VALUES (1, 6, 4, 1, 1, '2005-01-26', '2005-02-26 20:00:00');
+INSERT INTO entrega VALUES (2, 6, 4, 2, 1, '2005-02-06', '2005-02-16 20:00:00');
+
+-- Casos de prueba (id, ejercicio_id, nombre, privado, activo, parametros, codigo_retorno, tiempo_cpu)
+INSERT INTO caso_de_prueba VALUES (1, 1, 'basico', 0, 1, NULL, 0, NULL);
+INSERT INTO caso_de_prueba VALUES (2, 1, 'complicado', 0, 1, '--full', 0, 600);
+INSERT INTO caso_de_prueba VALUES (3, 1, 'tramposo', 1, 1, '--full --no-full "parametros \"raros\""', NULL, NULL);
+
+-- vim: set tw=0 et :