From a77ecddb7a0f57d9ba5a0debcba3b4f07f5330f3 Mon Sep 17 00:00:00 2001
From: Giovanni La Mura <giovanni.lamura@inaf.it>
Date: Tue, 9 Jan 2024 12:05:55 +0100
Subject: [PATCH] Hide dependency on SPHERE subroutines behind include guardian

---
 src/include/clu_subs.h | 43 ++++--------------------------------------
 1 file changed, 4 insertions(+), 39 deletions(-)

diff --git a/src/include/clu_subs.h b/src/include/clu_subs.h
index af6ece23..24391800 100644
--- a/src/include/clu_subs.h
+++ b/src/include/clu_subs.h
@@ -17,50 +17,15 @@
 #include "Commons.h"
 #endif
 
+#ifndef INCLUDE_SPH_SUBS_H_
+#include "../include/sph_subs.h"
+#endif
+
 #ifndef INCLUDE_CLU_SUBS_H_
 #define INCLUDE_CLU_SUBS_H_
 
 #include <complex>
 
-// >>> DECLARATION OF SPH_SUBS <<<
-extern void aps(double ****zpv, int li, int nsph, C1 *c1, double sqk, double *gaps);
-extern std::complex<double> dconjg(std::complex<double> value);
-extern double cg1(int lmpml, int mu, int l, int m);
-extern void dme(
-		int li, int i, int npnt, int npntts, double vk, double exdc, double exri,
-		C1 *c1, C2 *c2, int &jer, int &lcalc, std::complex<double> &arg
-);
-extern void rabas(
-		  int inpol, int li, int nsph, C1 *c1, double **tqse, std::complex<double> **tqspe,
-		  double **tqss, std::complex<double> **tqsps
-);
-extern void rbf(int n, double x, int &nm, double sj[]);
-extern void rnf(int n, double x, int &nm, double sy[]);
-extern void mmulc(std::complex<double> *vint, double **cmullr, double **cmul);
-extern void sphar(double cth, double sth, double cph, double sph, int lm, std::complex<double> *ylm);
-extern void thdps(int lm, double ****zpv);
-extern void upvmp(
-		  double thd, double phd, int icspnv, double &cost, double &sint,
-		  double &cosp, double &sinp, double *u, double *up, double *un
-);
-extern void upvsp(
-		  double *u, double *upmp, double *unmp, double *us, double *upsmp, double *unsmp,
-		  double *up, double *un, double *ups, double *uns, double *duk, int &isq,
-		  int &ibf, double &scand, double &cfmp, double &sfmp, double &cfsp, double &sfsp
-);
-extern void wmamp(
-		  int iis, double cost, double sint, double cosp, double sinp, int inpol,
-		  int lm, int idot, int nsph, double *arg, double *u, double *up,
-		  double *un, C1 *c1
-);
-extern void wmasp(
-		  double cost, double sint, double cosp, double sinp, double costs, double sints,
-		  double cosps, double sinps, double *u, double *up, double *un, double *us,
-		  double *ups, double *uns, int isq, int ibf, int inpol, int lm, int idot,
-		  int nsph, double *argi, double *args, C1 *c1
-);
-// >>> END OF SPH_SUBS DECLARATION <<<
-
 /*! \brief C++ porting of APC
  *
  * \param zpv: `double ****`
-- 
GitLab