Browse Source

build: compile benchmark programs too.

master
Alexei Sheplyakov 16 years ago
parent
commit
d407e6b22e
  1. 4
      Makefile.am
  2. 18
      benchmarks/Makefile.am
  3. 114
      benchmarks/Makefile.in
  4. 3
      benchmarks/timebench1.cc
  5. 2
      configure.ac

4
Makefile.am

@ -1,5 +1,5 @@
SUBDIRS = src tests examples doc
DIST_SUBDIRS = src tests examples doc
SUBDIRS = src tests examples doc benchmarks
DIST_SUBDIRS = src tests examples doc benchmarks
pkgconfigdir = $(libdir)/pkgconfig pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = cln.pc pkgconfig_DATA = cln.pc

18
benchmarks/Makefile.am

@ -0,0 +1,18 @@
noinst_PROGRAMS = timebench1 timebench2a timebench2ap timebench2b
timebench1_SOURCES = timebench1.cc
timebench1_LDADD = ../src/libcln.la
timebench2a_SOURCES = timebench2a.cc
timebench2a_LDADD = ../src/libcln.la
timebench2ap_SOURCES = timebench2ap.cc
timebench2ap_LDADD = ../src/libcln.la
timebench2b_SOURCES = timebench2b.cc
timebench2b_LDADD = ../src/libcln.la
AM_CPPFLAGS = -I../include -I$(top_srcdir)/include
EXTRA_DIST = README bench2.txt timebench2.sh

114
benchmarks/Makefile.in

@ -1,114 +0,0 @@
# Makefile for cln/benchmarks
#### Start of system configuration section. ####
# Directories used by "make":
srcdir = @srcdir@
top_srcdir = @top_srcdir@
# Programs used by "make":
# C compiler
CC = @CC@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
# C++ compiler
CXX = @CXX@
CXXFLAGS = @CXXFLAGS@
CXXCPP = @CXXCPP@
INCLUDES = -I../include -I${top_srcdir}/include -I${top_srcdir}/src -I${srcdir}
override CPPFLAGS += ${INCLUDES}
LIBTOOL = @LIBTOOL@
LIBTOOL_LINK = ${LIBTOOL} --mode=link
MV = mv
LN = ln
RM = rm -f
@SET_MAKE@
EXEEXT = @EXEEXT@
#### End of system configuration section. ####
SHELL = /bin/sh
# Needed by ${LIBTOOL}.
top_builddir = ..
VPATH = ${srcdir}
FILES_CC := $(notdir $(wildcard ${srcdir}/*.cc))
FILES_CC := $(filter-out %.i.cc, ${FILES_CC})
FILES_I_CC := $(patsubst %.cc,%.i.cc,${FILES_CC})
FILES_S := $(patsubst %.cc,%.s,${FILES_CC})
FILES_O := $(patsubst %.cc,%.o,${FILES_CC})
OBJECTS = ${FILES_O}
LIBS = ../src/libcln.la -lm
LIBDEPS = ../src/libcln.la
PROGRAMS = $(addsuffix ${EXEEXT},timebench1 timebench2a timebench2ap timebench2b)
MODULES_timebench1 = timebench1
MODULES_timebench2a = timebench2a
MODULES_timebench2ap = timebench2ap
MODULES_timebench2b = timebench2b
all : $(addsuffix ${EXEEXT}, timebench2a timebench2ap timebench2b)
%.s : %.c
${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
%.s : %.cc
${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
ifdef notyet
%.o : %.c
${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
%.o : %.cc
${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
else
${FILES_O} : %.o : %.s
${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
endif
%.i : %.c
${CPP} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
%.i.cc : %.cc
${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
timebench1${EXEEXT} : $(patsubst %,%.o,${MODULES_timebench1})
timebench2a${EXEEXT} : $(patsubst %,%.o,${MODULES_timebench2a})
timebench2ap${EXEEXT} : $(patsubst %,%.o,${MODULES_timebench2ap})
timebench2b${EXEEXT} : $(patsubst %,%.o,${MODULES_timebench2b})
${PROGRAMS} : %${EXEEXT} : ${LIBDEPS}
${LIBTOOL_LINK} ${CXX} ${CXXFLAGS} ${TARGET_ARCH} $(patsubst %,%.o,$(MODULES_$(*F))) ${LDFLAGS} ${LIBS} -o $@
install : all
installdirs :
uninstall :
check : all
mostlyclean : clean
clean : force
${RM} *.s *.o *.a ${PROGRAMS} a.out core
${RM} -r .libs _libs
distclean : clean
${RM} config.status config.log config.cache Makefile
maintainer-clean : distclean
force :

3
benchmarks/timebench1.cc

@ -12,6 +12,9 @@
#include <cstdlib> #include <cstdlib>
#include <cstring> #include <cstring>
#include <cln/timing.h> #include <cln/timing.h>
#include <iostream>
using namespace cln;
using namespace std;
// Timings on Linux i486 33 MHz, 1000 decimal places = 104 32-bit words. // Timings on Linux i486 33 MHz, 1000 decimal places = 104 32-bit words.
// Function LiDIA Pari CLISP CLN // Function LiDIA Pari CLISP CLN

2
configure.ac

@ -135,4 +135,4 @@ CL_LIBGMP
dnl dnl
dnl That's it. dnl That's it.
dnl dnl
AC_OUTPUT([Makefile src/Makefile tests/Makefile examples/Makefile doc/Makefile cln.spec cln.pc])
AC_OUTPUT([Makefile src/Makefile tests/Makefile examples/Makefile doc/Makefile benchmarks/Makefile cln.spec cln.pc])
Loading…
Cancel
Save