Page MenuHomeHEPForge

No OneTemporary

diff --git a/DipoleShower/AlphaS/Makefile.am b/DipoleShower/AlphaS/Makefile.am
--- a/DipoleShower/AlphaS/Makefile.am
+++ b/DipoleShower/AlphaS/Makefile.am
@@ -1,13 +1,16 @@
+if WANT_DIPOLE
pkglib_LTLIBRARIES = HwDipoleShowerAlphaS.la
+endif
+
HwDipoleShowerAlphaS_la_LDFLAGS = -module -version-info 1:0:0
HwDipoleShowerAlphaS_la_SOURCES = \
alpha_s.h \
alpha_s.cc \
lo_alpha_s.h \
lo_alpha_s.cc \
nlo_alpha_s.h \
nlo_alpha_s.cc \
gsl.h \
gsl.tcc \
gsl.cc
diff --git a/DipoleShower/Base/Makefile.am b/DipoleShower/Base/Makefile.am
--- a/DipoleShower/Base/Makefile.am
+++ b/DipoleShower/Base/Makefile.am
@@ -1,12 +1,14 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwDipoleShowerBase.la
+endif
libHwDipoleShowerBase_la_SOURCES = \
DipoleSplittingInfo.h DipoleSplittingInfo.cc \
Dipole.h Dipole.cc \
DipoleChain.h DipoleChain.cc \
DipoleEventRecord.h DipoleEventRecord.cc \
DipoleSplittingGenerator.h DipoleSplittingGenerator.cc \
DipoleSplittingReweight.h DipoleSplittingReweight.cc \
DipoleEvolutionOrdering.h DipoleEvolutionOrdering.cc \
DipoleChainOrdering.h DipoleChainOrdering.cc
diff --git a/DipoleShower/Kernels/Makefile.am b/DipoleShower/Kernels/Makefile.am
--- a/DipoleShower/Kernels/Makefile.am
+++ b/DipoleShower/Kernels/Makefile.am
@@ -1,21 +1,23 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwDipoleShowerKernels.la
+endif
libHwDipoleShowerKernels_la_SOURCES = \
DipoleSplittingKernel.h DipoleSplittingKernel.cc \
FFMqx2qgxDipoleKernel.h FFMqx2qgxDipoleKernel.cc \
FFMgx2ggxDipoleKernel.h FFMgx2ggxDipoleKernel.cc \
FFMgx2qqxDipoleKernel.h FFMgx2qqxDipoleKernel.cc \
FFqx2qgxDipoleKernel.h FFqx2qgxDipoleKernel.cc \
FFgx2ggxDipoleKernel.h FFgx2ggxDipoleKernel.cc \
FFgx2qqxDipoleKernel.h FFgx2qqxDipoleKernel.cc \
FIqx2qgxDipoleKernel.h FIqx2qgxDipoleKernel.cc \
FIgx2ggxDipoleKernel.h FIgx2ggxDipoleKernel.cc \
FIgx2qqxDipoleKernel.h FIgx2qqxDipoleKernel.cc \
IFqx2qgxDipoleKernel.h IFqx2qgxDipoleKernel.cc \
IFqx2gqxDipoleKernel.h IFqx2gqxDipoleKernel.cc \
IFgx2ggxDipoleKernel.h IFgx2ggxDipoleKernel.cc \
IFgx2qqxDipoleKernel.h IFgx2qqxDipoleKernel.cc \
IIqx2qgxDipoleKernel.h IIqx2qgxDipoleKernel.cc \
IIqx2gqxDipoleKernel.h IIqx2gqxDipoleKernel.cc \
IIgx2ggxDipoleKernel.h IIgx2ggxDipoleKernel.cc \
IIgx2qqxDipoleKernel.h IIgx2qqxDipoleKernel.cc
diff --git a/DipoleShower/Kinematics/Makefile.am b/DipoleShower/Kinematics/Makefile.am
--- a/DipoleShower/Kinematics/Makefile.am
+++ b/DipoleShower/Kinematics/Makefile.am
@@ -1,9 +1,11 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwDipoleShowerKinematics.la
+endif
libHwDipoleShowerKinematics_la_SOURCES = \
DipoleSplittingKinematics.h DipoleSplittingKinematics.cc \
FFMassiveKinematics.h FFMassiveKinematics.cc \
FFLightKinematics.h FFLightKinematics.cc \
FILightKinematics.h FILightKinematics.cc \
IFLightKinematics.h IFLightKinematics.cc \
IILightKinematics.h IILightKinematics.cc
diff --git a/DipoleShower/Makefile.am b/DipoleShower/Makefile.am
--- a/DipoleShower/Makefile.am
+++ b/DipoleShower/Makefile.am
@@ -1,14 +1,17 @@
SUBDIRS = Base Kernels Kinematics Utility AlphaS
+if WANT_DIPOLE
pkglib_LTLIBRARIES = HwDipoleShower.la
+endif
+
HwDipoleShower_la_LDFLAGS = -module -version-info 1:0:0
HwDipoleShower_la_LIBADD = \
Base/libHwDipoleShowerBase.la \
Kernels/libHwDipoleShowerKernels.la \
Kinematics/libHwDipoleShowerKinematics.la \
Utility/libHwDipoleShowerUtility.la
HwDipoleShower_la_SOURCES = \
DipoleShowerHandler.h DipoleShowerHandler.cc
diff --git a/DipoleShower/Utility/Makefile.am b/DipoleShower/Utility/Makefile.am
--- a/DipoleShower/Utility/Makefile.am
+++ b/DipoleShower/Utility/Makefile.am
@@ -1,8 +1,10 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwDipoleShowerUtility.la
+endif
libHwDipoleShowerUtility_la_SOURCES = \
ConstituentReshuffler.h ConstituentReshuffler.cc \
IntrinsicPtGenerator.h IntrinsicPtGenerator.cc \
DipolePartonSplitter.h DipolePartonSplitter.cc \
PDFRatio.h PDFRatio.cc \
DipoleMCCheck.h DipoleMCCheck.cc
\ No newline at end of file
diff --git a/Doc/HerwigDefaults.in.in b/Doc/HerwigDefaults.in.in
--- a/Doc/HerwigDefaults.in.in
+++ b/Doc/HerwigDefaults.in.in
@@ -1,43 +1,46 @@
# @configure_input@
#
# output interfaces for documentation
# the following need to come first
globallibrary Herwig.so
library HwWeakCurrents.so
#
library Hw64Decay.so
library HwAnalysis.so
library HwFormFactors.so
library HwLEPAnalysis.so
library HwTevatronAnalysis.so
library HwMamboDecay.so
library HwMEHadronFast.so
library HwMEHadron.so
library HwMEDIS.so
library HwMELepton.so
library HwMEGammaGamma.so
library HwMEGammaHadron.so
library HwPowhegMEHadron.so
library HwPowhegMELepton.so
library SimpleKTCut.so
library HwMPI.so
library HwMRST.so
library HwReggeonPDF.so
library HwPomeronPDF.so
library HwPomeronFlux.so
library HwPartonicDecay.so
library HwPerturbativeDecay.so
library HwPerturbativeHiggsDecay.so
library HwShower.so
library HwSMDecay.so
library HwTauDecay.so
library HwTMDecay.so
library HwBaryonDecay.so
library HwSOPHTY.so
library HwUA5.so
library HwVMDecay.so
library HwSatPDF.so
library HwIncomingPhotonEvolver.so
@LOAD_BSM@
+@LOAD_DIPOLE@
+@LOAD_DIPOLE_ALPHAS@
+@LOAD_MATCHBOX@
@LOAD_FASTJET@
doxygendump Herwig:: AllInterfaces.h
diff --git a/MatrixElement/Matchbox/Base/Makefile.am b/MatrixElement/Matchbox/Base/Makefile.am
--- a/MatrixElement/Matchbox/Base/Makefile.am
+++ b/MatrixElement/Matchbox/Base/Makefile.am
@@ -1,15 +1,17 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxBase.la
+endif
libHwMatchboxBase_la_SOURCES = \
DipoleRepository.cc \
DipoleRepository.h \
MatchboxAmplitude.cc \
MatchboxAmplitude.h \
MatchboxMEBase.cc \
MatchboxMEBase.h \
MatchboxNLOME.cc \
MatchboxNLOME.h \
MatchboxReweightBase.cc \
MatchboxReweightBase.h \
SubtractedME.cc \
SubtractedME.h
diff --git a/MatrixElement/Matchbox/Builtin/Amplitudes/Makefile.am b/MatrixElement/Matchbox/Builtin/Amplitudes/Makefile.am
--- a/MatrixElement/Matchbox/Builtin/Amplitudes/Makefile.am
+++ b/MatrixElement/Matchbox/Builtin/Amplitudes/Makefile.am
@@ -1,4 +1,6 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxBuiltinAmplitudes.la
+endif
libHwMatchboxBuiltinAmplitudes_la_SOURCES = \
MatchboxCurrents.h MatchboxCurrents.cc
diff --git a/MatrixElement/Matchbox/Builtin/Processes/Makefile.am b/MatrixElement/Matchbox/Builtin/Processes/Makefile.am
--- a/MatrixElement/Matchbox/Builtin/Processes/Makefile.am
+++ b/MatrixElement/Matchbox/Builtin/Processes/Makefile.am
@@ -1,26 +1,28 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxBuiltinProcesses.la
+endif
libHwMatchboxBuiltinProcesses_la_SOURCES = \
MatchboxMElg2lqqbar.cc \
MatchboxMElg2lqqbar.h \
MatchboxMEllbar2qqbar.cc \
MatchboxMEllbar2qqbarg.cc \
MatchboxMEllbar2qqbarg.h \
MatchboxMEllbar2qqbar.h \
MatchboxMEllbarqqbar.cc \
MatchboxMEllbarqqbarg.cc \
MatchboxMEllbarqqbarg.h \
MatchboxMEllbarqqbar.h \
MatchboxMElP2lJet.cc \
MatchboxMElP2lJet.h \
MatchboxMElP2lJetJet.cc \
MatchboxMElP2lJetJet.h \
MatchboxMElq2lqg.cc \
MatchboxMElq2lqg.h \
MatchboxMEPP2llbar.cc \
MatchboxMEPP2llbar.h \
MatchboxMEPP2llbarJet.cc \
MatchboxMEPP2llbarJet.h \
MatchboxMEqg2llbarq.cc \
MatchboxMEqg2llbarq.h \
MatchboxMEqqbar2llbarg.cc \
MatchboxMEqqbar2llbarg.h
diff --git a/MatrixElement/Matchbox/Dipoles/Makefile.am b/MatrixElement/Matchbox/Dipoles/Makefile.am
--- a/MatrixElement/Matchbox/Dipoles/Makefile.am
+++ b/MatrixElement/Matchbox/Dipoles/Makefile.am
@@ -1,39 +1,41 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxDipoles.la
+endif
libHwMatchboxDipoles_la_SOURCES = \
FFggxDipole.cc \
FFggxDipole.h \
FFMggxDipole.cc \
FFMggxDipole.h \
FFMqgxDipole.cc \
FFMqgxDipole.h \
FFMqqxDipole.cc \
FFMqqxDipole.h \
FFqgxDipole.cc \
FFqgxDipole.h \
FFqqxDipole.cc \
FFqqxDipole.h \
FIggxDipole.cc \
FIggxDipole.h \
FIqgxDipole.cc \
FIqgxDipole.h \
FIqqxDipole.cc \
FIqqxDipole.h \
IFggxDipole.cc \
IFggxDipole.h \
IFgqxDipole.cc \
IFgqxDipole.h \
IFqgxDipole.cc \
IFqgxDipole.h \
IFqqxDipole.cc \
IFqqxDipole.h \
IIggxDipole.cc \
IIggxDipole.h \
IIgqxDipole.cc \
IIgqxDipole.h \
IIqgxDipole.cc \
IIqgxDipole.h \
IIqqxDipole.cc \
IIqqxDipole.h \
SubtractionDipole.cc \
SubtractionDipole.h
diff --git a/MatrixElement/Matchbox/InsertionOperators/Makefile.am b/MatrixElement/Matchbox/InsertionOperators/Makefile.am
--- a/MatrixElement/Matchbox/InsertionOperators/Makefile.am
+++ b/MatrixElement/Matchbox/InsertionOperators/Makefile.am
@@ -1,11 +1,13 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxInsertionOperators.la
+endif
libHwMatchboxInsertionOperators_la_SOURCES = \
DipoleIOperator.cc \
DipoleIOperator.h \
DipoleMIOperator.cc \
DipoleMIOperator.h \
DipolePKOperator.cc \
DipolePKOperator.h \
MatchboxInsertionOperator.cc \
MatchboxInsertionOperator.h
diff --git a/MatrixElement/Matchbox/Makefile.am b/MatrixElement/Matchbox/Makefile.am
--- a/MatrixElement/Matchbox/Makefile.am
+++ b/MatrixElement/Matchbox/Makefile.am
@@ -1,19 +1,22 @@
SUBDIRS = \
Base Utility Phasespace \
Dipoles InsertionOperators Powheg \
Builtin
+if WANT_DIPOLE
pkglib_LTLIBRARIES = HwMatchbox.la
+endif
+
HwMatchbox_la_LDFLAGS = -module -version-info 1:0:0
HwMatchbox_la_LIBADD = \
Base/libHwMatchboxBase.la \
Utility/libHwMatchboxUtility.la \
Phasespace/libHwMatchboxPhasespace.la \
Dipoles/libHwMatchboxDipoles.la \
InsertionOperators/libHwMatchboxInsertionOperators.la \
Powheg/libHwMatchboxPowheg.la \
Builtin/Processes/libHwMatchboxBuiltinProcesses.la \
Builtin/Amplitudes/libHwMatchboxBuiltinAmplitudes.la
HwMatchbox_la_SOURCES = \
MatchboxFactory.h MatchboxFactory.cc
diff --git a/MatrixElement/Matchbox/Phasespace/Makefile.am b/MatrixElement/Matchbox/Phasespace/Makefile.am
--- a/MatrixElement/Matchbox/Phasespace/Makefile.am
+++ b/MatrixElement/Matchbox/Phasespace/Makefile.am
@@ -1,38 +1,40 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxPhasespace.la
+endif
libHwMatchboxPhasespace_la_SOURCES = \
FFLightInvertedTildeKinematics.cc \
FFLightInvertedTildeKinematics.h \
FFLightTildeKinematics.cc \
FFLightTildeKinematics.h \
FFMassiveInvertedTildeKinematics.cc \
FFMassiveInvertedTildeKinematics.h \
FFMassiveTildeKinematics.cc \
FFMassiveTildeKinematics.h \
FILightInvertedTildeKinematics.cc \
FILightInvertedTildeKinematics.h \
FILightTildeKinematics.cc \
FILightTildeKinematics.h \
IFLightInvertedTildeKinematics.cc \
IFLightInvertedTildeKinematics.h \
IFLightTildeKinematics.cc \
IFLightTildeKinematics.h \
IILightInvertedTildeKinematics.cc \
IILightInvertedTildeKinematics.h \
IILightTildeKinematics.cc \
IILightTildeKinematics.h \
InvertedTildeKinematics.cc \
InvertedTildeKinematics.h \
MatchboxPhasespace.cc \
MatchboxPhasespace.h \
MatchboxRambo.cc \
MatchboxRambo.h \
PhasespaceHelpers.cc \
PhasespaceHelpers.h \
RandomHelpers.h \
TildeKinematics.cc \
TildeKinematics.h \
TreePhasespace.cc \
TreePhasespace.h \
TreePhasespaceChannels.cc \
TreePhasespaceChannels.h
diff --git a/MatrixElement/Matchbox/Powheg/Makefile.am b/MatrixElement/Matchbox/Powheg/Makefile.am
--- a/MatrixElement/Matchbox/Powheg/Makefile.am
+++ b/MatrixElement/Matchbox/Powheg/Makefile.am
@@ -1,17 +1,19 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxPowheg.la
+endif
libHwMatchboxPowheg_la_SOURCES = \
ME2byDipoles.cc \
ME2byDipoles.h \
PowhegFactory.cc \
PowhegFactory.h \
PowhegInclusiveME.cc \
PowhegInclusiveME.h \
PowhegInclusiveReweight.cc \
PowhegInclusiveReweight.h \
PowhegRealReweight.cc \
PowhegRealReweight.h \
PowhegSplittingGenerator.cc \
PowhegSplittingGenerator.h \
PowhegSplittingKernel.cc \
PowhegSplittingKernel.h
diff --git a/MatrixElement/Matchbox/Utility/Makefile.am b/MatrixElement/Matchbox/Utility/Makefile.am
--- a/MatrixElement/Matchbox/Utility/Makefile.am
+++ b/MatrixElement/Matchbox/Utility/Makefile.am
@@ -1,27 +1,29 @@
+if WANT_DIPOLE
noinst_LTLIBRARIES = libHwMatchboxUtility.la
+endif
libHwMatchboxUtility_la_SOURCES = \
AmplitudeCache.h \
AmplitudeCache.tcc \
ColourBasis.cc \
ColourBasis.h \
DiagramDrawer.cc \
DiagramDrawer.h \
MatchboxMECache.cc \
MatchboxMECache.h \
MatchboxPtScale.h \
MatchboxPtScale.cc \
MatchboxLeptonMassScale.h \
MatchboxLeptonMassScale.cc \
MatchboxScaleChoice.cc \
MatchboxScaleChoice.h \
ProcessData.h \
ProcessData.cc \
SimpleColourBasis.cc \
SimpleColourBasis.h \
SpinCorrelationTensor.h \
SpinorHelicity.h \
SU2Helper.cc \
SU2Helper.h \
Tree2toNGenerator.cc \
Tree2toNGenerator.h
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -1,187 +1,189 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ([2.59])
AC_INIT([Herwig++],[2.6.0],[herwig@projects.hepforge.org],[Herwig++])
AC_CONFIG_SRCDIR([Utilities/HerwigStrategy.cc])
AC_CONFIG_AUX_DIR([Config])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_HEADERS([Config/config.h])
dnl AC_PRESERVE_HELP_ORDER
AC_CANONICAL_HOST
case "${host}" in
*-darwin[[0156]].*)
AC_MSG_ERROR([Herwig++ requires OS X 10.3 or later])
;;
*-darwin7.*)
if test "x$MACOSX_DEPLOYMENT_TARGET" != "x10.3"; then
AC_MSG_ERROR(
[Please add 'MACOSX_DEPLOYMENT_TARGET=10.3' to the configure line.])
fi
;;
esac
dnl === disable debug symbols by default =====
if test "x$CXXFLAGS" = "x"; then
CXXFLAGS=-O3
fi
if test "x$CFLAGS" = "x"; then
CFLAGS=-O3
fi
dnl Looptools manual requires optimization off
if test "x$FCFLAGS" = "x"; then
FCFLAGS=-O0
fi
dnl ==========================================
AC_LANG([C++])
AM_INIT_AUTOMAKE([1.9 gnu dist-bzip2 -Wall])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
dnl Checks for programs.
AC_PROG_CXX([g++])
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_PROG_LN_S
dnl modified search order
AC_PROG_FC([gfortran g95 g77])
dnl xlf95 f95 fort ifort ifc efc pgf95 lf95 ftn xlf90 f90 pgf90 pghpf epcf90 xlf f77 frt pgf77 cf77 fort77 fl32 af77])
AC_LANG_PUSH([Fortran])
AC_MSG_CHECKING([if the Fortran compiler ($FC) works])
AC_COMPILE_IFELSE(
AC_LANG_PROGRAM([],[ print *[,]"Hello"]),
[AC_MSG_RESULT([yes])],
[AC_MSG_RESULT([no])
AC_MSG_ERROR([A Fortran compiler is required to build Herwig++.])
]
)
AC_LANG_POP([Fortran])
LT_PREREQ([2.2])
LT_INIT([disable-static dlopen pic-only])
dnl ####################################
dnl ####################################
dnl for Doc/fixinterfaces.pl
AC_PATH_PROG(PERL, perl)
HERWIG_CHECK_GSL
HERWIG_CHECK_THEPEG
HERWIG_CHECK_BOOST
HERWIG_COMPILERFLAGS
HERWIG_LOOPTOOLS
HERWIG_PDF_PATH
FASTJET_CHECK_FASTJET
HERWIG_VERSIONSTRING
HERWIG_CHECK_ABS_BUG
HERWIG_ENABLE_MODELS
+HERWIG_ENABLE_DIPOLE
+
SHARED_FLAG=-shared
AM_CONDITIONAL(NEED_APPLE_FIXES,
[test "xx${host/darwin/foundit}xx" != "xx${host}xx"])
if test "xx${host/darwin/foundit}xx" != "xx${host}xx"; then
APPLE_DSO_FLAGS=-Wl,-undefined,dynamic_lookup
SHARED_FLAG=-bundle
fi
AC_SUBST([APPLE_DSO_FLAGS])
AC_SUBST([SHARED_FLAG])
AC_CONFIG_FILES([UnderlyingEvent/Makefile
Models/Makefile
Models/StandardModel/Makefile
Models/RSModel/Makefile
Models/General/Makefile
Models/Susy/Makefile
Models/Susy/NMSSM/Makefile
Models/UED/Makefile
Models/LH/Makefile
Models/LHTP/Makefile
Models/Transplanckian/Makefile
Models/Leptoquarks/Makefile
Models/Zprime/Makefile
Models/TTbAsymm/Makefile
Models/ADD/Makefile
Models/Sextet/Makefile
Decay/Makefile
Decay/FormFactors/Makefile
Decay/Tau/Makefile
Decay/Baryon/Makefile
Decay/VectorMeson/Makefile
Decay/Perturbative/Makefile
Decay/ScalarMeson/Makefile
Decay/TensorMeson/Makefile
Decay/WeakCurrents/Makefile
Decay/Partonic/Makefile
Decay/General/Makefile
Decay/Radiation/Makefile
Doc/refman.conf
Doc/refman.h
PDT/Makefile
PDF/Makefile
MatrixElement/Makefile
MatrixElement/General/Makefile
MatrixElement/Lepton/Makefile
MatrixElement/Hadron/Makefile
MatrixElement/DIS/Makefile
MatrixElement/Powheg/Makefile
MatrixElement/Gamma/Makefile
MatrixElement/Matchbox/Makefile
MatrixElement/Matchbox/Base/Makefile
MatrixElement/Matchbox/Utility/Makefile
MatrixElement/Matchbox/Phasespace/Makefile
MatrixElement/Matchbox/Dipoles/Makefile
MatrixElement/Matchbox/InsertionOperators/Makefile
MatrixElement/Matchbox/Powheg/Makefile
MatrixElement/Matchbox/Builtin/Makefile
MatrixElement/Matchbox/Builtin/Processes/Makefile
MatrixElement/Matchbox/Builtin/Amplitudes/Makefile
Exsample2/Makefile
Shower/SplittingFunctions/Makefile
Shower/Default/Makefile
Shower/Base/Makefile
Shower/Makefile
DipoleShower/Makefile
DipoleShower/Base/Makefile
DipoleShower/Kernels/Makefile
DipoleShower/Kinematics/Makefile
DipoleShower/Utility/Makefile
DipoleShower/AlphaS/Makefile
Utilities/Makefile
Hadronization/Makefile
lib/Makefile
include/Makefile
src/Makefile
src/defaults/Makefile
src/herwig-config
Doc/Makefile
Doc/HerwigDefaults.in
Looptools/Makefile
Analysis/Makefile
src/Makefile-UserModules
src/defaults/Analysis.in
Contrib/Makefile
Contrib/make_makefiles.sh
Tests/Makefile
Makefile])
AC_CONFIG_FILES([Doc/fixinterfaces.pl],[chmod +x Doc/fixinterfaces.pl])
HERWIG_OVERVIEW
AC_CONFIG_COMMANDS([summary],[cat config.herwig])
AC_OUTPUT
diff --git a/m4/herwig.m4 b/m4/herwig.m4
--- a/m4/herwig.m4
+++ b/m4/herwig.m4
@@ -1,385 +1,413 @@
# check for gcc bug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34130
AC_DEFUN([HERWIG_CHECK_ABS_BUG],
[
AC_REQUIRE([HERWIG_COMPILERFLAGS])
if test "$GCC" = "yes"; then
AC_MSG_CHECKING([for gcc abs bug])
AC_RUN_IFELSE([
AC_LANG_PROGRAM(
[[ int foo (int i) { return -2 * __builtin_abs(i - 2); } ]],
[[ if ( foo(1) != -2 || foo(3) != -2 ) return 1; ]]
)],
[ AC_MSG_RESULT([not found. Compiler is ok.]) ],
[
AC_MSG_RESULT([found. Builtin abs() is buggy.])
AC_MSG_CHECKING([if -fno-builtin-abs works])
oldcxxflags=$CXXFLAGS
CXXFLAGS="$CXXFLAGS -fno-builtin-abs"
AC_RUN_IFELSE([
AC_LANG_PROGRAM(
[[
#include <cstdlib>
int foo (int i) { return -2 * std::abs(i - 2); }
]],
[[
if (foo(1) != -2 || foo(3) != -2) return 1;
]]
)],
[
AC_MSG_RESULT([yes. Setting -fno-builtin-abs.])
AM_CXXFLAGS="$AM_CXXFLAGS -fno-builtin-abs"
AM_CFLAGS="$AM_CFLAGS -fno-builtin-abs"
],
[
AC_MSG_RESULT([no. Setting -fno-builtin.])
AC_MSG_WARN([
*****************************************************************************
For this version of gcc, -fno-builtin-abs alone did not work to avoid the
gcc abs() bug. Instead, all gcc builtin functions are now disabled.
Update gcc if possible.
*****************************************************************************])
AM_CXXFLAGS="$AM_CXXFLAGS -fno-builtin"
AM_CFLAGS="$AM_CFLAGS -fno-builtin"
]
)
CXXFLAGS=$oldcxxflags
]
)
fi
])
dnl ##### THEPEG #####
AC_DEFUN([HERWIG_CHECK_THEPEG],
[
defaultlocation="${prefix}"
test "x$defaultlocation" = xNONE && defaultlocation="${ac_default_prefix}"
AC_MSG_CHECKING([for libThePEG in])
AC_ARG_WITH(thepeg,
AC_HELP_STRING([--with-thepeg=DIR],[location of ThePEG installation]),
[],
[with_thepeg="${defaultlocation}"])
AC_MSG_RESULT([$with_thepeg])
if test "x$with_thepeg" = "xno"; then
AC_MSG_ERROR([Cannot build Herwig++ without ThePEG. Please set --with-thepeg.])
fi
THEPEGLDFLAGS="-L${with_thepeg}/lib/ThePEG"
if test "${host_cpu}" == "x86_64" -a -e ${with_thepeg}/lib64/ThePEG/libThePEG.so ; then
THEPEGLDFLAGS="-L${with_thepeg}/lib64/ThePEG"
fi
THEPEGPATH="${with_thepeg}"
oldldflags="$LDFLAGS"
oldlibs="$LIBS"
LDFLAGS="$LDFLAGS $THEPEGLDFLAGS"
AC_CHECK_LIB([ThePEG],[debugThePEG],[],
[AC_MSG_ERROR([No ThePEG libraries in $THEPEGLDFLAGS. Please set --with-thepeg.])])
AC_SUBST([THEPEGLIB],[-lThePEG])
AC_SUBST(THEPEGLDFLAGS)
AC_SUBST(THEPEGPATH)
LIBS="$oldlibs"
LDFLAGS="$oldldflags"
AC_MSG_CHECKING([for ThePEG headers in])
AC_ARG_WITH([thepeg-headers],
AC_HELP_STRING([--with-thepeg-headers=DIR],[location of ThePEG include directory]),
[],
[with_thepeg_headers="${with_thepeg}/include"])
AC_MSG_RESULT([$with_thepeg_headers])
if test "x$with_thepeg_headers" = "xno"; then
AC_MSG_ERROR([Cannot build Herwig++ without ThePEG headers. Please set --with-thepeg-headers.])
fi
THEPEGINCLUDE="-I$with_thepeg_headers"
oldcppflags="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $THEPEGINCLUDE"
AC_CHECK_HEADER([ThePEG/Config/ThePEG.h],[],
[AC_MSG_ERROR([No ThePEG headers in $with_thepeg_headers. Please set --with-thepeg-headers.])])
CPPFLAGS="$oldcppflags"
AC_SUBST(THEPEGINCLUDE)
AC_MSG_CHECKING([for HepMCAnalysis.so in ThePEG])
if test -x "$THEPEGPATH/lib/ThePEG/HepMCAnalysis.so" ; then
CREATE_HEPMC="create"
AC_MSG_RESULT([found])
else
CREATE_HEPMC="# create"
AC_MSG_RESULT([not found])
fi
AC_SUBST([CREATE_HEPMC])
])
dnl ##### boost #####
AC_DEFUN([HERWIG_CHECK_BOOST],
[
AC_MSG_CHECKING([for boost headers])
BOOSTINCLUDE=""
AC_ARG_WITH(boost,
AC_HELP_STRING([--with-boost=DIR],[location of boost]),
[],
[with_boost=system])
if test "x$with_boost" = "xno"; then
AC_MSG_ERROR([boost headers are required. Please specify boost installation with --with-boost.])
fi
boostpath=$with_boost
if test "x$with_boost" == "xsystem" ; then
if test -e "/usr/include/boost/array.hpp"; then
boostpath="/usr"
elif test -e "/usr/local/include/boost/array.hpp"; then
boostpath="/usr/local"
elif test -e "/opt/include/boost/array.hpp"; then
boostpath="/opt"
elif test -e "/opt/local/include/boost/array.hpp"; then
boostpath="/opt/local"
else
AC_MSG_RESULT([not found])
AC_MSG_ERROR([boost headers are required. Please install boost.])
fi
fi
if test -e "$boostpath/include/boost/array.hpp"; then
AC_MSG_RESULT([found in $boostpath])
else
AC_MSG_RESULT([not found])
AC_MSG_ERROR([boost headers are required. Please install boost.])
fi
BOOSTINCLUDE="-I$boostpath/include"
AC_SUBST(BOOSTINCLUDE)
])
dnl ##### LOOPTOOLS #####
AC_DEFUN([HERWIG_LOOPTOOLS],
[
AC_REQUIRE([AC_PROG_FC])
AC_REQUIRE([AC_FC_LIBRARY_LDFLAGS])
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([HERWIG_COMPILERFLAGS])
AC_MSG_CHECKING([if Looptools build works])
enable_looptools=yes
if test "x$GCC" = "xyes"; then
case "${host}" in
x86_64-*|*-darwin1*)
AM_FCFLAGS="$AM_FCFLAGS -fdefault-integer-8"
;;
esac
AC_LANG_PUSH([Fortran])
oldFCFLAGS="$FCFLAGS"
FCFLAGS="$AM_FCFLAGS"
AC_COMPILE_IFELSE(
AC_LANG_PROGRAM([],[ print *[,]"Hello"]),
[],
[AC_MSG_RESULT([no])
AC_MSG_ERROR([needs gfortran on 64bit machines])]
)
FCFLAGS="$oldFCFLAGS"
AC_LANG_POP([Fortran])
fi
AC_MSG_RESULT([$enable_looptools])
AC_SUBST([F77],[$FC])
AC_SUBST([FFLAGS],[$FCFLAGS])
AC_SUBST([AM_FFLAGS],[$AM_FCFLAGS])
AC_SUBST([FLIBS],[$FCLIBS])
])
dnl ##### PDF PATH #####
AC_DEFUN([HERWIG_PDF_PATH],
[
AC_MSG_CHECKING([which Herwig++ PDF data to use])
AC_ARG_WITH(pdf,
AC_HELP_STRING([--with-pdf=DIR],[installation path of Herwig++PDF data tarball]),
[],
[with_pdf=${prefix}]
)
HERWIG_PDF_PREFIX=${with_pdf}/share/Herwig++PDF
if test -f "${HERWIG_PDF_PREFIX}/mrst/2008/mrstMCal.dat"; then
AC_MSG_RESULT([$with_pdf])
localPDFneeded=false
else
AC_MSG_RESULT([Using built-in PDF data set. For other data sets, set --with-pdf.])
HERWIG_PDF_PREFIX=PDF
localPDFneeded=true
fi
HERWIG_PDF_DEFAULT=${HERWIG_PDF_PREFIX}/mrst/2008/mrstMCal.dat
HERWIG_PDF_NLO=${HERWIG_PDF_PREFIX}/mrst/2002/mrst2002nlo.dat
HERWIG_PDF_POMERON=${HERWIG_PDF_PREFIX}/diffraction/
AM_CONDITIONAL(WANT_LOCAL_PDF,[test "x$localPDFneeded" = "xtrue"])
AC_SUBST(HERWIG_PDF_DEFAULT)
AC_SUBST(HERWIG_PDF_NLO)
AC_SUBST(HERWIG_PDF_POMERON)
])
dnl ###### GSL ######
AC_DEFUN([HERWIG_CHECK_GSL],
[
AC_MSG_CHECKING([for gsl location])
GSLINCLUDE=""
GSLLIBS=""
AC_ARG_WITH(gsl,
AC_HELP_STRING([--with-gsl=DIR],[location of gsl installation @<:@default=system libs@:>@]),
[],
[with_gsl=system])
if test "x$with_gsl" = "xno"; then
AC_MSG_ERROR([libgsl is required. Please install the GNU scientific library and header files.])
fi
if test "x$with_gsl" = "xsystem"; then
AC_MSG_RESULT([in system libraries])
oldlibs="$LIBS"
AC_CHECK_LIB(m,main)
AC_CHECK_LIB(gslcblas,main)
AC_CHECK_LIB(gsl,main,[],
[
AC_MSG_ERROR([Cannot find libgsl. Please install the GNU scientific library and header files or use --with-gsl=.])
]
)
GSLLIBS="$LIBS"
LIBS=$oldlibs
else
if test "`uname -m`" = "x86_64" -a -e "$with_gsl/lib64/libgsl.a" -a -d "$with_gsl/include/gsl"; then
AC_MSG_RESULT([found in $with_gsl])
GSLLIBS="-L$with_gsl/lib64 -R$with_gsl/lib64 -lgslcblas -lgsl"
GSLINCLUDE="-I$with_gsl/include"
elif test -e "$with_gsl/lib/libgsl.a" -a -d "$with_gsl/include/gsl"; then
AC_MSG_RESULT([found in $with_gsl])
GSLLIBS="-L$with_gsl/lib -R$with_gsl/lib -lgslcblas -lgsl"
GSLINCLUDE="-I$with_gsl/include"
else
AC_MSG_RESULT([not found])
AC_MSG_ERROR([Can't find $with_gsl/lib/libgsl.a or the headers in $with_gsl/include])
fi
fi
AC_SUBST(GSLINCLUDE)
AC_SUBST(GSLLIBS)
])
AC_DEFUN([HERWIG_VERSIONSTRING],
[
if test -d $srcdir/.svn; then
AC_CHECK_PROG(have_svnversion,[svnversion],[yes],[no])
fi
AM_CONDITIONAL(USE_SVNVERSION,[test "x$have_svnversion" = "xyes"])
])
dnl ##### COMPILERFLAGS #####
AC_DEFUN([HERWIG_COMPILERFLAGS],
[
AC_REQUIRE([HERWIG_CHECK_THEPEG])
AM_CPPFLAGS="-I\$(top_builddir)/include $THEPEGINCLUDE \$(GSLINCLUDE) \$(BOOSTINCLUDE)"
AC_MSG_CHECKING([for debugging mode])
AC_ARG_ENABLE(debug,
AC_HELP_STRING([--enable-debug],[debug mode, use --enable-debug=slow for additional options that slow down the run.]),
[],
[enable_debug=no]
)
AC_MSG_RESULT([$enable_debug])
if test "x$enable_debug" = "xno"; then
AM_CPPFLAGS="$AM_CPPFLAGS -DNDEBUG"
else
debugflags="-g"
fi
dnl -Wfloat-equal -fvisibility-inlines-hidden -Wctor-dtor-privacy -Weffc++
if test -n "$GCC"; then
warnflags="-ansi -pedantic -Wall -W"
if test "x$enable_debug" = "xslow"; then
debugflags="$debugflags -fno-inline"
AM_CPPFLAGS="$AM_CPPFLAGS -D_GLIBCXX_DEBUG"
fi
fi
dnl do an actual capability check on ld instead of this workaround
case "${host}" in
*-darwin*)
;;
*)
AM_LDFLAGS="-Wl,--enable-new-dtags"
;;
esac
AC_SUBST(AM_CPPFLAGS)
AC_SUBST(AM_CFLAGS, ["$warnflags $debugflags"])
AC_SUBST(AM_CXXFLAGS,["$warnflags $debugflags"])
AC_SUBST(AM_FCFLAGS, ["$debugflags"])
AC_SUBST(AM_LDFLAGS)
])
AC_DEFUN([HERWIG_ENABLE_MODELS],
[
AC_MSG_CHECKING([if BSM models should be built])
AC_ARG_ENABLE(models,
AC_HELP_STRING([--disable-models],[Turn off compilation of BSM models.]),
[],
[enable_models=yes]
)
AC_MSG_RESULT([$enable_models])
LOAD_BSM=""
if test "$enable_models" = "yes"; then
LOAD_BSM="read BSMlibs.in"
fi
AC_SUBST(LOAD_BSM)
AM_CONDITIONAL(WANT_BSM,[test "$enable_models" = "yes"])
])
+
+AC_DEFUN([HERWIG_ENABLE_DIPOLE],
+[
+AC_MSG_CHECKING([if dipole shower should be built])
+
+AC_ARG_ENABLE(dipole,
+ AC_HELP_STRING([--disable-dipole],[Turn off compilation of dipole shower.]),
+ [],
+ [enable_dipole=yes]
+ )
+AC_MSG_RESULT([$enable_dipole])
+
+LOAD_DIPOLE=""
+LOAD_DIPOLE_ALPHAS=""
+LOAD_MATCHBOX=""
+if test "$enable_dipole" = "yes"; then
+LOAD_DIPOLE="library HwDipoleShower.so"
+LOAD_DIPOLE_ALPHAS="library HwDipoleShowerAlphaS.so"
+LOAD_MATCHBOX="library HwMatchbox.so"
+fi
+AC_SUBST(LOAD_DIPOLE)
+AC_SUBST(LOAD_DIPOLE_ALPHAS)
+AC_SUBST(LOAD_MATCHBOX)
+
+AM_CONDITIONAL(WANT_DIPOLE,[test "$enable_dipole" = "yes"])
+])
+
+
AC_DEFUN([HERWIG_OVERVIEW],
[
FCSTRING=`$FC --version | head -1`
CXXSTRING=`$CXX --version | head -1`
CCSTRING=`$CC --version | head -1`
cat << _HW_EOF_ > config.herwig
*****************************************************
*** $PACKAGE_STRING configuration summary
*** Please include this information in bug reports!
***--------------------------------------------------
*** Prefix: $prefix
***
*** BSM models: $enable_models
+*** Dipole shower: $enable_dipole
+***
*** Herwig debug mode: $enable_debug
***
-*** GSL: $with_gsl
-***
*** ThePEG: $with_thepeg
*** ThePEG headers: $with_thepeg_headers
***
+*** GSL: $with_gsl
*** boost: $with_boost
-***
*** Fastjet: ${fjconfig}
***
*** Host: $host
+*** CC: $CCSTRING
*** CXX: $CXXSTRING
*** FC: $FCSTRING
-*** CC: $CCSTRING
*****************************************************
_HW_EOF_
])
diff --git a/src/Makefile.am b/src/Makefile.am
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,175 +1,181 @@
SUBDIRS = defaults
AUTOMAKE_OPTIONS = -Wno-portability
defaultsdir = ${pkgdatadir}/defaults
bin_PROGRAMS = Herwig++
Herwig___SOURCES = Herwig++.cc herwigopts.c herwigopts.h
BUILT_SOURCES = herwigopts.c herwigopts.h
Herwig___LDFLAGS = $(AM_LDFLAGS) -export-dynamic $(THEPEGLDFLAGS)
Herwig___LDADD = $(THEPEGLIB) -ldl
Herwig___CPPFLAGS = $(AM_CPPFLAGS) \
-DHERWIG_PKGDATADIR="\"$(pkgdatadir)\"" \
-DHERWIG_PKGLIBDIR="\"$(pkglibdir)\"" \
-DTHEPEG_PKGLIBDIR="\"$(THEPEGPATH)/lib/ThePEG\""
bin_SCRIPTS = herwig-config
HELPERFILES = CMSSM40.1.1.slha RPV3.1.slha NMSSM.spc \
ADD.model \
Leptoquark.model \
MSSM.model \
MUED.model \
NMSSM.model \
RS.model \
Sextet.model \
TTBA.model \
Zprime.model \
LH.model \
LHTP.model
INPUTFILES = \
DIS.in \
DIS-Matchbox.in \
GammaGamma.in \
ILC.in \
ILC-MSSM.in \
ILC-MUED.in \
ILC-RS.in \
LEP.in \
LEP-Matchbox.in \
LHC-ADD.in \
LHC-diffractive.in \
LHC-GammaGamma.in \
LHC.in \
LHC-Matchbox.in \
LHC-LQ.in \
LHC-MSSM.in \
LHC-MUED.in \
LHC-NMSSM.in \
LHC-Powheg.in \
LHC-RPV.in \
LHC-RS.in \
LHC-Sextet.in \
LHC-TRP.in \
LHC-TTBA.in \
LHC-MB.in \
LHC-ZP.in \
TVT.in \
TVT-Matchbox.in \
TVT-Powheg.in \
TVT-TTBA.in \
LHC-LH.in \
LHC-LHTP.in
dist_pkgdata_DATA = $(INPUTFILES) $(HELPERFILES)
pkgdata_DATA = Makefile-UserModules
CLEANFILES = HerwigDefaults.rpo \
*.run *.log *.out *.tex \
multi.test *.output probs.test chisq.value \
LHC-RS-BR.spc LHC-MSSM-BR.spc LHC-RPV-BR.spc
## checking targets ##
HerwigDefaults.rpo: Herwig++ $(srcdir)/defaults/*.in defaults/PDF.in defaults/Analysis.in $(top_builddir)/lib/*.so
./Herwig++ init -L$(top_builddir)/lib defaults/HerwigDefaults.in -D
check_BSM_Full=
check_BSM=
if WANT_BSM
check_BSM += check-LHC-RPV check-LHC-RS
check_BSM_Full += \
check-LHC-RPV check-LHC-MSSM check-ILC-MSSM \
check-LHC-NMSSM \
check-LHC-MUED check-ILC-MUED \
check-LHC-RS check-ILC-RS check-LHC-ADD \
check-LHC-LH check-LHC-LHTP \
check-LHC-TRP \
check-LHC-TTBA check-TVT-TTBA \
check-LHC-ZP \
check-LHC-LQ \
check-LHC-Sextet
endif
check-local: check-LEP check-LHC $(check_BSM) check-DIS check-ILC check-GammaGamma check-LHC-Powheg
check-Powheg: check-LHC-Powheg check-TVT-Powheg
check-BSM: $(check_BSM_Full)
-check-Matchbox: check-LEP-Matchbox check-DIS-Matchbox check-LHC-Matchbox check-TVT-Matchbox
+check_Matchbox=
+if WANT_DIPOLE
+check_Matchbox += \
+check-LEP-Matchbox check-DIS-Matchbox check-LHC-Matchbox check-TVT-Matchbox
+endif
+
+check-Matchbox: $(check_Matchbox)
check-extra: check-LHC-diffractive check-LHC-GammaGamma check-LHC-MB check-TVT
check-all: check-local check-Powheg check-BSM check-Matchbox check-extra
link-helper-files:
@for i in $(HELPERFILES); do \
if test -f $(srcdir)/$$i -a ! -e $$i; then \
$(LN_S) -f $(srcdir)/$$i; fi; done
CHECKCOMMAND = ./Herwig++ run $(notdir $(subst .in,.run,$<)) -N500 -d1 -D
check-%: $(srcdir)/%.in HerwigDefaults.rpo link-helper-files
./Herwig++ read $< -D
@echo $(CHECKCOMMAND)
@$(CHECKCOMMAND) && echo -e "# $@ OK #\n" \
|| echo -e "###### $@ BAD ######\n"
## valgrind targets ##
VALGRIND=valgrind --leak-check=full --num-callers=25 --freelist-vol=100000000 --leak-resolution=med --trace-children=yes
valgrind: valgrind-init valgrind-read valgrind-run
valgrind-init:
$(VALGRIND) ./Herwig++ init -d1 -D -L$(top_builddir)/lib defaults/HerwigDefaults.in \
&> /tmp/valgrind-init.log
valgrind-read:
$(VALGRIND) ./Herwig++ read -d1 -D LHC.in &> /tmp/valgrind-read.log
valgrind-run:
$(VALGRIND) ./Herwig++ run -d1 -D -N5 LHC.run &> /tmp/valgrind-run.log
SETUPTHEPEG=$(THEPEGPATH)/bin/setupThePEG
THEPEGREPO=$(THEPEGPATH)/lib/ThePEG/ThePEGDefaults.rpo
install-data-hook:
@echo Creating repository
@./Herwig++ init -L$(DESTDIR)$(pkglibdir) -i$(DESTDIR)$(pkgdatadir) $(DESTDIR)$(defaultsdir)/HerwigDefaults.in --repo=$(DESTDIR)$(pkgdatadir)/HerwigDefaults.rpo
uninstall-hook:
rm -f $(DESTDIR)$(pkgdatadir)/HerwigDefaults.rpo
register: register-with-thepeg-repo
register-with-thepeg-repo:
@if test -x "$(SETUPTHEPEG)" -a -w "$(THEPEGREPO)"; \
then echo Registering with ThePEG; \
"$(SETUPTHEPEG)" --init \
$(DESTDIR)$(defaultsdir)/HerwigDefaults.in \
-r "$(THEPEGREPO)" -o "$(THEPEGREPO)" \
-l$(DESTDIR)$(pkglibdir) ; \
fi
unregister : unregister-from-thepeg-repo
unregister-from-thepeg-repo:
@if test -x "$(SETUPTHEPEG)" -a -w "$(THEPEGREPO)"; \
then echo Unregistering with ThePEG; \
"$(SETUPTHEPEG)" --init defaults/HerwigCleanup.in \
-r "$(THEPEGREPO)" -o "$(THEPEGREPO)" \
-l$(DESTDIR)$(pkglibdir) ; \
fi
EXTRA_DIST = herwigopts.ggo
GENGETOPT = gengetopt
%opts.h %opts.c : %opts.ggo
$(GENGETOPT) < $<

File Metadata

Mime Type
text/x-diff
Expires
Mon, Jan 20, 11:35 PM (1 d, 6 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4232516
Default Alt Text
(33 KB)

Event Timeline