Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
792080e
Moved compilation of CUDA to seperate cuda target
Jooorgen Aug 21, 2023
c945deb
Fixed indentation in the makefile
Jooorgen Aug 21, 2023
36a5fa7
Removed all unneccessary NVCC ifneq and redid indentation
Jooorgen Aug 21, 2023
0b95fb7
Convert all spaces to tabs in cudacpp.mk file
Jooorgen Aug 21, 2023
360d908
Revert "Convert all spaces to tabs in cudacpp.mk file"
Jooorgen Aug 21, 2023
575840c
Changed line to be interpreted in bash into spaces
Jooorgen Aug 21, 2023
19911fb
Changed indentation again
Jooorgen Aug 21, 2023
f4366a9
Fixed indentation in start of CUDA compilation
Jooorgen Aug 21, 2023
b819498
Fixed indentation in fcheck compilation
Jooorgen Aug 21, 2023
9082da0
Changed indentation of ifndef in CUDA compilation
Jooorgen Aug 21, 2023
bfd4301
Changed indentation back to tabs again for some lines
Jooorgen Aug 21, 2023
529318c
Changed indentation again to fix endif error
Jooorgen Aug 21, 2023
fc549ca
Revert back cudacpp.mk to original state
Jooorgen Aug 21, 2023
bd0df54
Added cuda target
Jooorgen Aug 21, 2023
df98ffa
Added usage target if user doesent speficy target when invoking makef…
Jooorgen Aug 21, 2023
f822e93
Added .DEFAULT_GOAL so usage target will be run correctly
Jooorgen Aug 21, 2023
63bb3b5
Added targets to cpp build
Jooorgen Aug 21, 2023
b5758b0
Added correct cpp targets
Jooorgen Aug 21, 2023
eb3a706
Added $(MAKECMDGOALS) ifeq to CUDA compiler configuration
Jooorgen Aug 22, 2023
b23ada0
Removed automatic configuration of AVX level
Jooorgen Aug 25, 2023
683e641
Fixed correct AVX level depending on C++ compiler
Jooorgen Aug 25, 2023
fca0b73
Reworked configuration of setting AVX level
Jooorgen Aug 25, 2023
489c453
Fixed missing endif and removed AVX configuration in cuda compilation
Jooorgen Aug 25, 2023
01b7da3
Fixed AVX not being properly set
Jooorgen Aug 25, 2023
e734f49
Fixed cuda compilation in cudacpp_src.mk and fixed trailing whitespac…
Jooorgen Aug 25, 2023
35d6aee
Added else case in AVX configuration
Jooorgen Aug 28, 2023
b611e9e
Port changes to BUILDDIRTAG to cudacpp_src.mk
Jooorgen Aug 28, 2023
fbdb45a
Added build specific clean targets in cudacpp.mk and cudacpp_src.mk
Jooorgen Aug 28, 2023
b86bf3c
Fixed cleanall with new clean targets
Jooorgen Aug 28, 2023
8b22e9a
Fixed indentations in the recipie of the targets
Jooorgen Aug 29, 2023
f81f91f
Redid the detection of multiple BUILDDIRS when user runs clean
Jooorgen Aug 29, 2023
ea4c807
Fixed indentation mistake
Jooorgen Aug 29, 2023
b39d75b
Fixed intendation again in cudacpp_src.mk cleanall
Jooorgen Aug 29, 2023
578e5b4
First iteration of changes to makefile.mk
Jooorgen Sep 4, 2023
f755f8a
Added more clean targets
Jooorgen Sep 4, 2023
38beccc
Removed warning using MAKECMDGOAL
Jooorgen Sep 5, 2023
e7e85e9
Removed recursiveness in target
Jooorgen Sep 5, 2023
97c38e2
Fixed cleanall bug
Jooorgen Sep 5, 2023
f2eb850
Fixed error with clean not detecting the build directories
Jooorgen Sep 6, 2023
b41069f
Fixed indentation in clean target
Jooorgen Sep 6, 2023
f2c9c45
Fixed edgecase where target is madevent_* and the actual target varia…
Jooorgen Sep 6, 2023
db55dcc
Fixed cudacpp_src.mk indentation in target
Jooorgen Sep 6, 2023
df70200
Fixed typo in makefile
Jooorgen Sep 12, 2023
c890fc0
make clean and make cleanavx/cuda now correctly cleans
Jooorgen Sep 12, 2023
dc77630
Fixed cleandir in cudacpp.mk calling cleannone in cudacpp_src.mk
Jooorgen Sep 13, 2023
b680cae
Added removing the lockfile in make clean
Jooorgen Sep 13, 2023
8583d62
Fixed syntax in make clean logic, now corectly cleans lockfile
Jooorgen Sep 14, 2023
3826d16
Added ifeq if no directories are found in make clean
Jooorgen Sep 14, 2023
ccc49ed
Fixed extraction of avx level in make clean
Jooorgen Sep 14, 2023
c9af7a8
Fixed lib directory not getting properly cleaned
Jooorgen Sep 14, 2023
dbbb795
Reworked targets to allow for compilation using ALL target
Jooorgen Sep 19, 2023
bfc7739
Absorbed the initial target calling cudacpp.mk into each seperate avx…
Jooorgen Sep 21, 2023
4d4866b
Fixed madevent_avx/cuda_link targets
Jooorgen Sep 21, 2023
3fa5b76
ALL target now calls the makefile itself for compiling avx/cuda targets
Jooorgen Sep 21, 2023
83bacca
Last revision of targets
Jooorgen Sep 21, 2023
f1a2704
Did some refactoring of the makefile to remove recurring lines
Jooorgen Sep 22, 2023
6cc72f7
Code cleanup
Jooorgen Sep 22, 2023
cd39261
Reverted change to Source makefile, no patch needed now
Jooorgen Sep 25, 2023
7d15b06
Fixed lockfiles not getting cleaned properly
Jooorgen Sep 25, 2023
752d336
Fixed indentation
Jooorgen Sep 25, 2023
c121b0d
Fixed indentation in cudacpp_src.mk
Jooorgen Sep 25, 2023
7511431
gCheck and check are now to seperate targets for use in CI
Jooorgen Sep 25, 2023
328c921
NVCC now gets properly configured when doing various tests
Jooorgen Sep 26, 2023
df04597
Removed the creation of lockfiles
Jooorgen Sep 27, 2023
51828ef
Added cpp target for testing
Jooorgen Sep 27, 2023
aace762
[CODEGEN] Ported changes in gg_tt.mad to codegen
Jooorgen Sep 27, 2023
66d0191
[CODEGEN] Added patch to makefile to patch.common in codegen
Jooorgen Sep 28, 2023
892f21c
Readded cleaning of build directories in cleanall
Jooorgen Sep 28, 2023
b0f52b5
[CODEGEN] Fixed indentation in cudacpp.mk in codegen
Jooorgen Sep 28, 2023
fd3f74d
Fixed indentation in cudacpp.mk in gg_tt.mad
Jooorgen Sep 28, 2023
f48ab5a
[CODEGEN] Removed prior patch to makefile in patch.common
Jooorgen Sep 28, 2023
92bd1e7
Revert "[CODEGEN] Removed prior patch to makefile in patch.common"
Jooorgen Sep 28, 2023
dd01050
[CODEGEN] Fixed patch not applying because string does not exist in f…
Jooorgen Sep 28, 2023
e75ca38
[CODEGEN] Fixed mismatch in patch.common
Jooorgen Sep 28, 2023
191e112
Sets correct cppavx dependency for compiling madevent_cpp
Jooorgen Sep 28, 2023
67dd776
Fixed unneccessary & in CUDACPP_BUILDDIR assignment
Jooorgen Sep 28, 2023
9e974c0
[CODEGEN] Add the dependency on cppavx target when compiling madevent…
Jooorgen Sep 28, 2023
564682a
[CODEGEN] Now sets correct target for linking with cppavx target in r…
Jooorgen Sep 28, 2023
6382b5a
[CODEGEN] Fixed patch.commen to have correct intervals in git diff
Jooorgen Sep 28, 2023
6092d6a
[CODEGEN] Correctly assigns CPPTARGET in compiling madevent_cpp
Jooorgen Sep 28, 2023
bedb79c
[CODEGEN] Correctly sets dependencies for madevent_cpp
Jooorgen Sep 28, 2023
cf1b21b
[CODEGEN] Correctly sets target if madevent is in $MAKECMDGOALS
Jooorgen Sep 28, 2023
75c5be6
[CODEGEN] Regenerated all .sa/.mad processes
Jooorgen Sep 29, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -82,11 +82,11 @@ index 348c283be..74db44d84 100644
+###$(info CUDACPP_MAKEENV=$(CUDACPP_MAKEENV))
+###$(info $(foreach v,$(CUDACPP_MAKEENV),$(v)="$($(v))"))
+CUDACPP_BUILDDIR:=$(shell $(MAKE) $(foreach v,$(CUDACPP_MAKEENV),$(v)="$($(v))") -f $(CUDACPP_MAKEFILE) -pn 2>/dev/null | awk '/Building/{print $$3}' | sed s/BUILDDIR=//)
+#ifeq ($(CUDACPP_BUILDDIR),)
+#$(error CUDACPP_BUILDDIR='$(CUDACPP_BUILDDIR)' should not be empty!)
+#else
+ifeq ($(CUDACPP_BUILDDIR),)
+$(error CUDACPP_BUILDDIR='$(CUDACPP_BUILDDIR)' should not be empty!)
+else
+$(info CUDACPP_BUILDDIR='$(CUDACPP_BUILDDIR)')
+#endif
+endif
+CUDACPP_COMMONLIB=mg5amc_common
+CUDACPP_CXXLIB=mg5amc_$(processid_short)_cpp
+CUDACPP_CULIB=mg5amc_$(processid_short)_cuda
Expand Down Expand Up @@ -340,3 +340,248 @@ index a056d3861..b70b548e5 100755
alljobs = misc.glob('ajob*', Pdir)

#remove associated results.dat (ensure to not mix with all data)
diff --git b/epochX/cudacpp/gg_tt.mad/SubProcesses/makefile a/epochX/cudacpp/gg_tt.mad/SubProcesses/makefile
index 74db44d84..7ae599f03 100644
--- b/epochX/cudacpp/gg_tt.mad/SubProcesses/makefile
+++ a/epochX/cudacpp/gg_tt.mad/SubProcesses/makefile
@@ -9,6 +9,33 @@ FFLAGS+= -cpp
# Compile counters with -O3 as in the cudacpp makefile (avoid being "unfair" to Fortran #740)
CXXFLAGS = -O3 -Wall -Wshadow -Wextra

+# Sets correct target based on MAKECMDGOALS
+ifeq ($(MAKECMDGOALS),)
+ TARGET := undefined
+else
+ ifeq ($(shell grep -q madevent_ <<< $(MAKECMDGOALS)a),)
+ TARGET := $(word 2,($(subst _, ,$(MAKECMDGOALS))))
+ else
+ TARGET := $(MAKECMDGOALS)
+ endif
+endif
+
+# Sets correct cppavx target as dependency when compiling Fortran
+ifeq ($(shell grep -q cpp <<< $(MAKECMDGOALS)a),)
+ ifeq ($(TARGET),cpp)
+ CPPTARGET := cppavx2
+ else
+ CPPTARGET := $(TARGET)
+ endif
+endif
+
+# Default goal
+.DEFAULT_GOAL := usage
+
+# Target if user does not specify target
+usage:
+ $(error Unknown target='$(TARGET)': only 'cppnone', 'cppsse4', 'cppavx2', 'cpp512y', 'cpp512z' and 'cuda' are supported!)
+
# Enable ccache if USECCACHE=1
ifeq ($(USECCACHE)$(shell echo $(CXX) | grep ccache),1)
override CXX:=ccache $(CXX)
@@ -48,10 +75,10 @@ CUDACPP_MAKEFILE=cudacpp.mk
# NB2 Use '|&' in CUDACPP_BUILDDIR to avoid confusing errors about googletest #507
# NB3 Do not add a comment inlined "CUDACPP_BUILDDIR=$(shell ...) # comment" as otherwise a trailing space is included...
# NB4 The variables relevant to the cudacpp Makefile must be explicitly passed to $(shell...)
-CUDACPP_MAKEENV:=$(shell echo '$(.VARIABLES)' | tr " " "\n" | egrep "(USEBUILDDIR|AVX|FPTYPE|HELINL|HRDCOD)")
+CUDACPP_MAKEENV:=$(shell echo '$(.VARIABLES)' | tr " " "\n" | egrep "(USEBUILDDIR|FPTYPE|HELINL|HRDCOD)")
###$(info CUDACPP_MAKEENV=$(CUDACPP_MAKEENV))
###$(info $(foreach v,$(CUDACPP_MAKEENV),$(v)="$($(v))"))
-CUDACPP_BUILDDIR:=$(shell $(MAKE) $(foreach v,$(CUDACPP_MAKEENV),$(v)="$($(v))") -f $(CUDACPP_MAKEFILE) -pn 2>/dev/null | awk '/Building/{print $$3}' | sed s/BUILDDIR=//)
+CUDACPP_BUILDDIR:=$(shell $(MAKE) $(foreach v,$(CUDACPP_MAKEENV),$(v)="$($(v))") -f $(CUDACPP_MAKEFILE) -pn $(TARGET) 2>/dev/null | awk '/Building/{print $$3}' | sed s/BUILDDIR=//)
ifeq ($(CUDACPP_BUILDDIR),)
$(error CUDACPP_BUILDDIR='$(CUDACPP_BUILDDIR)' should not be empty!)
else
@@ -115,10 +142,6 @@ $(LIBS): .libs
cd ../../Source; make
touch $@

-$(CUDACPP_BUILDDIR)/.cudacpplibs:
- $(MAKE) -f $(CUDACPP_MAKEFILE)
- touch $@
-
# On Linux, set rpath to LIBDIR to make it unnecessary to use LD_LIBRARY_PATH
# Use relative paths with respect to the executables ($ORIGIN on Linux)
# On Darwin, building libraries with absolute paths in LIBDIR makes this unnecessary
@@ -130,26 +153,47 @@ else
override LIBFLAGSRPATH = -Wl,-rpath,'$$ORIGIN/$(LIBDIR)'
endif

-.PHONY: madevent_fortran_link madevent_cuda_link madevent_cpp_link
+.PHONY: madevent_fortran_link madevent_cuda_link madevent_cpp_link madevent_cppnone_link madevent_cppsse4_link madevent_cppavx2_link madevent_cpp512y_link madevent_cpp512z_link

madevent_fortran_link: $(PROG)_fortran
rm -f $(PROG)
ln -s $(PROG)_fortran $(PROG)

+# Only used for testing, should be removed in the future
madevent_cpp_link: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
rm -f $(PROG)
ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROG)

+madevent_cppnone_link: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
+ rm -f $(PROG)
+ ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROG)
+
+madevent_cppsse4_link: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
+ rm -f $(PROG)
+ ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROG)
+
+madevent_cppavx2_link: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
+ rm -f $(PROG)
+ ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROG)
+
+madevent_cpp512y_link: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
+ rm -f $(PROG)
+ ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROG)
+
+madevent_cpp512z_link: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
+ rm -f $(PROG)
+ ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROG)
+
madevent_cuda_link: $(CUDACPP_BUILDDIR)/$(PROG)_cuda
rm -f $(PROG)
ln -s $(CUDACPP_BUILDDIR)/$(PROG)_cuda $(PROG)

# Building $(PROG)_cpp also builds $(PROG)_cuda if $(CUDACPP_CULIB) exists (improved patch for cpp-only builds #503)
-$(CUDACPP_BUILDDIR)/$(PROG)_cpp: $(PROCESS) $(DSIG_cudacpp) auto_dsig.o $(LIBS) $(MATRIX) counters.o ompnumthreads.o $(CUDACPP_BUILDDIR)/.cudacpplibs
+$(CUDACPP_BUILDDIR)/$(PROG)_cpp: $(PROCESS) $(DSIG_cudacpp) auto_dsig.o $(LIBS) $(MATRIX) counters.o ompnumthreads.o $(CPPTARGET)
$(FC) -o $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(PROCESS) $(DSIG_cudacpp) auto_dsig.o $(MATRIX) $(LINKLIBS) $(BIASDEPENDENCIES) $(OMPFLAGS) counters.o ompnumthreads.o -L$(LIBDIR)/$(CUDACPP_BUILDDIR) -l$(CUDACPP_COMMONLIB) -l$(CUDACPP_CXXLIB) $(LIBFLAGSRPATH) $(LDFLAGS)
- if [ -f $(LIBDIR)/$(CUDACPP_BUILDDIR)/lib$(CUDACPP_CULIB).* ]; then $(FC) -o $(CUDACPP_BUILDDIR)/$(PROG)_cuda $(PROCESS) $(DSIG_cudacpp) auto_dsig.o $(MATRIX) $(LINKLIBS) $(BIASDEPENDENCIES) $(OMPFLAGS) counters.o ompnumthreads.o -L$(LIBDIR)/$(CUDACPP_BUILDDIR) -l$(CUDACPP_COMMONLIB) -l$(CUDACPP_CULIB) $(LIBFLAGSRPATH) $(LDFLAGS); fi

-$(CUDACPP_BUILDDIR)/$(PROG)_cuda: $(CUDACPP_BUILDDIR)/$(PROG)_cpp
+$(CUDACPP_BUILDDIR)/$(PROG)_cuda: $(PROCESS) $(DSIG_cudacpp) auto_dsig.o $(LIBS) $(MATRIX) counters.o ompnumthreads.o cuda
+ $(FC) -o $(CUDACPP_BUILDDIR)/$(PROG)_cuda $(PROCESS) $(DSIG_cudacpp) auto_dsig.o $(MATRIX) $(LINKLIBS) $(BIASDEPENDENCIES) $(OMPFLAGS) counters.o ompnumthreads.o -L$(LIBDIR)/$(CUDACPP_BUILDDIR) -l$(CUDACPP_COMMONLIB) -l$(CUDACPP_CULIB) $(LIBFLAGSRPATH) $(LDFLAGS)

counters.o: counters.cc timer.h
$(CXX) $(CXXFLAGS) -c $< -o $@
@@ -215,49 +259,105 @@ genps.o: .libs

UNAME_P := $(shell uname -p)
ifeq ($(UNAME_P),ppc64le)
-avxall: avxnone avxsse4
+cppall:
+ $(MAKE) USEBUILDDIR=1 cppnone
+ $(MAKE) USEBUILDDIR=1 cppsse4
else ifeq ($(UNAME_P),arm)
-avxall: avxnone avxsse4
+cppall:
+ $(MAKE) USEBUILDDIR=1 cppnone
+ $(MAKE) USEBUILDDIR=1 cppsse4
else
-avxall: avxnone avxsse4 avxavx2 avx512y avx512z
+cppall:
+ $(MAKE) USEBUILDDIR=1 cppnone
+ $(MAKE) USEBUILDDIR=1 cppsse4
+ $(MAKE) USEBUILDDIR=1 cppavx2
+ $(MAKE) USEBUILDDIR=1 cpp512y
+ $(MAKE) USEBUILDDIR=1 cpp512z
endif

-avxnone: $(PROG)_fortran $(DSIG_cudacpp)
- @echo
- $(MAKE) USEBUILDDIR=1 AVX=none
+ALL:
+ $(MAKE) USEBUILDDIR=1 cppnone
+ $(MAKE) USEBUILDDIR=1 cppsse4
+ $(MAKE) USEBUILDDIR=1 cppavx2
+ $(MAKE) USEBUILDDIR=1 cpp512y
+ $(MAKE) USEBUILDDIR=1 cpp512z
+ $(MAKE) USEBUILDDIR=1 cuda

-avxsse4: $(PROG)_fortran $(DSIG_cudacpp)
- @echo
- $(MAKE) USEBUILDDIR=1 AVX=sse4
+cppnone:
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cppnone

-avxavx2: $(PROG)_fortran $(DSIG_cudacpp)
- @echo
- $(MAKE) USEBUILDDIR=1 AVX=avx2
+cppsse4:
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cppsse4

-avx512y: $(PROG)_fortran $(DSIG_cudacpp)
- @echo
- $(MAKE) USEBUILDDIR=1 AVX=512y
+cppavx2:
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cppavx2

-avx512z: $(PROG)_fortran $(DSIG_cudacpp)
- @echo
- $(MAKE) USEBUILDDIR=1 AVX=512z
+cpp512y:
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cpp512y

-###endif
+cpp512z:
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cpp512z
+
+cuda:
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cuda

# Clean (NB: 'make clean' in Source calls 'make clean' in all P*)

-clean: # Clean builds: fortran in this Pn; cudacpp executables for one AVX in this Pn
- $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel $(CUDACPP_BUILDDIR)/$(PROG)_cpp $(CUDACPP_BUILDDIR)/$(PROG)_cuda
+BUILD_DIRS := $(wildcard build.*)
+BUILD_TARGET_DIR := $(shell echo $(BUILD_DIRS) | awk -F '[._]' '{print $$2}')
+NUM_BUILD_DIRS := $(words $(BUILD_DIRS))
+
+clean:
+ifeq ($(USEBUILDDIR),1)
+ifeq ($(NUM_BUILD_DIRS),1)
+ $(info USEBUILDDIR=1, only cleaning build dir.)
+ $(RM) -r $(BUILD_DIRS)
+ $(MAKE) -f $(CUDACPP_MAKEFILE) clean$(BUILD_TARGET_DIR)
+else ifeq ($(NUM_BUILD_DIRS),0)
+ $(error USEBUILDDIR=1, but no build directories are found.)
+else
+ $(error Multiple BUILDDIR's found! Use 'cleannone', 'cleansse4', 'cleanavx2', 'clean512y','clean512z', 'cleancuda' or 'cleanall'.)
+endif
+else
+ $(info USEBUILDDIR=0 only cleaning build with no dir.)
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel ./$(PROG)_*
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cleandir
+ $(RM) $(CUDACPP_BUILDDIR)/.*libs
+endif
+
+cleannone: # Clean builds: fortran in this Pn; cpp executables for one AVX in this Pn
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel build.none_*/$(PROG)_cpp
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cleannone
+
+cleansse4: # Clean build: fortran in this Pn; cpp executables for cppsse4 in this Pn
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel build.sse4_*/$(PROG)_cpp
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cleansse4
+
+cleanavx2: # Clean build: fortran in this Pn; cpp executables for cppavx2 in this Pn
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel build.avx2_*/$(PROG)_cpp
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cleanavx2
+
+clean512y: # Clean build: fortran in this Pn; cpp executables for cpp512y in this Pn
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel build.512y_*/$(PROG)_cpp
+ $(MAKE) -f $(CUDACPP_MAKEFILE) clean512y
+
+clean512z: # Clean build: fortran in this Pn; cpp executables for cpp512z in this Pn
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel build.512z_*/$(PROG)_cpp
+ $(MAKE) -f $(CUDACPP_MAKEFILE) clean512z
+
+cleancuda: # Clean build: fortran in this Pn; cuda executables in this Pn
+ $(RM) *.o gensym $(PROG) $(PROG)_fortran $(PROG)_forhel build.cuda_*/$(PROG)_cuda
+ $(MAKE) -f $(CUDACPP_MAKEFILE) cleancuda

cleanavxs: clean # Clean builds: fortran in this Pn; cudacpp for all AVX in this Pn and in src
$(MAKE) -f $(CUDACPP_MAKEFILE) cleanall
- rm -f $(CUDACPP_BUILDDIR)/.cudacpplibs
- rm -f .libs
+ $(RM) $(CUDACPP_BUILDDIR)/.*libs
+ $(RM) .libs

cleanall: # Clean builds: fortran in all P* and in Source; cudacpp for all AVX in all P* and in src
make -C ../../Source cleanall
- rm -rf $(LIBDIR)libbias.$(libext)
- rm -f ../../Source/*.mod ../../Source/*/*.mod
+ $(RM) -r $(LIBDIR)libbias.$(libext)
+ $(RM) ../../Source/*.mod ../../Source/*/*.mod

distclean: cleanall # Clean all fortran and cudacpp builds as well as the googletest installation
$(MAKE) -f $(CUDACPP_MAKEFILE) distclean
Loading