@@ -95,6 +95,7 @@ ifeq ($(FFT),DUCC)
9595# so FINUFFT build can see DUCC headers...
9696 INCL += $(DUCC_INCL )
9797 DUCC_OBJS := $(DUCC_SRC ) /infra/string_utils.o $(DUCC_SRC ) /infra/threading.o $(DUCC_SRC ) /infra/mav.o $(DUCC_SRC ) /math/gridding_kernel.o $(DUCC_SRC ) /math/gl_integrator.o
98+ DUCC_SRCS := $(DUCC_OBJS:.o=.cc )
9899# FINUFFT's switchable FFT done via this compile directive...
99100 CXXFLAGS += -DFINUFFT_USE_DUCC0
100101else
@@ -495,25 +496,9 @@ $(DUCC_COOKIE):
495496
496497# implicit rule for DUCC compile just needed objects, only used if FFT=DUCC.
497498# Needed since DUCC has no makefile (yet).
498- $(DUCC_SRC ) /infra/string_utils .cc : $(DUCC_SETUP )
499- $(DUCC_SRC ) /infra/string_utils .o : $( DUCC_SRC ) /infra/string_utils .cc
499+ $(DUCC_SRCS ) : % .cc: $(DUCC_SETUP )
500+ $(DUCC_OBJS ) : % .o: % .cc
500501 $(CXX ) -c $(DUCC_CXXFLAGS ) $(DUCC_INCL ) $< -o $@
501- $(DUCC_SRC ) /infra/threading.cc : $(DUCC_SETUP )
502- $(DUCC_SRC ) /infra/threading.o : $(DUCC_SRC ) /infra/threading.cc
503- $(CXX ) -c $(DUCC_CXXFLAGS ) $(DUCC_INCL ) $< -o $@
504- $(DUCC_SRC ) /infra/mav.cc : $(DUCC_SETUP )
505- $(DUCC_SRC ) /infra/mav.o : $(DUCC_SRC ) /infra/mav.cc
506- $(CXX ) -c $(DUCC_CXXFLAGS ) $(DUCC_INCL ) $< -o $@
507- $(DUCC_SRC ) /math/gridding_kernel.cc : $(DUCC_SETUP )
508- $(DUCC_SRC ) /math/gridding_kernel.o : $(DUCC_SRC ) /math/gridding_kernel.cc
509- $(CXX ) -c $(DUCC_CXXFLAGS ) $(DUCC_INCL ) $< -o $@
510- $(DUCC_SRC ) /math/gl_integrator.cc : $(DUCC_SETUP )
511- $(DUCC_SRC ) /math/gl_integrator.o : $(DUCC_SRC ) /math/gl_integrator.cc
512- $(CXX ) -c $(DUCC_CXXFLAGS ) $(DUCC_INCL ) $< -o $@
513- # -j with the following not working yet..., need to expand the wildcard as above...
514- # $(DUCC_SRC)/%.cc: $(DUCC_SETUP)
515- # $(DUCC_SRC)/%.o: $(DUCC_SRC)/%.cc
516- # $(CXX) -c $(DUCC_CXXFLAGS) $(DUCC_INCL) $< -o $@
517502
518503setup : $(XSIMD_DIR ) /include/xsimd/xsimd.hpp $(DUCC_SETUP )
519504
0 commit comments