Update lapack.cmake with additional routines from LAPACK version 3.7.0.

--- cmake/lapack.cmake
+++ cmake/lapack.cmake
@@ -1,387 +1,485 @@
 # Sources for compiling lapack-netlib. Can't use CMakeLists.txt because lapack-netlib already has its own cmake files.

-set(ALLAUX
-  ilaenv.f ieeeck.f lsamen.f xerbla_array.f iparmq.f
-  ilaprec.f ilatrans.f ilauplo.f iladiag.f iparam2stage.F chla_transtype.f
-  ../INSTALL/ilaver.f ../INSTALL/slamch.f
-)
+set(ALLAUX ilaenv.f ieeeck.f lsamen.f iparmq.f iparam2stage.F
+   ilaprec.f ilatrans.f ilauplo.f iladiag.f chla_transtype.f
+   ../INSTALL/ilaver.f xerbla_array.f
+   ../INSTALL/slamch.f)

 set(SCLAUX
-  sbdsdc.f
-  sbdsqr.f sdisna.f slabad.f slacpy.f sladiv.f slae2.f  slaebz.f
-  slaed0.f slaed1.f slaed2.f slaed3.f slaed4.f slaed5.f slaed6.f
-  slaed7.f slaed8.f slaed9.f slaeda.f slaev2.f slagtf.f
-  slagts.f slamrg.f slanst.f
-  slapy2.f slapy3.f slarnv.f
-  slarra.f slarrb.f slarrc.f slarrd.f slarre.f slarrf.f slarrj.f
-  slarrk.f slarrr.f slaneg.f
-  slartg.f slaruv.f slas2.f  slascl.f
-  slasd0.f slasd1.f slasd2.f slasd3.f slasd4.f slasd5.f slasd6.f
-  slasd7.f slasd8.f slasda.f slasdq.f slasdt.f
-  slaset.f slasq1.f slasq2.f slasq3.f slasq4.f slasq5.f slasq6.f
-  slasr.f  slasrt.f slassq.f slasv2.f spttrf.f sstebz.f sstedc.f
-  ssteqr.f ssterf.f slaisnan.f sisnan.f
-  slartgp.f slartgs.f
-  ../INSTALL/second_${TIMER}.f
-)
+   sbdsdc.f
+   sbdsqr.f sdisna.f slabad.f slacpy.f sladiv.f slae2.f  slaebz.f
+   slaed0.f slaed1.f slaed2.f slaed3.f slaed4.f slaed5.f slaed6.f
+   slaed7.f slaed8.f slaed9.f slaeda.f slaev2.f slagtf.f
+   slagts.f slamrg.f slanst.f
+   slapy2.f slapy3.f slarnv.f
+   slarra.f slarrb.f slarrc.f slarrd.f slarre.f slarrf.f slarrj.f
+   slarrk.f slarrr.f slaneg.f
+   slartg.f slaruv.f slas2.f  slascl.f
+   slasd0.f slasd1.f slasd2.f slasd3.f slasd4.f slasd5.f slasd6.f
+   slasd7.f slasd8.f slasda.f slasdq.f slasdt.f
+   slaset.f slasq1.f slasq2.f slasq3.f slasq4.f slasq5.f slasq6.f
+   slasr.f  slasrt.f slassq.f slasv2.f spttrf.f sstebz.f sstedc.f
+   ssteqr.f ssterf.f slaisnan.f sisnan.f
+   slartgp.f slartgs.f
+   ../INSTALL/second_${TIMER}.f)

 set(DZLAUX
-  dbdsdc.f dbdsvdx.f
-  dbdsqr.f ddisna.f dlabad.f dlacpy.f dladiv.f dlae2.f  dlaebz.f
-  dlaed0.f dlaed1.f dlaed2.f dlaed3.f dlaed4.f dlaed5.f dlaed6.f
-  dlaed7.f dlaed8.f dlaed9.f dlaeda.f dlaev2.f dlagtf.f
-  dlagts.f dlamrg.f dlanst.f
-  dlapy2.f dlapy3.f dlarnv.f
-  dlarra.f dlarrb.f dlarrc.f dlarrd.f dlarre.f dlarrf.f dlarrj.f
-  dlarrk.f dlarrr.f dlaneg.f
-  dlartg.f dlaruv.f dlas2.f  dlascl.f
-  dlasd0.f dlasd1.f dlasd2.f dlasd3.f dlasd4.f dlasd5.f dlasd6.f
-  dlasd7.f dlasd8.f dlasda.f dlasdq.f dlasdt.f
-  dlaset.f dlasq1.f dlasq2.f dlasq3.f dlasq4.f dlasq5.f dlasq6.f
-  dlasr.f  dlasrt.f dlassq.f dlasv2.f dpttrf.f dstebz.f dstedc.f
-  dsteqr.f dsterf.f dlaisnan.f disnan.f
-  dlartgp.f dlartgs.f
-  ../INSTALL/dlamch.f ../INSTALL/dsecnd_${TIMER}.f
-  dgelq.f dgelqt.f dgelqt3.f dgemlq.f dgemlqt.f dgemqr.f dgeqr.f
-  dgetsls.f dlamswlq.f dlamtsqr.f dlaswlq.f dlatsqr.f dtplqt.f
-  dtplqt2.f dtpmlqt.f dsysv_aa.f dsytrf_aa.f dsytrs_aa.f dlasyf_aa.f
-  dsytf2_rk.f dlasyf_rk.f dsytrf_rk.f dsytrs_3.f dsycon_3.f dsytri_3.f
-  dsytri_3x.f dsysv_rk.f dsb2st_kernels.f dsbev_2stage.f dsbevd_2stage.f
-  dsbevx_2stage.f dsyev_2stage.f dsyevd_2stage.f dsyevr_2stage.f
-  dsyevx_2stage.f dsygv_2stage.f dsytrd_2stage.f dsytrd_sb2st.F
-  dsytrd_sy2sb.f dlarfy.f
-)
+   dbdsdc.f
+   dbdsqr.f ddisna.f dlabad.f dlacpy.f dladiv.f dlae2.f  dlaebz.f
+   dlaed0.f dlaed1.f dlaed2.f dlaed3.f dlaed4.f dlaed5.f dlaed6.f
+   dlaed7.f dlaed8.f dlaed9.f dlaeda.f dlaev2.f dlagtf.f
+   dlagts.f dlamrg.f dlanst.f
+   dlapy2.f dlapy3.f dlarnv.f
+   dlarra.f dlarrb.f dlarrc.f dlarrd.f dlarre.f dlarrf.f dlarrj.f
+   dlarrk.f dlarrr.f dlaneg.f
+   dlartg.f dlaruv.f dlas2.f  dlascl.f
+   dlasd0.f dlasd1.f dlasd2.f dlasd3.f dlasd4.f dlasd5.f dlasd6.f
+   dlasd7.f dlasd8.f dlasda.f dlasdq.f dlasdt.f
+   dlaset.f dlasq1.f dlasq2.f dlasq3.f dlasq4.f dlasq5.f dlasq6.f
+   dlasr.f  dlasrt.f dlassq.f dlasv2.f dpttrf.f dstebz.f dstedc.f
+   dsteqr.f dsterf.f dlaisnan.f disnan.f
+   dlartgp.f dlartgs.f
+   ../INSTALL/dlamch.f ../INSTALL/dsecnd_${TIMER}.f)

 set(SLASRC
-  sbdsvdx.f sgbbrd.f sgbcon.f sgbequ.f sgbrfs.f sgbsv.f
-  sgbsvx.f sgbtf2.f sgbtrf.f sgbtrs.f sgebak.f sgebal.f sgebd2.f
-  sgebrd.f sgecon.f sgeequ.f sgees.f  sgeesx.f sgeev.f  sgeevx.f
-  DEPRECATED/sgegs.f  DEPRECATED/sgegv.f  sgehd2.f sgehrd.f sgelq2.f sgelqf.f
-  sgels.f  sgelsd.f sgelss.f DEPRECATED/sgelsx.f sgelsy.f sgeql2.f sgeqlf.f
-  sgeqp3.f DEPRECATED/sgeqpf.f sgeqr2.f sgeqr2p.f sgeqrf.f sgeqrfp.f sgerfs.f
-  sgerq2.f sgerqf.f sgesc2.f sgesdd.f  sgesvd.f sgesvdx.f sgesvx.f
-  sgetc2.f sgetri.f sgetrf2.f
-  sggbak.f sggbal.f sgghd3.f  sgges.f  sgges3.f sggesx.f sggev.f sggev3.f  sggevx.f
-  sggglm.f sgghrd.f sgglse.f sggqrf.f
-  sggrqf.f DEPRECATED/sggsvd.f sggsvd3.f DEPRECATED/sggsvp.f sggsvp3.f sgtcon.f sgtrfs.f sgtsv.f
-  sgtsvx.f sgttrf.f sgttrs.f sgtts2.f shgeqz.f
-  shsein.f shseqr.f slabrd.f slacon.f slacn2.f
-  slaein.f slaexc.f slag2.f  slags2.f slagtm.f slagv2.f slahqr.f
-  DEPRECATED/slahrd.f slahr2.f slaic1.f slaln2.f slals0.f slalsa.f slalsd.f
-  slangb.f slange.f slangt.f slanhs.f slansb.f slansp.f
-  slansy.f slantb.f slantp.f slantr.f slanv2.f
-  slapll.f slapmt.f
-  slaqgb.f slaqge.f slaqp2.f slaqps.f slaqsb.f slaqsp.f slaqsy.f
-  slaqr0.f slaqr1.f slaqr2.f slaqr3.f slaqr4.f slaqr5.f
-  slaqtr.f slar1v.f slar2v.f ilaslr.f ilaslc.f
-  slarf.f  slarfb.f slarfg.f slarfgp.f slarft.f slarfx.f slargv.f
-  slarrv.f slartv.f
-  slarz.f  slarzb.f slarzt.f slasy2.f slasyf.f slasyf_rook.f
-  slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrz.f DEPRECATED/slatzm.f
-  sopgtr.f sopmtr.f sorg2l.f sorg2r.f
-  sorgbr.f sorghr.f sorgl2.f sorglq.f sorgql.f sorgqr.f sorgr2.f
-  sorgrq.f sorgtr.f sorm2l.f sorm2r.f sorm22.f
-  sormbr.f sormhr.f sorml2.f sormlq.f sormql.f sormqr.f sormr2.f
-  sormr3.f sormrq.f sormrz.f sormtr.f spbcon.f spbequ.f spbrfs.f
-  spbstf.f spbsv.f  spbsvx.f
-  spbtf2.f spbtrf.f spbtrs.f spocon.f spoequ.f sporfs.f sposv.f
-  sposvx.f spstrf.f spstf2.f
-  sppcon.f sppequ.f
-  spprfs.f sppsv.f  sppsvx.f spptrf.f spptri.f spptrs.f sptcon.f
-  spteqr.f sptrfs.f sptsv.f  sptsvx.f spttrs.f sptts2.f srscl.f
-  ssbev.f  ssbevd.f ssbevx.f ssbgst.f ssbgv.f  ssbgvd.f ssbgvx.f
-  ssbtrd.f sspcon.f sspev.f  sspevd.f sspevx.f sspgst.f
-  sspgv.f  sspgvd.f sspgvx.f ssprfs.f sspsv.f  sspsvx.f ssptrd.f
-  ssptrf.f ssptri.f ssptrs.f sstegr.f sstein.f sstev.f  sstevd.f sstevr.f
-  sstevx.f
-  ssycon.f ssyev.f  ssyevd.f ssyevr.f ssyevx.f ssygs2.f
-  ssygst.f ssygv.f  ssygvd.f ssygvx.f ssyrfs.f ssysv.f  ssysvx.f
-  ssytd2.f ssytf2.f ssytrd.f ssytrf.f ssytri.f ssytri2.f ssytri2x.f
-  ssyswapr.f ssytrs.f ssytrs2.f ssyconv.f
-  ssytf2_rook.f ssytrf_rook.f ssytrs_rook.f
-  ssytri_rook.f ssycon_rook.f ssysv_rook.f
-  stbcon.f
-  stbrfs.f stbtrs.f stgevc.f stgex2.f stgexc.f stgsen.f
-  stgsja.f stgsna.f stgsy2.f stgsyl.f stpcon.f stprfs.f stptri.f
-  stptrs.f
-  strcon.f strevc.f strevc3.f strexc.f strrfs.f strsen.f strsna.f strsyl.f
-  strtrs.f DEPRECATED/stzrqf.f stzrzf.f sstemr.f
-  slansf.f spftrf.f spftri.f spftrs.f ssfrk.f stfsm.f stftri.f stfttp.f
-  stfttr.f stpttf.f stpttr.f strttf.f strttp.f
-  sgejsv.f  sgesvj.f  sgsvj0.f  sgsvj1.f
-  sgeequb.f ssyequb.f spoequb.f sgbequb.f
-  sbbcsd.f slapmr.f sorbdb.f sorbdb1.f sorbdb2.f sorbdb3.f sorbdb4.f
-  sorbdb5.f sorbdb6.f sorcsd.f sorcsd2by1.f
-  sgeqrt.f sgeqrt2.f sgeqrt3.f sgemqrt.f
-  stpqrt.f stpqrt2.f stpmqrt.f stprfb.f spotri.f
-  sgelq.f  sgelqt.f sgelqt3.f sgemlq.f sgemlqt.f sgemqr.f sgeqr.f sgetsls.f
-  slamswlq.f slamtsqr.f slaswlq.f slatsqr.f stplqt.f stplqt2.f stpmlqt.f
-  ssysv_aa.f ssytrf_aa.f ssytrs_aa.f slasyf_aa.f ssytf2_rk.f slasyf_rk.f
-  ssytrf_rk.f ssytrs_3.f ssycon_3.f ssytri_3.f ssytri_3x.f ssysv_rk.f
-  ssb2st_kernels.f ssbev_2stage.f ssbevd_2stage.f ssbevx_2stage.f
-  ssyev_2stage.f ssyevd_2stage.f ssyevr_2stage.f ssyevx_2stage.f
-  ssygv_2stage.f ssytrd_2stage.f ssytrd_sb2st.F ssytrd_sy2sb.f slarfy.f
-)
-
-set(DSLASRC spotrs.f spotrf2.f)
+   sbdsvdx.f sgbbrd.f sgbcon.f sgbequ.f sgbrfs.f sgbsv.f
+   sgbsvx.f sgbtf2.f sgbtrf.f sgbtrs.f sgebak.f sgebal.f sgebd2.f
+   sgebrd.f sgecon.f sgeequ.f sgees.f  sgeesx.f sgeev.f  sgeevx.f
+   sgehd2.f sgehrd.f sgelq2.f sgelqf.f
+   sgels.f  sgelsd.f sgelss.f sgelsy.f sgeql2.f sgeqlf.f
+   sgeqp3.f sgeqr2.f sgeqr2p.f sgeqrf.f sgeqrfp.f sgerfs.f sgerq2.f sgerqf.f
+   sgesc2.f sgesdd.f sgesvd.f sgesvdx.f sgesvx.f sgetc2.f
+   sgetrf2.f sgetri.f
+   sggbak.f sggbal.f
+   sgges.f  sgges3.f sggesx.f sggev.f  sggev3.f sggevx.f
+   sggglm.f sgghrd.f sgghd3.f sgglse.f sggqrf.f
+   sggrqf.f sggsvd3.f sggsvp3.f sgtcon.f sgtrfs.f sgtsv.f
+   sgtsvx.f sgttrf.f sgttrs.f sgtts2.f shgeqz.f
+   shsein.f shseqr.f slabrd.f slacon.f slacn2.f
+   slaein.f slaexc.f slag2.f  slags2.f slagtm.f slagv2.f slahqr.f
+   slahr2.f slaic1.f slaln2.f slals0.f slalsa.f slalsd.f
+   slangb.f slange.f slangt.f slanhs.f slansb.f slansp.f
+   slansy.f slantb.f slantp.f slantr.f slanv2.f
+   slapll.f slapmt.f
+   slaqgb.f slaqge.f slaqp2.f slaqps.f slaqsb.f slaqsp.f slaqsy.f
+   slaqr0.f slaqr1.f slaqr2.f slaqr3.f slaqr4.f slaqr5.f
+   slaqtr.f slar1v.f slar2v.f ilaslr.f ilaslc.f
+   slarf.f  slarfb.f slarfg.f slarfgp.f slarft.f slarfx.f slarfy.f slargv.f
+   slarrv.f slartv.f
+   slarz.f  slarzb.f slarzt.f slasy2.f
+   slasyf.f slasyf_rook.f slasyf_rk.f slasyf_aa.f
+   slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrz.f
+   sopgtr.f sopmtr.f sorg2l.f sorg2r.f
+   sorgbr.f sorghr.f sorgl2.f sorglq.f sorgql.f sorgqr.f sorgr2.f
+   sorgrq.f sorgtr.f sorm2l.f sorm2r.f sorm22.f
+   sormbr.f sormhr.f sorml2.f sormlq.f sormql.f sormqr.f sormr2.f
+   sormr3.f sormrq.f sormrz.f sormtr.f spbcon.f spbequ.f spbrfs.f
+   spbstf.f spbsv.f  spbsvx.f
+   spbtf2.f spbtrf.f spbtrs.f spocon.f spoequ.f sporfs.f sposv.f
+   sposvx.f spotrf2.f spotri.f spstrf.f spstf2.f
+   sppcon.f sppequ.f
+   spprfs.f sppsv.f  sppsvx.f spptrf.f spptri.f spptrs.f sptcon.f
+   spteqr.f sptrfs.f sptsv.f  sptsvx.f spttrs.f sptts2.f srscl.f
+   ssbev.f  ssbevd.f ssbevx.f ssbgst.f ssbgv.f  ssbgvd.f ssbgvx.f
+   ssbtrd.f sspcon.f sspev.f  sspevd.f sspevx.f sspgst.f
+   sspgv.f  sspgvd.f sspgvx.f ssprfs.f sspsv.f  sspsvx.f ssptrd.f
+   ssptrf.f ssptri.f ssptrs.f sstegr.f sstein.f sstev.f  sstevd.f sstevr.f
+   sstevx.f ssycon.f ssyev.f  ssyevd.f ssyevr.f ssyevx.f ssygs2.f
+   ssygst.f ssygv.f  ssygvd.f ssygvx.f ssyrfs.f ssysv.f  ssysvx.f
+   ssytd2.f ssytf2.f ssytrd.f ssytrf.f ssytri.f ssytri2.f ssytri2x.f
+   ssyswapr.f ssytrs.f ssytrs2.f
+   ssyconv.f ssyconvf.f ssyconvf_rook.f
+   ssysv_aa.f ssytrf_aa.f ssytrs_aa.f
+   ssytf2_rook.f ssytrf_rook.f ssytrs_rook.f
+   ssytri_rook.f ssycon_rook.f ssysv_rook.f
+   ssytf2_rk.f ssytrf_rk.f ssytrs_3.f
+   ssytri_3.f ssytri_3x.f ssycon_3.f ssysv_rk.f
+   ssysv_aa.f ssytrf_aa.f ssytrs_aa.f
+   stbcon.f
+   stbrfs.f stbtrs.f stgevc.f stgex2.f stgexc.f stgsen.f
+   stgsja.f stgsna.f stgsy2.f stgsyl.f stpcon.f stprfs.f stptri.f
+   stptrs.f
+   strcon.f strevc.f strevc3.f strexc.f strrfs.f strsen.f strsna.f strsyl.f
+   strtrs.f stzrzf.f sstemr.f
+   slansf.f spftrf.f spftri.f spftrs.f ssfrk.f stfsm.f stftri.f stfttp.f
+   stfttr.f stpttf.f stpttr.f strttf.f strttp.f
+   sgejsv.f sgesvj.f sgsvj0.f sgsvj1.f
+   sgeequb.f ssyequb.f spoequb.f sgbequb.f
+   sbbcsd.f slapmr.f sorbdb.f sorbdb1.f sorbdb2.f sorbdb3.f sorbdb4.f
+   sorbdb5.f sorbdb6.f sorcsd.f sorcsd2by1.f
+   sgeqrt.f sgeqrt2.f sgeqrt3.f sgemqrt.f
+   stpqrt.f stpqrt2.f stpmqrt.f stprfb.f
+   sgelqt.f sgelqt3.f sgemlqt.f
+   sgetsls.f sgeqr.f slatsqr.f slamtsqr.f sgemqr.f
+   sgelq.f slaswlq.f slamswlq.f sgemlq.f
+   stplqt.f stplqt2.f stpmlqt.f
+   ssytrd_2stage.f ssytrd_sy2sb.f ssytrd_sb2st.F ssb2st_kernels.f
+   ssyevd_2stage.f ssyev_2stage.f ssyevx_2stage.f ssyevr_2stage.f
+   ssbev_2stage.f ssbevx_2stage.f ssbevd_2stage.f ssygv_2stage.f)
+
+set(SXLASRC sgesvxx.f sgerfsx.f sla_gerfsx_extended.f sla_geamv.f
+   sla_gercond.f sla_gerpvgrw.f ssysvxx.f ssyrfsx.f
+   sla_syrfsx_extended.f sla_syamv.f sla_syrcond.f sla_syrpvgrw.f
+   sposvxx.f sporfsx.f sla_porfsx_extended.f sla_porcond.f
+   sla_porpvgrw.f sgbsvxx.f sgbrfsx.f sla_gbrfsx_extended.f
+   sla_gbamv.f sla_gbrcond.f sla_gbrpvgrw.f sla_lin_berr.f slarscl2.f
+   slascl2.f sla_wwaddw.f)

 set(CLASRC
-  cbdsqr.f cgbbrd.f cgbcon.f cgbequ.f cgbrfs.f cgbsv.f  cgbsvx.f
-  cgbtf2.f cgbtrf.f cgbtrs.f cgebak.f cgebal.f cgebd2.f cgebrd.f
-  cgecon.f cgeequ.f cgees.f  cgeesx.f cgeev.f  cgeevx.f
-  DEPRECATED/cgegs.f  DEPRECATED/cgegv.f  cgehd2.f cgehrd.f cgelq2.f cgelqf.f
-  cgels.f  cgelsd.f cgelss.f DEPRECATED/cgelsx.f cgelsy.f cgeql2.f cgeqlf.f cgeqp3.f
-  DEPRECATED/cgeqpf.f cgeqr2.f cgeqr2p.f cgeqrf.f cgeqrfp.f cgerfs.f
-  cgerq2.f cgerqf.f cgesc2.f cgesdd.f  cgesvd.f
-  cgesvx.f cgetc2.f cgetri.f
-  cggbak.f cggbal.f cgges.f  cggesx.f cggev.f  cggevx.f cggglm.f
-  cgghrd.f cgglse.f cggqrf.f cggrqf.f
-  DEPRECATED/cggsvd.f DEPRECATED/cggsvp.f
-  cgtcon.f cgtrfs.f cgtsv.f  cgtsvx.f cgttrf.f cgttrs.f cgtts2.f chbev.f
-  chbevd.f chbevx.f chbgst.f chbgv.f  chbgvd.f chbgvx.f chbtrd.f
-  checon.f cheev.f  cheevd.f cheevr.f cheevx.f chegs2.f chegst.f
-  chegv.f  chegvd.f chegvx.f cherfs.f chesv.f  chesvx.f chetd2.f
-  chetf2.f chetrd.f
-  chetrf.f chetri.f chetri2.f chetri2x.f cheswapr.f
-  chetrs.f chetrs2.f
-  chetf2_rook.f chetrf_rook.f chetri_rook.f chetrs_rook.f checon_rook.f chesv_rook.f
-  chgeqz.f chpcon.f chpev.f  chpevd.f
-  chpevx.f chpgst.f chpgv.f  chpgvd.f chpgvx.f chprfs.f chpsv.f
-  chpsvx.f
-  chptrd.f chptrf.f chptri.f chptrs.f chsein.f chseqr.f clabrd.f
-  clacgv.f clacon.f clacn2.f clacp2.f clacpy.f clacrm.f clacrt.f cladiv.f
-  claed0.f claed7.f claed8.f
-  claein.f claesy.f claev2.f clags2.f clagtm.f
-  clahef.f clahef_rook.f clahqr.f
-  DEPRECATED/clahrd.f clahr2.f claic1.f clals0.f clalsa.f clalsd.f clangb.f clange.f clangt.f
-  clanhb.f clanhe.f
-  clanhp.f clanhs.f clanht.f clansb.f clansp.f clansy.f clantb.f
-  clantp.f clantr.f clapll.f clapmt.f clarcm.f claqgb.f claqge.f
-  claqhb.f claqhe.f claqhp.f claqp2.f claqps.f claqsb.f
-  claqr0.f claqr1.f claqr2.f claqr3.f claqr4.f claqr5.f
-  claqsp.f claqsy.f clar1v.f clar2v.f ilaclr.f ilaclc.f
-  clarf.f  clarfb.f clarfg.f clarft.f clarfgp.f
-  clarfx.f clargv.f clarnv.f clarrv.f clartg.f clartv.f
-  clarz.f  clarzb.f clarzt.f clascl.f claset.f clasr.f  classq.f
-  clasyf.f clasyf_rook.f clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f
-  DEPRECATED/clatzm.f cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f
-  cpbsvx.f cpbtf2.f cpbtrf.f cpbtrs.f cpocon.f cpoequ.f cporfs.f
-  cposv.f  cposvx.f cpstrf.f cpstf2.f
-  cppcon.f cppequ.f cpprfs.f cppsv.f  cppsvx.f cpptrf.f cpptri.f cpptrs.f
-  cptcon.f cpteqr.f cptrfs.f cptsv.f  cptsvx.f cpttrf.f cpttrs.f cptts2.f
-  crot.f   cspcon.f csprfs.f cspsv.f
-  cspsvx.f csptrf.f csptri.f csptrs.f csrscl.f cstedc.f
-  cstegr.f cstein.f csteqr.f
-  csycon.f
-  csyrfs.f csysv.f  csysvx.f csytf2.f csytrf.f csytri.f csytri2.f csytri2x.f
-  csyswapr.f csytrs.f csytrs2.f csyconv.f
-  csytf2_rook.f csytrf_rook.f csytrs_rook.f
-  csytri_rook.f csycon_rook.f csysv_rook.f
-  ctbcon.f ctbrfs.f ctbtrs.f ctgevc.f ctgex2.f
-  ctgexc.f ctgsen.f ctgsja.f ctgsna.f ctgsy2.f ctgsyl.f ctpcon.f
-  ctprfs.f ctptri.f
-  ctptrs.f ctrcon.f ctrevc.f ctrevc3.f ctrexc.f ctrrfs.f ctrsen.f ctrsna.f
-  ctrsyl.f ctrtrs.f DEPRECATED/ctzrqf.f ctzrzf.f cung2l.f cung2r.f
-  cungbr.f cunghr.f cungl2.f cunglq.f cungql.f cungqr.f cungr2.f
-  cungrq.f cungtr.f cunm2l.f cunm2r.f cunmbr.f cunmhr.f cunml2.f
-  cunmlq.f cunmql.f cunmqr.f cunmr2.f cunmr3.f cunmrq.f cunmrz.f
-  cunmtr.f cupgtr.f cupmtr.f icmax1.f scsum1.f cstemr.f
-  chfrk.f ctfttp.f clanhf.f cpftrf.f cpftri.f cpftrs.f ctfsm.f ctftri.f
-  ctfttr.f ctpttf.f ctpttr.f ctrttf.f ctrttp.f
-  cgeequb.f cgbequb.f csyequb.f cpoequb.f cheequb.f
-  cbbcsd.f clapmr.f cunbdb.f cunbdb1.f cunbdb2.f cunbdb3.f cunbdb4.f
-  cunbdb5.f cunbdb6.f cuncsd.f cuncsd2by1.f
-  cgeqrt.f cgeqrt2.f cgeqrt3.f cgemqrt.f
-  ctpqrt.f ctpqrt2.f ctpmqrt.f ctprfb.f cpotri.f
-  cgelq.f cgelqt.f cgelqt3.f cgemlq.f cgemlqt.f cgemqr.f cgeqr.f cgetsls.f
-  clamswlq.f clamtsqr.f claswlq.f clatsqr.f ctplqt.f ctplqt2.f ctpmlqt.f
-  chesv_aa.f chetrf_aa.f chetrs_aa.f clahef_aa.f csytf2_rk.f clasyf_rk.f
-  csytrf_rk.f csytrs_3.f csycon_3.f csytri_3.f csytri_3x.f csysv_rk.f
-  chetf2_rk.f clahef_rk.f chetrf_rk.f chetrs_3.f checon_3.f chetri_3.f
-  chetri_3x.f chesv_rk.f chb2st_kernels.f chbev_2stage.f chbevd_2stage.f
-  chbevx_2stage.f cheev_2stage.f cheevd_2stage.f cheevr_2stage.f cheevx_2stage.f
-  chegv_2stage.f chetrd_2stage.f chetrd_hb2st.F chetrd_he2hb.f clarfy.f
-)
+   cbdsqr.f cgbbrd.f cgbcon.f cgbequ.f cgbrfs.f cgbsv.f  cgbsvx.f
+   cgbtf2.f cgbtrf.f cgbtrs.f cgebak.f cgebal.f cgebd2.f cgebrd.f
+   cgecon.f cgeequ.f cgees.f  cgeesx.f cgeev.f  cgeevx.f
+   cgehd2.f cgehrd.f cgelq2.f cgelqf.f
+   cgels.f  cgelsd.f cgelss.f cgelsy.f cgeql2.f cgeqlf.f cgeqp3.f
+   cgeqr2.f cgeqr2p.f cgeqrf.f cgeqrfp.f cgerfs.f cgerq2.f cgerqf.f
+   cgesc2.f cgesdd.f cgesvd.f cgesvdx.f
+   cgesvj.f cgejsv.f cgsvj0.f cgsvj1.f
+   cgesvx.f cgetc2.f cgetrf2.f
+   cgetri.f
+   cggbak.f cggbal.f
+   cgges.f  cgges3.f cggesx.f cggev.f  cggev3.f cggevx.f
+   cggglm.f cgghrd.f cgghd3.f cgglse.f cggqrf.f cggrqf.f
+   cggsvd3.f cggsvp3.f
+   cgtcon.f cgtrfs.f cgtsv.f  cgtsvx.f cgttrf.f cgttrs.f cgtts2.f chbev.f
+   chbevd.f chbevx.f chbgst.f chbgv.f  chbgvd.f chbgvx.f chbtrd.f
+   checon.f cheev.f  cheevd.f cheevr.f cheevx.f chegs2.f chegst.f
+   chegv.f  chegvd.f chegvx.f cherfs.f chesv.f  chesvx.f chetd2.f
+   chetf2.f chetrd.f
+   chetrf.f chetri.f chetri2.f chetri2x.f cheswapr.f
+   chetrs.f chetrs2.f
+   chetf2_rook.f chetrf_rook.f chetri_rook.f
+   chetrs_rook.f checon_rook.f chesv_rook.f
+   chetf2_rk.f chetrf_rk.f chetri_3.f chetri_3x.f
+   chetrs_3.f checon_3.f chesv_rk.f
+   chesv_aa.f chetrf_aa.f chetrs_aa.f
+   chgeqz.f chpcon.f chpev.f  chpevd.f
+   chpevx.f chpgst.f chpgv.f  chpgvd.f chpgvx.f chprfs.f chpsv.f
+   chpsvx.f
+   chptrd.f chptrf.f chptri.f chptrs.f chsein.f chseqr.f clabrd.f
+   clacgv.f clacon.f clacn2.f clacp2.f clacpy.f clacrm.f clacrt.f cladiv.f
+   claed0.f claed7.f claed8.f
+   claein.f claesy.f claev2.f clags2.f clagtm.f
+   clahef.f clahef_rook.f clahef_rk.f clahef_aa.f clahqr.f
+   clahr2.f claic1.f clals0.f clalsa.f clalsd.f clangb.f clange.f clangt.f
+   clanhb.f clanhe.f
+   clanhp.f clanhs.f clanht.f clansb.f clansp.f clansy.f clantb.f
+   clantp.f clantr.f clapll.f clapmt.f clarcm.f claqgb.f claqge.f
+   claqhb.f claqhe.f claqhp.f claqp2.f claqps.f claqsb.f
+   claqr0.f claqr1.f claqr2.f claqr3.f claqr4.f claqr5.f
+   claqsp.f claqsy.f clar1v.f clar2v.f ilaclr.f ilaclc.f
+   clarf.f  clarfb.f clarfg.f clarfgp.f clarft.f
+   clarfx.f clarfy.f clargv.f clarnv.f clarrv.f clartg.f clartv.f
+   clarz.f  clarzb.f clarzt.f clascl.f claset.f clasr.f  classq.f
+   clasyf.f clasyf_rook.f clasyf_rk.f clasyf_aa.f
+   clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f
+   cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f
+   cpbsvx.f cpbtf2.f cpbtrf.f cpbtrs.f cpocon.f cpoequ.f cporfs.f
+   cposv.f  cposvx.f cpotrf2.f cpotri.f cpstrf.f cpstf2.f
+   cppcon.f cppequ.f cpprfs.f cppsv.f  cppsvx.f cpptrf.f cpptri.f cpptrs.f
+   cptcon.f cpteqr.f cptrfs.f cptsv.f  cptsvx.f cpttrf.f cpttrs.f cptts2.f
+   crot.f   cspcon.f csprfs.f cspsv.f
+   cspsvx.f csptrf.f csptri.f csptrs.f csrscl.f cstedc.f
+   cstegr.f cstein.f csteqr.f csycon.f
+   csyrfs.f csysv.f  csysvx.f csytf2.f csytrf.f csytri.f
+   csytri2.f csytri2x.f csyswapr.f
+   csytrs.f csytrs2.f
+   csyconv.f csyconvf.f csyconvf_rook.f
+   csytf2_rook.f csytrf_rook.f csytrs_rook.f
+   csytri_rook.f csycon_rook.f csysv_rook.f
+   csytf2_rk.f csytrf_rk.f csytrf_aa.f csytrs_3.f csytrs_aa.f
+   csytri_3.f csytri_3x.f csycon_3.f csysv_rk.f csysv_aa.f
+   ctbcon.f ctbrfs.f ctbtrs.f ctgevc.f ctgex2.f
+   ctgexc.f ctgsen.f ctgsja.f ctgsna.f ctgsy2.f ctgsyl.f ctpcon.f
+   ctprfs.f ctptri.f
+   ctptrs.f ctrcon.f ctrevc.f ctrevc3.f ctrexc.f ctrrfs.f ctrsen.f ctrsna.f
+   ctrsyl.f ctrtrs.f ctzrzf.f cung2l.f cung2r.f
+   cungbr.f cunghr.f cungl2.f cunglq.f cungql.f cungqr.f cungr2.f
+   cungrq.f cungtr.f cunm2l.f cunm2r.f cunmbr.f cunmhr.f cunml2.f cunm22.f
+   cunmlq.f cunmql.f cunmqr.f cunmr2.f cunmr3.f cunmrq.f cunmrz.f
+   cunmtr.f cupgtr.f cupmtr.f icmax1.f scsum1.f cstemr.f
+   chfrk.f ctfttp.f clanhf.f cpftrf.f cpftri.f cpftrs.f ctfsm.f ctftri.f
+   ctfttr.f ctpttf.f ctpttr.f ctrttf.f ctrttp.f
+   cgeequb.f cgbequb.f csyequb.f cpoequb.f cheequb.f
+   cbbcsd.f clapmr.f cunbdb.f cunbdb1.f cunbdb2.f cunbdb3.f cunbdb4.f
+   cunbdb5.f cunbdb6.f cuncsd.f cuncsd2by1.f
+   cgeqrt.f cgeqrt2.f cgeqrt3.f cgemqrt.f
+   ctpqrt.f ctpqrt2.f ctpmqrt.f ctprfb.f
+   cgelqt.f cgelqt3.f cgemlqt.f
+   cgetsls.f cgeqr.f clatsqr.f clamtsqr.f cgemqr.f
+   cgelq.f claswlq.f clamswlq.f cgemlq.f
+   ctplqt.f ctplqt2.f ctpmlqt.f
+   chetrd_2stage.f chetrd_he2hb.f chetrd_hb2st.F chb2st_kernels.f
+   cheevd_2stage.f cheev_2stage.f cheevx_2stage.f cheevr_2stage.f
+   chbev_2stage.f chbevx_2stage.f chbevd_2stage.f chegv_2stage.f)
+
+set(CXLASRC cgesvxx.f cgerfsx.f cla_gerfsx_extended.f cla_geamv.f
+   cla_gercond_c.f cla_gercond_x.f cla_gerpvgrw.f
+   csysvxx.f csyrfsx.f cla_syrfsx_extended.f cla_syamv.f
+   cla_syrcond_c.f cla_syrcond_x.f cla_syrpvgrw.f
+   cposvxx.f cporfsx.f cla_porfsx_extended.f
+   cla_porcond_c.f cla_porcond_x.f cla_porpvgrw.f
+   cgbsvxx.f cgbrfsx.f cla_gbrfsx_extended.f cla_gbamv.f
+   cla_gbrcond_c.f cla_gbrcond_x.f cla_gbrpvgrw.f
+   chesvxx.f cherfsx.f cla_herfsx_extended.f cla_heamv.f
+   cla_hercond_c.f cla_hercond_x.f cla_herpvgrw.f
+   cla_lin_berr.f clarscl2.f clascl2.f cla_wwaddw.f)
+
+set(DLASRC
+   dbdsvdx.f dgbbrd.f dgbcon.f dgbequ.f dgbrfs.f dgbsv.f
+   dgbsvx.f dgbtf2.f dgbtrf.f dgbtrs.f dgebak.f dgebal.f dgebd2.f
+   dgebrd.f dgecon.f dgeequ.f dgees.f  dgeesx.f dgeev.f  dgeevx.f
+   dgehd2.f dgehrd.f dgelq2.f dgelqf.f
+   dgels.f  dgelsd.f dgelss.f dgelsy.f dgeql2.f dgeqlf.f
+   dgeqp3.f dgeqr2.f dgeqr2p.f dgeqrf.f dgeqrfp.f dgerfs.f dgerq2.f dgerqf.f
+   dgesc2.f dgesdd.f dgesvd.f dgesvdx.f dgesvx.f dgetc2.f
+   dgetrf2.f dgetri.f
+   dggbak.f dggbal.f
+   dgges.f  dgges3.f dggesx.f dggev.f  dggev3.f dggevx.f
+   dggglm.f dgghrd.f dgghd3.f dgglse.f dggqrf.f
+   dggrqf.f dggsvd3.f dggsvp3.f dgtcon.f dgtrfs.f dgtsv.f
+   dgtsvx.f dgttrf.f dgttrs.f dgtts2.f dhgeqz.f
+   dhsein.f dhseqr.f dlabrd.f dlacon.f dlacn2.f
+   dlaein.f dlaexc.f dlag2.f  dlags2.f dlagtm.f dlagv2.f dlahqr.f
+   dlahr2.f dlaic1.f dlaln2.f dlals0.f dlalsa.f dlalsd.f
+   dlangb.f dlange.f dlangt.f dlanhs.f dlansb.f dlansp.f
+   dlansy.f dlantb.f dlantp.f dlantr.f dlanv2.f
+   dlapll.f dlapmt.f
+   dlaqgb.f dlaqge.f dlaqp2.f dlaqps.f dlaqsb.f dlaqsp.f dlaqsy.f
+   dlaqr0.f dlaqr1.f dlaqr2.f dlaqr3.f dlaqr4.f dlaqr5.f
+   dlaqtr.f dlar1v.f dlar2v.f iladlr.f iladlc.f
+   dlarf.f  dlarfb.f dlarfg.f dlarfgp.f dlarft.f dlarfx.f dlarfy.f
+   dlargv.f dlarrv.f dlartv.f
+   dlarz.f  dlarzb.f dlarzt.f dlasy2.f
+   dlasyf.f dlasyf_rook.f dlasyf_rk.f dlasyf_aa.f
+   dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrz.f
+   dopgtr.f dopmtr.f dorg2l.f dorg2r.f
+   dorgbr.f dorghr.f dorgl2.f dorglq.f dorgql.f dorgqr.f dorgr2.f
+   dorgrq.f dorgtr.f dorm2l.f dorm2r.f dorm22.f
+   dormbr.f dormhr.f dorml2.f dormlq.f dormql.f dormqr.f dormr2.f
+   dormr3.f dormrq.f dormrz.f dormtr.f dpbcon.f dpbequ.f dpbrfs.f
+   dpbstf.f dpbsv.f  dpbsvx.f
+   dpbtf2.f dpbtrf.f dpbtrs.f dpocon.f dpoequ.f dporfs.f dposv.f
+   dposvx.f dpotrf2.f dpotri.f dpotrs.f dpstrf.f dpstf2.f
+   dppcon.f dppequ.f
+   dpprfs.f dppsv.f  dppsvx.f dpptrf.f dpptri.f dpptrs.f dptcon.f
+   dpteqr.f dptrfs.f dptsv.f  dptsvx.f dpttrs.f dptts2.f drscl.f
+   dsbev.f  dsbevd.f dsbevx.f dsbgst.f dsbgv.f  dsbgvd.f dsbgvx.f
+   dsbtrd.f dspcon.f dspev.f  dspevd.f dspevx.f dspgst.f
+   dspgv.f  dspgvd.f dspgvx.f dsprfs.f dspsv.f  dspsvx.f dsptrd.f
+   dsptrf.f dsptri.f dsptrs.f dstegr.f dstein.f dstev.f  dstevd.f dstevr.f
+   dstevx.f dsycon.f dsyev.f  dsyevd.f dsyevr.f
+   dsyevx.f dsygs2.f dsygst.f dsygv.f  dsygvd.f dsygvx.f dsyrfs.f
+   dsysv.f  dsysvx.f
+   dsytd2.f dsytf2.f dsytrd.f dsytrf.f dsytri.f dsytrs.f dsytrs2.f
+   dsytri2.f dsytri2x.f dsyswapr.f
+   dsyconv.f dsyconvf.f dsyconvf_rook.f
+   dsytf2_rook.f dsytrf_rook.f dsytrs_rook.f
+   dsytri_rook.f dsycon_rook.f dsysv_rook.f
+   dsytf2_rk.f dsytrf_rk.f dsytrs_3.f
+   dsytri_3.f dsytri_3x.f dsycon_3.f dsysv_rk.f
+   dsysv_aa.f dsytrf_aa.f dsytrs_aa.f
+   dtbcon.f
+   dtbrfs.f dtbtrs.f dtgevc.f dtgex2.f dtgexc.f dtgsen.f
+   dtgsja.f dtgsna.f dtgsy2.f dtgsyl.f dtpcon.f dtprfs.f dtptri.f
+   dtptrs.f
+   dtrcon.f dtrevc.f dtrevc3.f dtrexc.f dtrrfs.f dtrsen.f dtrsna.f dtrsyl.f
+   dtrtrs.f dtzrzf.f dstemr.f
+   dsgesv.f dsposv.f dlag2s.f slag2d.f dlat2s.f
+   dlansf.f dpftrf.f dpftri.f dpftrs.f dsfrk.f dtfsm.f dtftri.f dtfttp.f
+   dtfttr.f dtpttf.f dtpttr.f dtrttf.f dtrttp.f
+   dgejsv.f dgesvj.f dgsvj0.f dgsvj1.f
+   dgeequb.f dsyequb.f dpoequb.f dgbequb.f
+   dbbcsd.f dlapmr.f dorbdb.f dorbdb1.f dorbdb2.f dorbdb3.f dorbdb4.f
+   dorbdb5.f dorbdb6.f dorcsd.f dorcsd2by1.f
+   dgeqrt.f dgeqrt2.f dgeqrt3.f dgemqrt.f
+   dtpqrt.f dtpqrt2.f dtpmqrt.f dtprfb.f
+   dgelqt.f dgelqt3.f dgemlqt.f
+   dgetsls.f dgeqr.f dlatsqr.f dlamtsqr.f dgemqr.f
+   dgelq.f dlaswlq.f dlamswlq.f dgemlq.f
+   dtplqt.f dtplqt2.f dtpmlqt.f
+   dsytrd_2stage.f dsytrd_sy2sb.f dsytrd_sb2st.F dsb2st_kernels.f
+   dsyevd_2stage.f dsyev_2stage.f dsyevx_2stage.f dsyevr_2stage.f
+   dsbev_2stage.f dsbevx_2stage.f dsbevd_2stage.f dsygv_2stage.f)
+
+set(DXLASRC dgesvxx.f dgerfsx.f dla_gerfsx_extended.f dla_geamv.f
+   dla_gercond.f dla_gerpvgrw.f dsysvxx.f dsyrfsx.f
+   dla_syrfsx_extended.f dla_syamv.f dla_syrcond.f dla_syrpvgrw.f
+   dposvxx.f dporfsx.f dla_porfsx_extended.f dla_porcond.f
+   dla_porpvgrw.f dgbsvxx.f dgbrfsx.f dla_gbrfsx_extended.f
+   dla_gbamv.f dla_gbrcond.f dla_gbrpvgrw.f dla_lin_berr.f dlarscl2.f
+   dlascl2.f dla_wwaddw.f)
+
+set(ZLASRC
+   zbdsqr.f zgbbrd.f zgbcon.f zgbequ.f zgbrfs.f zgbsv.f  zgbsvx.f
+   zgbtf2.f zgbtrf.f zgbtrs.f zgebak.f zgebal.f zgebd2.f zgebrd.f
+   zgecon.f zgeequ.f zgees.f  zgeesx.f zgeev.f  zgeevx.f
+   zgehd2.f zgehrd.f zgelq2.f zgelqf.f
+   zgels.f  zgelsd.f zgelss.f zgelsy.f zgeql2.f zgeqlf.f zgeqp3.f
+   zgeqr2.f zgeqr2p.f zgeqrf.f zgeqrfp.f zgerfs.f zgerq2.f zgerqf.f
+   zgesc2.f zgesdd.f zgesvd.f zgesvdx.f zgesvx.f
+   zgesvj.f zgejsv.f zgsvj0.f zgsvj1.f
+   zgetc2.f zgetrf2.f
+   zgetri.f
+   zggbak.f zggbal.f
+   zgges.f  zgges3.f zggesx.f zggev.f  zggev3.f zggevx.f
+   zggglm.f zgghrd.f zgghd3.f zgglse.f zggqrf.f zggrqf.f
+   zggsvd3.f zggsvp3.f
+   zgtcon.f zgtrfs.f zgtsv.f  zgtsvx.f zgttrf.f zgttrs.f zgtts2.f zhbev.f
+   zhbevd.f zhbevx.f zhbgst.f zhbgv.f  zhbgvd.f zhbgvx.f zhbtrd.f
+   zhecon.f zheev.f  zheevd.f zheevr.f zheevx.f zhegs2.f zhegst.f
+   zhegv.f  zhegvd.f zhegvx.f zherfs.f zhesv.f  zhesvx.f zhetd2.f
+   zhetf2.f zhetrd.f
+   zhetrf.f zhetri.f zhetri2.f zhetri2x.f zheswapr.f
+   zhetrs.f zhetrs2.f
+   zhetf2_rook.f zhetrf_rook.f zhetri_rook.f
+   zhetrs_rook.f zhecon_rook.f zhesv_rook.f
+   zhetf2_rk.f zhetrf_rk.f zhetri_3.f zhetri_3x.f
+   zhetrs_3.f zhecon_3.f zhesv_rk.f
+   zhesv_aa.f zhetrf_aa.f zhetrs_aa.f
+   zhgeqz.f zhpcon.f zhpev.f  zhpevd.f
+   zhpevx.f zhpgst.f zhpgv.f  zhpgvd.f zhpgvx.f zhprfs.f zhpsv.f
+   zhpsvx.f
+   zhptrd.f zhptrf.f zhptri.f zhptrs.f zhsein.f zhseqr.f zlabrd.f
+   zlacgv.f zlacon.f zlacn2.f zlacp2.f zlacpy.f zlacrm.f zlacrt.f zladiv.f
+   zlaed0.f zlaed7.f zlaed8.f
+   zlaein.f zlaesy.f zlaev2.f zlags2.f zlagtm.f
+   zlahef.f zlahef_rook.f zlahef_rk.f zlahef_aa.f zlahqr.f
+   zlahr2.f zlaic1.f zlals0.f zlalsa.f zlalsd.f zlangb.f zlange.f
+   zlangt.f zlanhb.f
+   zlanhe.f
+   zlanhp.f zlanhs.f zlanht.f zlansb.f zlansp.f zlansy.f zlantb.f
+   zlantp.f zlantr.f zlapll.f zlapmt.f zlaqgb.f zlaqge.f
+   zlaqhb.f zlaqhe.f zlaqhp.f zlaqp2.f zlaqps.f zlaqsb.f
+   zlaqr0.f zlaqr1.f zlaqr2.f zlaqr3.f zlaqr4.f zlaqr5.f
+   zlaqsp.f zlaqsy.f zlar1v.f zlar2v.f ilazlr.f ilazlc.f
+   zlarcm.f zlarf.f  zlarfb.f
+   zlarfg.f zlarfgp.f zlarft.f
+   zlarfx.f zlarfy.f zlargv.f zlarnv.f zlarrv.f zlartg.f zlartv.f
+   zlarz.f  zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f
+   zlassq.f zlasyf.f zlasyf_rook.f zlasyf_rk.f zlasyf_aa.f
+   zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrz.f
+   zpbcon.f zpbequ.f zpbrfs.f zpbstf.f zpbsv.f
+   zpbsvx.f zpbtf2.f zpbtrf.f zpbtrs.f zpocon.f zpoequ.f zporfs.f
+   zposv.f  zposvx.f zpotrf2.f zpotri.f zpotrs.f zpstrf.f zpstf2.f
+   zppcon.f zppequ.f zpprfs.f zppsv.f  zppsvx.f zpptrf.f zpptri.f zpptrs.f
+   zptcon.f zpteqr.f zptrfs.f zptsv.f  zptsvx.f zpttrf.f zpttrs.f zptts2.f
+   zrot.f   zspcon.f zsprfs.f zspsv.f
+   zspsvx.f zsptrf.f zsptri.f zsptrs.f zdrscl.f zstedc.f
+   zstegr.f zstein.f zsteqr.f zsycon.f
+   zsyrfs.f zsysv.f  zsysvx.f zsytf2.f zsytrf.f zsytri.f
+   zsytri2.f zsytri2x.f zsyswapr.f
+   zsytrs.f zsytrs2.f
+   zsyconv.f zsyconvf.f zsyconvf_rook.f
+   zsytf2_rook.f zsytrf_rook.f zsytrs_rook.f zsytrs_aa.f
+   zsytri_rook.f zsycon_rook.f zsysv_rook.f
+   zsytf2_rk.f zsytrf_rk.f zsytrf_aa.f zsytrs_3.f
+   zsytri_3.f zsytri_3x.f zsycon_3.f zsysv_rk.f zsysv_aa.f
+   ztbcon.f ztbrfs.f ztbtrs.f ztgevc.f ztgex2.f
+   ztgexc.f ztgsen.f ztgsja.f ztgsna.f ztgsy2.f ztgsyl.f ztpcon.f
+   ztprfs.f ztptri.f
+   ztptrs.f ztrcon.f ztrevc.f ztrevc3.f ztrexc.f ztrrfs.f ztrsen.f ztrsna.f
+   ztrsyl.f ztrtrs.f ztzrzf.f zung2l.f
+   zung2r.f zungbr.f zunghr.f zungl2.f zunglq.f zungql.f zungqr.f zungr2.f
+   zungrq.f zungtr.f zunm2l.f zunm2r.f zunmbr.f zunmhr.f zunml2.f zunm22.f
+   zunmlq.f zunmql.f zunmqr.f zunmr2.f zunmr3.f zunmrq.f zunmrz.f
+   zunmtr.f zupgtr.f
+   zupmtr.f izmax1.f dzsum1.f zstemr.f
+   zcgesv.f zcposv.f zlag2c.f clag2z.f zlat2c.f
+   zhfrk.f ztfttp.f zlanhf.f zpftrf.f zpftri.f zpftrs.f ztfsm.f ztftri.f
+   ztfttr.f ztpttf.f ztpttr.f ztrttf.f ztrttp.f
+   zgeequb.f zgbequb.f zsyequb.f zpoequb.f zheequb.f
+   zbbcsd.f zlapmr.f zunbdb.f zunbdb1.f zunbdb2.f zunbdb3.f zunbdb4.f
+   zunbdb5.f zunbdb6.f zuncsd.f zuncsd2by1.f
+   zgeqrt.f zgeqrt2.f zgeqrt3.f zgemqrt.f
+   ztpqrt.f ztpqrt2.f ztpmqrt.f ztprfb.f
+   ztplqt.f ztplqt2.f ztpmlqt.f
+   zgelqt.f zgelqt3.f zgemlqt.f
+   zgetsls.f zgeqr.f zlatsqr.f zlamtsqr.f zgemqr.f
+   zgelq.f zlaswlq.f zlamswlq.f zgemlq.f
+   zhetrd_2stage.f zhetrd_he2hb.f zhetrd_hb2st.F zhb2st_kernels.f
+   zheevd_2stage.f zheev_2stage.f zheevx_2stage.f zheevr_2stage.f
+   zhbev_2stage.f zhbevx_2stage.f zhbevd_2stage.f zhegv_2stage.f)
+
+set(ZXLASRC zgesvxx.f zgerfsx.f zla_gerfsx_extended.f zla_geamv.f
+   zla_gercond_c.f zla_gercond_x.f zla_gerpvgrw.f zsysvxx.f zsyrfsx.f
+   zla_syrfsx_extended.f zla_syamv.f zla_syrcond_c.f zla_syrcond_x.f
+   zla_syrpvgrw.f zposvxx.f zporfsx.f zla_porfsx_extended.f
+   zla_porcond_c.f zla_porcond_x.f zla_porpvgrw.f zgbsvxx.f zgbrfsx.f
+   zla_gbrfsx_extended.f zla_gbamv.f zla_gbrcond_c.f zla_gbrcond_x.f
+   zla_gbrpvgrw.f zhesvxx.f zherfsx.f zla_herfsx_extended.f
+   zla_heamv.f zla_hercond_c.f zla_hercond_x.f zla_herpvgrw.f
+   zla_lin_berr.f zlarscl2.f zlascl2.f zla_wwaddw.f)
+
+
+if(USE_XBLAS)
+  set(ALLXOBJ ${SXLASRC} ${DXLASRC} ${CXLASRC} ${ZXLASRC})
+endif()
+
+list(APPEND SLASRC DEPRECATED/sgegs.f DEPRECATED/sgegv.f
+  DEPRECATED/sgeqpf.f DEPRECATED/sgelsx.f DEPRECATED/sggsvd.f
+  DEPRECATED/sggsvp.f DEPRECATED/slahrd.f DEPRECATED/slatzm.f DEPRECATED/stzrqf.f)
+list(APPEND DLASRC DEPRECATED/dgegs.f DEPRECATED/dgegv.f
+  DEPRECATED/dgeqpf.f DEPRECATED/dgelsx.f DEPRECATED/dggsvd.f
+  DEPRECATED/dggsvp.f DEPRECATED/dlahrd.f DEPRECATED/dlatzm.f DEPRECATED/dtzrqf.f)
+list(APPEND CLASRC DEPRECATED/cgegs.f DEPRECATED/cgegv.f
+  DEPRECATED/cgeqpf.f DEPRECATED/cgelsx.f DEPRECATED/cggsvd.f
+  DEPRECATED/cggsvp.f DEPRECATED/clahrd.f DEPRECATED/clatzm.f DEPRECATED/ctzrqf.f)
+list(APPEND ZLASRC DEPRECATED/zgegs.f DEPRECATED/zgegv.f
+  DEPRECATED/zgeqpf.f DEPRECATED/zgelsx.f DEPRECATED/zggsvd.f
+  DEPRECATED/zggsvp.f DEPRECATED/zlahrd.f DEPRECATED/zlatzm.f DEPRECATED/ztzrqf.f)
+message(STATUS "Building deprecated routines")
+
+set(DSLASRC spotrs.f)

 set(ZCLASRC cpotrs.f)

-set(DLASRC
-  dgbbrd.f dgbcon.f dgbequ.f dgbrfs.f dgbsv.f
-  dgbsvx.f dgbtf2.f dgbtrf.f dgbtrs.f dgebak.f dgebal.f dgebd2.f
-  dgebrd.f dgecon.f dgeequ.f dgees.f  dgeesx.f dgeev.f  dgeevx.f
-  DEPRECATED/dgegs.f  DEPRECATED/dgegv.f  dgehd2.f dgehrd.f dgelq2.f dgelqf.f
-  dgels.f  dgelsd.f dgelss.f DEPRECATED/dgelsx.f dgelsy.f dgeql2.f dgeqlf.f
-  dgeqp3.f DEPRECATED/dgeqpf.f dgeqr2.f dgeqr2p.f dgeqrf.f dgeqrfp.f dgerfs.f
-  dgerq2.f dgerqf.f dgesc2.f dgesdd.f  dgesvd.f dgesvdx.f dgesvx.f
-  dgetc2.f dgetri.f dgetrf2.f
-  dggbak.f dggbal.f dgges.f  dgges3.f dggesx.f dggev.f dggev3.f  dggevx.f
-  dggglm.f dgghd3.f dgghrd.f dgglse.f dggqrf.f
-  dggrqf.f dggsvd3.f dggsvp3.f DEPRECATED/dggsvd.f DEPRECATED/dggsvp.f dgtcon.f dgtrfs.f dgtsv.f
-  dgtsvx.f dgttrf.f dgttrs.f dgtts2.f dhgeqz.f
-  dhsein.f dhseqr.f dlabrd.f dlacon.f dlacn2.f
-  dlaein.f dlaexc.f dlag2.f  dlags2.f dlagtm.f dlagv2.f dlahqr.f
-  DEPRECATED/dlahrd.f dlahr2.f dlaic1.f dlaln2.f dlals0.f dlalsa.f dlalsd.f
-  dlangb.f dlange.f dlangt.f dlanhs.f dlansb.f dlansp.f
-  dlansy.f dlantb.f dlantp.f dlantr.f dlanv2.f
-  dlapll.f dlapmt.f
-  dlaqgb.f dlaqge.f dlaqp2.f dlaqps.f dlaqsb.f dlaqsp.f dlaqsy.f
-  dlaqr0.f dlaqr1.f dlaqr2.f dlaqr3.f dlaqr4.f dlaqr5.f
-  dlaqtr.f dlar1v.f dlar2v.f iladlr.f iladlc.f
-  dlarf.f  dlarfb.f dlarfg.f dlarfgp.f dlarft.f dlarfx.f
-  dlargv.f dlarrv.f dlartv.f
-  dlarz.f  dlarzb.f dlarzt.f dlasy2.f dlasyf.f dlasyf_rook.f
-  dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrz.f DEPRECATED/dlatzm.f
-  dopgtr.f dopmtr.f dorg2l.f dorg2r.f
-  dorgbr.f dorghr.f dorgl2.f dorglq.f dorgql.f dorgqr.f dorgr2.f
-  dorgrq.f dorgtr.f dorm2l.f dorm2r.f dorm22.f
-  dormbr.f dormhr.f dorml2.f dormlq.f dormql.f dormqr.f dormr2.f
-  dormr3.f dormrq.f dormrz.f dormtr.f dpbcon.f dpbequ.f dpbrfs.f
-  dpbstf.f dpbsv.f  dpbsvx.f
-  dpbtf2.f dpbtrf.f dpbtrs.f dpocon.f dpoequ.f dporfs.f dposv.f
-  dposvx.f dpotrf2.f dpotrs.f dpstrf.f dpstf2.f
-  dppcon.f dppequ.f
-  dpprfs.f dppsv.f  dppsvx.f dpptrf.f dpptri.f dpptrs.f dptcon.f
-  dpteqr.f dptrfs.f dptsv.f  dptsvx.f dpttrs.f dptts2.f drscl.f
-  dsbev.f  dsbevd.f dsbevx.f dsbgst.f dsbgv.f  dsbgvd.f dsbgvx.f
-  dsbtrd.f  dspcon.f dspev.f  dspevd.f dspevx.f dspgst.f
-  dspgv.f  dspgvd.f dspgvx.f dsprfs.f dspsv.f  dspsvx.f dsptrd.f
-  dsptrf.f dsptri.f dsptrs.f dstegr.f dstein.f dstev.f  dstevd.f dstevr.f
-  dstevx.f
-  dsycon.f dsyev.f  dsyevd.f dsyevr.f
-  dsyevx.f dsygs2.f dsygst.f dsygv.f  dsygvd.f dsygvx.f dsyrfs.f
-  dsysv.f  dsysvx.f
-  dsytd2.f dsytf2.f dsytrd.f dsytrf.f dsytri.f dsytri2.f dsytri2x.f
-  dsyswapr.f dsytrs.f dsytrs2.f dsyconv.f
-  dsytf2_rook.f dsytrf_rook.f dsytrs_rook.f
-  dsytri_rook.f dsycon_rook.f dsysv_rook.f
-  dtbcon.f dtbrfs.f dtbtrs.f dtgevc.f dtgex2.f dtgexc.f dtgsen.f
-  dtgsja.f dtgsna.f dtgsy2.f dtgsyl.f dtpcon.f dtprfs.f dtptri.f
-  dtptrs.f
-  dtrcon.f dtrevc.f dtrevc3.f dtrexc.f dtrrfs.f dtrsen.f dtrsna.f dtrsyl.f
-  dtrtrs.f DEPRECATED/dtzrqf.f dtzrzf.f dstemr.f
-  dsgesv.f dsposv.f dlag2s.f slag2d.f dlat2s.f
-  dlansf.f dpftrf.f dpftri.f dpftrs.f dsfrk.f dtfsm.f dtftri.f dtfttp.f
-  dtfttr.f dtpttf.f dtpttr.f dtrttf.f dtrttp.f
-  dgejsv.f  dgesvj.f  dgsvj0.f  dgsvj1.f
-  dgeequb.f dsyequb.f dpoequb.f dgbequb.f
-  dbbcsd.f dlapmr.f dorbdb.f dorbdb1.f dorbdb2.f dorbdb3.f dorbdb4.f
-  dorbdb5.f dorbdb6.f dorcsd.f dorcsd2by1.f
-  dgeqrt.f dgeqrt2.f dgeqrt3.f dgemqrt.f
-  dtpqrt.f dtpqrt2.f dtpmqrt.f dtprfb.f dpotri.f
-  dgelq.f dgelqt.f dgelqt3.f dgemlq.f dgemlqt.f dgemqr.f dgeqr.f dgetsls.f
-  dlamswlq.f dlamtsqr.f dlaswlq.f dlatsqr.f dtplqt.f dtplqt2.f dtpmlqt.f
-  dsysv_aa.f dsytrf_aa.f dsytrs_aa.f dlasyf_aa.f dsytf2_rk.f dlasyf_rk.f
-  dsytrf_rk.f dsytrs_3.f dsycon_3.f dsytri_3.f dsytri_3x.f dsysv_rk.f
-  dsb2st_kernels.f dsbev_2stage.f dsbevd_2stage.f dsbevx_2stage.f
-  dsyev_2stage.f dsyevd_2stage.f dsyevr_2stage.f dsyevx_2stage.f
-  dsygv_2stage.f dsytrd_2stage.f dsytrd_sb2st.F dsytrd_sy2sb.f dlarfy.f
-)
-
-set(ZLASRC
-  zbdsqr.f zgbbrd.f zgbcon.f zgbequ.f zgbrfs.f zgbsv.f  zgbsvx.f
-  zgbtf2.f zgbtrf.f zgbtrs.f zgebak.f zgebal.f zgebd2.f zgebrd.f
-  zgecon.f zgeequ.f zgees.f  zgeesx.f zgeev.f  zgeevx.f
-  DEPRECATED/zgegs.f  DEPRECATED/zgegv.f  zgehd2.f zgehrd.f zgejsv.f zgelq2.f zgelqf.f
-  zgels.f  zgelsd.f zgelss.f DEPRECATED/zgelsx.f zgelsy.f zgeql2.f zgeqlf.f zgeqp3.f
-  DEPRECATED/zgeqpf.f zgeqr2.f zgeqr2p.f zgeqrf.f zgeqrfp.f zgerfs.f zgerq2.f zgerqf.f
-  zgesc2.f zgesdd.f zgesvd.f zgesvdx.f zgesvj.f zgesvx.f zgetc2.f
-  zgetri.f zgetrf2.f
-  zggbak.f zggbal.f zgges.f zgges3.f zggesx.f zggev.f zggev3.f zggevx.f zggglm.f
-  zgghd3.f zgghrd.f zgglse.f zggqrf.f zggrqf.f
-  DEPRECATED/zggsvd.f zggsvd3.f DEPRECATED/zggsvp.f zggsvp3.f
-  zgsvj0.f zgsvj1.f
-  zgtcon.f zgtrfs.f zgtsv.f  zgtsvx.f zgttrf.f zgttrs.f zgtts2.f zhbev.f
-  zhbevd.f zhbevx.f zhbgst.f zhbgv.f  zhbgvd.f zhbgvx.f zhbtrd.f
-  zhecon.f zheev.f  zheevd.f zheevr.f zheevx.f zhegs2.f zhegst.f
-  zhegv.f  zhegvd.f zhegvx.f zherfs.f zhesv.f  zhesvx.f zhetd2.f
-  zhetf2.f zhetrd.f
-  zhetrf.f zhetri.f zhetri2.f zhetri2x.f zheswapr.f
-  zhetrs.f zhetrs2.f
-  zhetf2_rook.f zhetrf_rook.f zhetri_rook.f zhetrs_rook.f zhecon_rook.f zhesv_rook.f
-  zhgeqz.f zhpcon.f zhpev.f  zhpevd.f
-  zhpevx.f zhpgst.f zhpgv.f  zhpgvd.f zhpgvx.f zhprfs.f zhpsv.f
-  zhpsvx.f
-  zhptrd.f zhptrf.f zhptri.f zhptrs.f zhsein.f zhseqr.f zlabrd.f
-  zlacgv.f zlacon.f zlacn2.f zlacp2.f zlacpy.f zlacrm.f zlacrt.f zladiv.f
-  zlaed0.f zlaed7.f zlaed8.f
-  zlaein.f zlaesy.f zlaev2.f zlags2.f zlagtm.f
-  zlahef.f zlahef_rook.f zlahqr.f
-  DEPRECATED/zlahrd.f zlahr2.f zlaic1.f zlals0.f zlalsa.f zlalsd.f zlangb.f zlange.f
-  zlangt.f zlanhb.f
-  zlanhe.f
-  zlanhp.f zlanhs.f zlanht.f zlansb.f zlansp.f zlansy.f zlantb.f
-  zlantp.f zlantr.f zlapll.f zlapmt.f zlaqgb.f zlaqge.f
-  zlaqhb.f zlaqhe.f zlaqhp.f zlaqp2.f zlaqps.f zlaqsb.f
-  zlaqr0.f zlaqr1.f zlaqr2.f zlaqr3.f zlaqr4.f zlaqr5.f
-  zlaqsp.f zlaqsy.f zlar1v.f zlar2v.f ilazlr.f ilazlc.f
-  zlarcm.f zlarf.f  zlarfb.f
-  zlarfg.f zlarft.f zlarfgp.f
-  zlarfx.f zlargv.f zlarnv.f zlarrv.f zlartg.f zlartv.f
-  zlarz.f  zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f
-  zlassq.f zlasyf.f zlasyf_rook.f zlasyf_aa.f
-  zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrz.f DEPRECATED/zlatzm.f
-  zpbcon.f zpbequ.f zpbrfs.f zpbstf.f zpbsv.f
-  zpbsvx.f zpbtf2.f zpbtrf.f zpbtrs.f zpocon.f zpoequ.f zporfs.f
-  zposv.f  zposvx.f zpotrf2.f zpotrs.f zpstrf.f zpstf2.f
-  zppcon.f zppequ.f zpprfs.f zppsv.f  zppsvx.f zpptrf.f zpptri.f zpptrs.f
-  zptcon.f zpteqr.f zptrfs.f zptsv.f  zptsvx.f zpttrf.f zpttrs.f zptts2.f
-  zrot.f   zspcon.f zsprfs.f zspsv.f
-  zspsvx.f zsptrf.f zsptri.f zsptrs.f zdrscl.f zstedc.f
-  zstegr.f zstein.f zsteqr.f
-  zsycon.f zsysv_aa.f
-  zsyrfs.f zsysv.f  zsysvx.f zsytf2.f zsytrf.f zsytri.f zsytri2.f zsytri2x.f
-  zsyswapr.f zsytrs.f zsytrs_aa.f zsytrs2.f zsyconv.f
-  zsytf2_rook.f zsytrf_rook.f zsytrs_rook.f
-  zsytri_rook.f zsycon_rook.f zsysv_rook.f
-  ztbcon.f ztbrfs.f ztbtrs.f ztgevc.f ztgex2.f
-  ztgexc.f ztgsen.f ztgsja.f ztgsna.f ztgsy2.f ztgsyl.f ztpcon.f
-  ztprfs.f ztptri.f
-  ztptrs.f ztrcon.f ztrevc.f ztrevc3.f ztrexc.f ztrrfs.f ztrsen.f ztrsna.f
-  ztrsyl.f ztrtrs.f DEPRECATED/ztzrqf.f ztzrzf.f zung2l.f
-  zung2r.f zungbr.f zunghr.f zungl2.f zunglq.f zungql.f zungqr.f zungr2.f
-  zungrq.f zungtr.f zunm2l.f zunm2r.f zunmbr.f zunmhr.f zunm22.f zunml2.f
-  zunmlq.f zunmql.f zunmqr.f zunmr2.f zunmr3.f zunmrq.f zunmrz.f
-  zunmtr.f zupgtr.f
-  zupmtr.f izmax1.f dzsum1.f zstemr.f
-  zcgesv.f zcposv.f zlag2c.f clag2z.f zlat2c.f
-  zhfrk.f ztfttp.f zlanhf.f zpftrf.f zpftri.f zpftrs.f ztfsm.f ztftri.f
-  ztfttr.f ztpttf.f ztpttr.f ztrttf.f ztrttp.f
-  zgeequb.f zgbequb.f zsyequb.f zpoequb.f zheequb.f
-  zbbcsd.f zlapmr.f zunbdb.f zunbdb1.f zunbdb2.f zunbdb3.f zunbdb4.f
-  zunbdb5.f zunbdb6.f zuncsd.f zuncsd2by1.f
-  zgeqrt.f zgeqrt2.f zgeqrt3.f zgemqrt.f
-  ztpqrt.f ztpqrt2.f ztpmqrt.f ztprfb.f zpotri.f
-  zgelq.f zgelqt.f zgelqt3.f zgemlq.f zgemlqt.f zgemqr.f zgeqr.f zgetsls.f
-  zlamswlq.f zlamtsqr.f zlaswlq.f zlatsqr.f ztplqt.f ztplqt2.f ztpmlqt.f
-  zhesv_aa.f zhetrf_aa.f zhetrs_aa.f zlahef_aa.f zsytf2_rk.f zlasyf_rk.f
-  zsytrf_aa.f zsytrf_rk.f zsytrs_3.f zsycon_3.f zsytri_3.f zsytri_3x.f zsysv_rk.f
-  zhetf2_rk.f zlahef_rk.f zhetrf_rk.f zhetrs_3.f zhecon_3.f zhetri_3.f
-  zhetri_3x.f zhesv_rk.f zhb2st_kernels.f zhbev_2stage.f zhbevd_2stage.f
-  zhbevx_2stage.f zheev_2stage.f zheevd_2stage.f zheevr_2stage.f
-  zheevx_2stage.f zhegv_2stage.f zhetrd_2stage.f zhetrd_hb2st.F zhetrd_he2hb.f
-  zlarfy.f
-)
-
-set(LA_REL_SRC ${ALLAUX})
-if (BUILD_SINGLE)
-  list(APPEND LA_REL_SRC ${SLASRC} ${DSLASRC} ${SCLAUX})
-endif ()
-
-if (BUILD_DOUBLE)
-  list(APPEND LA_REL_SRC ${DLASRC} ${DSLASRC} ${DZLAUX})
-endif ()
-
-if (BUILD_COMPLEX)
-  list(APPEND LA_REL_SRC ${CLASRC} ${ZCLASRC} ${SCLAUX})
-endif ()
-
-if (BUILD_COMPLEX16)
-  list(APPEND LA_REL_SRC ${ZLASRC} ${ZCLASRC} ${DZLAUX})
-endif ()
+set(SCATGEN slatm1.f slaran.f slarnd.f)
+
+set(SMATGEN slatms.f slatme.f slatmr.f slatmt.f
+   slagge.f slagsy.f slakf2.f slarge.f slaror.f slarot.f slatm2.f
+   slatm3.f slatm5.f slatm6.f slatm7.f slahilb.f)
+
+set(CMATGEN clatms.f clatme.f clatmr.f clatmt.f
+   clagge.f claghe.f clagsy.f clakf2.f clarge.f claror.f clarot.f
+   clatm1.f clarnd.f clatm2.f clatm3.f clatm5.f clatm6.f clahilb.f slatm7.f)
+
+set(DZATGEN dlatm1.f dlaran.f dlarnd.f)
+
+set(DMATGEN dlatms.f dlatme.f dlatmr.f dlatmt.f
+   dlagge.f dlagsy.f dlakf2.f dlarge.f dlaror.f dlarot.f dlatm2.f
+   dlatm3.f dlatm5.f dlatm6.f dlatm7.f dlahilb.f)
+
+set(ZMATGEN zlatms.f zlatme.f zlatmr.f zlatmt.f
+  zlagge.f zlaghe.f zlagsy.f zlakf2.f zlarge.f zlaror.f zlarot.f
+  zlatm1.f zlarnd.f zlatm2.f zlatm3.f zlatm5.f zlatm6.f zlahilb.f dlatm7.f)
+
+if(BUILD_SINGLE)
+  set(LA_REL_SRC ${SLASRC} ${DSLASRC} ${ALLAUX} ${SCLAUX})
+  set(LA_GEN_SRC ${SMATGEN} ${SCATGEN})
+  message(STATUS "Building Single Precision")
+endif()
+if(BUILD_DOUBLE)
+  set(LA_REL_SRC ${LA_REL_SRC} ${DLASRC} ${DSLASRC} ${ALLAUX} ${DZLAUX})
+  set(LA_GEN_SRC ${LA_GEN_SRC} ${DMATGEN} ${DZATGEN})
+  message(STATUS "Building Double Precision")
+endif()
+if(BUILD_COMPLEX)
+  set(LA_REL_SRC ${LA_REL_SRC} ${CLASRC} ${ZCLASRC} ${ALLAUX} ${SCLAUX})
+  SET(LA_GEN_SRC ${LA_GEN_SRC} ${CMATGEN} ${SCATGEN})
+  message(STATUS "Building Complex Precision")
+endif()
+if(BUILD_COMPLEX16)
+  set(LA_REL_SRC ${LA_REL_SRC} ${ZLASRC} ${ZCLASRC} ${ALLAUX} ${DZLAUX})
+  SET(LA_GEN_SRC ${LA_GEN_SRC} ${ZMATGEN} ${DZATGEN})
+  message(STATUS "Building Double Complex Precision")
+endif()

 # add lapack-netlib folder to the sources
 set(LA_SOURCES "")
 foreach (LA_FILE ${LA_REL_SRC})
   list(APPEND LA_SOURCES "${NETLIB_LAPACK_DIR}/SRC/${LA_FILE}")
 endforeach ()
+foreach (LA_FILE ${LA_GEN_SRC})
+  list(APPEND LA_SOURCES "${NETLIB_LAPACK_DIR}/TESTING/MATGEN/${LA_FILE}")
+endforeach ()
 set_source_files_properties(${LA_SOURCES} PROPERTIES COMPILE_FLAGS "${LAPACK_FFLAGS}")


Set needed functions on Windows to true for now.

git-svn-id: b1dee0d48e635e16c3b356ce77271b225d4db9f7@247 7dcaeef0-15fb-0310-b436-a5af3365683c

--- ConfigureChecks.cmake
+++ ConfigureChecks.cmake
@@ -25,10 +25,16 @@

 # FUNCTIONS
 check_function_exists(cfmakeraw HAVE_CFMAKERAW)
-check_function_exists(getaddrinfo HAVE_GETADDRINFO)
-check_function_exists(gethostbyname HAVE_GETHOSTBYNAME)
-check_function_exists(poll HAVE_POLL)
-check_function_exists(select HAVE_SELECT)
+if (WIN32)
+  set(HAVE_GETADDRINFO TRUE)
+  set(HAVE_GETHOSTBYNAME TRUE)
+  set(HAVE_SELECT TRUE)
+else (WIN32)
+  check_function_exists(getaddrinfo HAVE_GETADDRINFO)
+  check_function_exists(gethostbyname HAVE_GETHOSTBYNAME)
+  check_function_exists(poll HAVE_POLL)
+  check_function_exists(select HAVE_SELECT)
+endif (WIN32)

 # LIBRARIES
 if (CRYPTO_LIBRARY)


Unbreak compilation for kdesupport users with CppUnit by commenting out the test suite.

This needs to be fixed to fail gracefully for users without CppUnit available.

CCMAIL:lalinsky@gmail.com

git-svn-id: 7928e23e4d58c5ca14aa7b47c53aeff82ee1dd0c@735160 283d02a7-25f6-0310-bc7c-ecb5cbfe19da

--- ConfigureChecks.cmake
+++ ConfigureChecks.cmake
@@ -20,5 +20,6 @@
 	SET(HAVE_ZLIB 0)
 ENDIF(ZLIB_FOUND)

-SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
-FIND_PACKAGE(CppUnit)
+# Currently breaks CMake when CppUnit is not present.
+#SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
+#FIND_PACKAGE(CppUnit)


BUG: KWStyle must be in the path.   Adding /usr/local/bin to the path - ugh!

--- DashboardScripts/tubetk_style.cmake
+++ DashboardScripts/tubetk_style.cmake
@@ -31,6 +31,8 @@

 include( ${CTEST_SCRIPT_DIRECTORY}/tubetk_cmakecache.cmake )

+set( ENV{PATH} "$ENV{PATH}:/usr/local/bin" )
+
 ctest_start( "${RUN_MODEL}" )
 ctest_configure( BUILD "${CTEST_BINARY_DIRECTORY}" )
 ctest_read_custom_files( "${CTEST_BINARY_DIRECTORY}" )


Fixes bad plugin name in cmake test

Fixes bad plugin name in cmake test

--- romanesco/plugins/spark/plugin.cmake
+++ romanesco/plugins/spark/plugin.cmake
@@ -1,5 +1,5 @@
 set(SPARK_TEST_MASTER_URL  "" CACHE STRING "Spark master URL")
 if (SPARK_TEST_MASTER_URL)
   add_python_test(spark PLUGIN spark PLUGINS_ENABLED spark)
-  set_property(TEST spark APPEND PROPERTY ENVIRONMENT "SPARK_TEST_MASTER_URL=${SPARK_TEST_MASTER_URL}")
+  set_property(TEST plugins.spark.spark APPEND PROPERTY ENVIRONMENT "SPARK_TEST_MASTER_URL=${SPARK_TEST_MASTER_URL}")
 endif()


Fix Magellan OS X finder

Fix Magellan OS X finder

--- FindMAGELLAN.cmake
+++ FindMAGELLAN.cmake
@@ -23,9 +23,11 @@
 endif()

 if(MAGELLAN_API STREQUAL "Carbon")
-  find_path(MAGELLAN_INCLUDE_DIR 3DconnexionClient/ConnexionClientAPI.h
-    PATHS /usr/include /usr/local/include /opt/local/include)
-  set(MAGELLAN_LIBRARY)
+  find_path(MAGELLAN_INCLUDE_DIR 3DconnexionClient/ConnexionClientAPI.h)
+  find_library(MAGELLAN_LIBRARY 3DconnexionClient)
+
+  # WAR cmake bug:
+  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -F/Library/Frameworks")
 elseif(MAGELLAN_API STREQUAL "spnav")
   find_path(MAGELLAN_INCLUDE_DIR spnav.h PATHS /usr/include /usr/local/include)
   find_library(MAGELLAN_LIBRARY spnav PATHS /usr/lib /usr/local/lib)


Fixing ParMETIS detection

Fixing ParMETIS detection

--- cmake/external_projects/ElMath/ParMETIS.cmake
+++ cmake/external_projects/ElMath/ParMETIS.cmake
@@ -7,6 +7,7 @@
 #  http://opensource.org/licenses/BSD-2-Clause
 #
 include(ExternalProject)
+include(ElCheckFunctionExists)
 include(ElLibraryName)

 set(USE_FOUND_PARMETIS FALSE)
@@ -15,14 +16,21 @@
   find_package(ParMETIS)
   if(PARMETIS_FOUND)
     include(CheckFunctionExists)
-    set(CMAKE_REQUIRED_LIBRARIES ${PARMETIS_LIBRARIES})
-    check_function_exists(ParMETIS_ComputeVertexSeparator
+    set(CMAKE_REQUIRED_FLAGS "${MPI_C_COMPILE_FLAGS}")
+    set(CMAKE_REQUIRED_LINKER_FLAGS
+      "${MPI_LINK_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}")
+    set(CMAKE_REQUIRED_INCLUDES ${MPI_C_INCLUDE_PATH})
+    set(CMAKE_REQUIRED_LIBRARIES ${PARMETIS_LIBRARIES} ${MPI_C_LIBRARIES})
+    El_check_function_exists(ParMETIS_ComputeVertexSeparator
       HAVE_PARMETIS_VERTEXSEP)
     if(HAVE_PARMETIS_VERTEXSEP)
       set(USE_FOUND_PARMETIS TRUE)
     else()
       message(WARNING "ParMETIS was found, but the custom add-on ParMETIS_ComputeVertexSeparator was not, so a custom version of the library must be built")
     endif()
+    unset(CMAKE_REQUIRED_FLAGS)
+    unset(CMAKE_REQUIRED_LINKER_FLAGS)
+    unset(CMAKE_REQUIRED_INCLUDES)
     unset(CMAKE_REQUIRED_LIBRARIES)
   endif()
 endif()


[cmake] adds macro for clang format target

--- cmake/modules/DuneStuffMacros.cmake
+++ cmake/modules/DuneStuffMacros.cmake
@@ -143,3 +143,22 @@
         message(WARNING "not adding analyze target because clang-check is missing")
     endif(EXISTS ${ANALYZER})
 endmacro(add_analyze)
+
+macro(add_format)
+    find_program(FORMAT NAMES clang-format clang-format-3.4)
+    if(EXISTS ${FORMAT})
+        message(STATUS "adding format target")
+        add_custom_target( format SOURCES ${ARGN} )
+        foreach(_file ${ARGN})
+            string(REPLACE "/" "_" fn ${_file})
+            if(NOT EXISTS ${_file})
+                # 'fix' relative source defs
+                set(_file ${CMAKE_CURRENT_SOURCE_DIR}/${_file})
+            endif(NOT EXISTS ${_file})
+            add_custom_target("format_${fn}" ${FORMAT} -i -style=file ${_file} )
+            add_dependencies( format "format_${fn}" )
+        endforeach(_file )
+    else()
+        message(WARNING "not adding format target because clang-format is missing")
+    endif(EXISTS ${FORMAT})
+endmacro(add_format)


add/update copyright (per guidelines)

add/update copyright (per guidelines)

--- cmake/modules/hunter_download.cmake
+++ cmake/modules/hunter_download.cmake
@@ -1,5 +1,6 @@
-# Copyright (c) 2013-2017, Ruslan Baratov
-# Copyright (c) 2015, Aaditya Kalsi
+# Copyright (c) 2013-2018, Ruslan Baratov
+# Copyright (c) 2015-2018, Aaditya Kalsi
+# Copyright (c) 2018, David Hirvonen
 # All rights reserved.

 include(CMakeParseArguments) # cmake_parse_arguments


REFAC: update diapotb git tag (use_otb_datetime branch)

--- Modules/Remote/diapotb.remote.cmake
+++ Modules/Remote/diapotb.remote.cmake
@@ -22,5 +22,5 @@
 otb_fetch_module(DiapOTBModule
   "OTB module for SAR processing in Diapason."
   GIT_REPOSITORY https://gitlab.orfeo-toolbox.org/remote_modules/diapotb.git
-  GIT_TAG 69bc3588a51b9a52291e415f0822dadd8a8951fc
+  GIT_TAG d84b9accbba81d966c51410dee32c866295594b1
 )


a fix for dmg package generation (mac os)

git-svn-id: de9bbed4c30e0eb58fe8e7d66f5c80b71699a07c@1354 bf01a9d7-0df3-0310-8ad4-b1c94d9ae2d5

--- Numerics/cmake/SiconosProject.cmake
+++ Numerics/cmake/SiconosProject.cmake
@@ -228,22 +228,27 @@
   SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PACKAGE_DESCRIPTION_SUMMARY}")
   SET(CPACK_PACKAGE_DESCRIPTION "${PACKAGE_DESCRIPTION}")
   SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
-  SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
+
+  # a package generation failure on mac ...
+  IF(APPLE)
+  ELSE(APPLE)
+    SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
+  ENDIF(APPLE)

   IF(PIPOL_IMAGE)
     SET(CPACK_PACKAGE_FILE_NAME "${PROJECT_PACKAGE_NAME}-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-r${SVN_REVISION}-${CMAKE_BUILD_TYPE}-${PIPOL_IMAGE_NAME}")
   ENDIF(PIPOL_IMAGE)
   SET(CPACK_PACKAGE_NAME "${PROJECT_PACKAGE_NAME}")
-
+
   SET(CPACK_PACKAGE_VERSION_MAJOR "${MAJOR_VERSION}")
   SET(CPACK_PACKAGE_VERSION_MINOR "${MINOR_VERSION}")
   SET(CPACK_PACKAGE_VERSION_PATCH "${PATCH_VERSION}")
-  SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
-
+  SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake_${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
+
   SET(CPACK_PACKAGE_CONTACT "Siconos development team")
-
+
   SET(CPACK_DEBIAN_PACKAGE_DEPENDS ${DEBIAN_PACKAGE_DEPENDS})
-
+
   INCLUDE(CPack)

 ENDMACRO(SICONOS_PROJECT)


self host hdf5

self host hdf5

--- version_config.cmake
+++ version_config.cmake
@@ -55,7 +55,7 @@
 else()
   set(HDF5_REQUIRED_VERSION 1.8)
 endif()
-set(HDF5_URL https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.1/src/hdf5-1.10.1.tar.gz)
+set(HDF5_URL https://www.ccppetmr.ac.uk/sites/www.ccppetmr.ac.uk/files/downloads/hdf5-1.10.1.tar.gz)
 set(HDF5_MD5 43a2f9466702fb1db31df98ae6677f15 )

 ## SWIG


BUG: update git tag for the TemporalGapFilling remote module

--- Modules/Remote/temporal-gapfilling.remote.cmake
+++ Modules/Remote/temporal-gapfilling.remote.cmake
@@ -25,6 +25,6 @@
 A more detailed description can be found on the project website:
 https://gitlab.orfeo-toolbox.org/jinglada/temporalgapfilling
 "
-  GIT_REPOSITORY https://gitlab.orfeo-toolbox.org/jinglada/temporalgapfilling.git
-  GIT_TAG master
+  GIT_REPOSITORY https://gitlab.orfeo-toolbox.org/ctraizet/temporalgapfilling.git
+  GIT_TAG cd0aa8b18369140a270ec64659543a53167ef641
 )


going to stick with c++17 until c++20 support is better

--- build/common.cmake
+++ build/common.cmake
@@ -1,5 +1,5 @@
 set_property(GLOBAL PROPERTY USE_FOLDERS ON)
-set(CMAKE_CXX_STANDARD 20)
+set(CMAKE_CXX_STANDARD 17)

 add_compile_options(/W4)
 add_compile_options(/WX)


improved mxnet find script.

improved mxnet find script.

--- Plugins/MXnet/cmake/Findmxnet.cmake
+++ Plugins/MXnet/cmake/Findmxnet.cmake
@@ -1,16 +1,59 @@

 set(mxnet_ROOT "" CACHE PATH "Root directory of mxnet install")
-rcc_find_library(mxnet_LIBRARY_RELEASE mxnet PATHS ${mxnet_ROOT}/lib ${mxnet_ROOT}/build)
-rcc_find_library(mxnet_LIBRARY_DEBUG mxnetd PATHS ${mxnet_ROOT}/lib ${mxnet_ROOT}/build)
+rcc_find_library(mxnet_LIBRARY_RELEASE mxnet
+  PATHS
+    ${mxnet_ROOT}/lib
+    ${mxnet_ROOT}/build
+    ${mxnet_ROOT}/RelWithDebInfo
+    ${mxnet_ROOT}/Release
+)

-rcc_find_path(mxnet_INCLUDE mxnet/mxrtc.h PATHS ${mxnet_ROOT}/include)
-rcc_find_path(mxnet_BIN_DIR mxnet.dll PATHS ${mxnet_ROOT}/bin)
+rcc_find_library(mxnet_LIBRARY_DEBUG mxnetd
+  PATHS
+    ${mxnet_ROOT}/lib
+    ${mxnet_ROOT}/build
+    ${mxnet_ROOT}/Debug
+)

-rcc_find_path(dmlc_INCLUDE dmlc/base.h PATHS ${mxnet_ROOT}/dmlc-core/include)
-rcc_find_path(mshadow_INCLUDE mshadow/tensor.h PATHS ${mxnet_ROOT}/mshadow)
+rcc_find_path(mxnet_INCLUDE mxnet/mxrtc.h
+  PATHS
+    ${mxnet_ROOT}/include
+    ${mxnet_ROOT}/../include
+)

-rcc_find_library(dmlc_CORE_LIBRARY_RELEASE dmlccore PATHS ${mxnet_ROOT}/lib ${mxnet_ROOT}/build/dmlc-core)
-rcc_find_library(dmlc_CORE_LIBRARY_DEBUG dmlccored PATHS ${mxnet_ROOT}/lib ${mxnet_ROOT}/build/dmlc-core)
+rcc_find_path(mxnet_BIN_DIR mxnet.dll
+  PATHS
+    ${mxnet_ROOT}/bin
+    ${mxnet_ROOT}/Debug
+    ${mxnet_ROOT}/RelWithDebInfo
+    ${mxnet_ROOT}/Release
+)
+
+rcc_find_path(dmlc_INCLUDE dmlc/base.h
+  PATHS
+    ${mxnet_ROOT}/dmlc-core/include
+    ${mxnet_ROOT}/../dmlc-core/include
+)
+
+rcc_find_path(mshadow_INCLUDE mshadow/tensor.h
+  PATHS
+  ${mxnet_ROOT}/mshadow
+  ${mxnet_ROOT}/../mshadow
+)
+
+rcc_find_library(dmlc_CORE_LIBRARY_RELEASE dmlccore
+  PATHS
+    ${mxnet_ROOT}/lib
+    ${mxnet_ROOT}/build/dmlc-core
+    ${mxnet_ROOT}/build/dmlc-core/RelWithDebInfo
+    ${mxnet_ROOT}/build/dmlc-core/Release
+)
+
+rcc_find_library(dmlc_CORE_LIBRARY_DEBUG dmlccored
+  PATHS
+    ${mxnet_ROOT}/lib
+    ${mxnet_ROOT}/build/dmlc-core/Debug
+)

 find_package(OpenBLAS QUIET)


version 0.0.0.4 ;)

version 0.0.0.4 ;)

--- PluginConfig.cmake
+++ PluginConfig.cmake
@@ -11,13 +11,13 @@

 # ActiveX constants:
 set(FBTYPELIB_NAME FBVLCLib)
-set(FBTYPELIB_DESC "FBVLC 0.0.0.3 Type Library")
+set(FBTYPELIB_DESC "FBVLC 0.0.0.4 Type Library")
 set(IFBControl_DESC "FBVLC Control Interface")
 set(FBControl_DESC "FBVLC Control Class")
 set(IFBComJavascriptObject_DESC "FBVLC IComJavascriptObject Interface")
 set(FBComJavascriptObject_DESC "FBVLC ComJavascriptObject Class")
 set(IFBComEventSource_DESC "FBVLC IFBComEventSource Interface")
-set(AXVERSION_NUM "0.0.0.3")
+set(AXVERSION_NUM "0.0.0.4")

 # NOTE: THESE GUIDS *MUST* BE UNIQUE TO YOUR PLUGIN/ACTIVEX CONTROL!  YES, ALL OF THEM!
 set(FBTYPELIB_GUID a6283703-2b52-5487-b262-119d9bf8c79c)
@@ -34,7 +34,7 @@
 # strings
 set(FBSTRING_CompanyName "RSATom")
 set(FBSTRING_PluginDescription "VLC Web Plugin (powered by FireBreath)")
-set(FBSTRING_PLUGIN_VERSION "0.0.0.3")
+set(FBSTRING_PLUGIN_VERSION "0.0.0.4")
 set(FBSTRING_LegalCopyright "Copyright 2012 RSATom")
 set(FBSTRING_PluginFileName "np${PLUGIN_NAME}.dll")
 set(FBSTRING_ProductName "FireBreathed VLC")


Reset the CDashboard location to netcdf-c from netcdf-staging.

--- CTestConfig.cmake
+++ CTestConfig.cmake
@@ -13,5 +13,5 @@

 set(CTEST_DROP_METHOD "http")
 set(CTEST_DROP_SITE "my.cdash.org")
-set(CTEST_DROP_LOCATION "/submit.php?project=netcdf-staging")
+set(CTEST_DROP_LOCATION "/submit.php?project=netcdf-c")
 set(CTEST_DROP_SITE_CDASH TRUE)


remove unnecessary cmake code

remove unnecessary cmake code

--- plugin.cmake
+++ plugin.cmake
@@ -32,23 +32,6 @@
   set_property(TEST "eslint_${name}" PROPERTY LABELS girder_browser)
 endfunction()

-add_standard_plugin_tests(NO_SERVER)
-
-# Fetch external data
-set(_data_files "")
-foreach(_data_file
-  "plugins/isic_archive/test_1_small_1.jpg"
-  "plugins/isic_archive/test_1_small_2.jpg"
-  "plugins/isic_archive/test_1_small_3.jpg"
-  "plugins/isic_archive/test_1_large_1.jpg"
-  "plugins/isic_archive/test_1_large_2.jpg"
-  "plugins/isic_archive/test_1_metadata.csv"
-)
-  list(APPEND _data_files "DATA{${GIRDER_EXTERNAL_DATA_BUILD_PATH}/${_data_file}}")
-endforeach()
-girder_ExternalData_expand_arguments("${name}_data" _tmp ${_data_files})
-girder_ExternalData_add_target("${name}_data")
-
 # External client static analysis
 add_eslint_test_ext(
   isic_archive_external


Bugfix: Actually install the boost headers...

git-svn-id: fbbf69ba8011aca0e74e1c67904b11cccbdbe66b@26849 0785d39b-7218-0410-832d-ea1e28bc413d

--- deal.II/cmake/configure/configure_boost.cmake
+++ deal.II/cmake/configure/configure_boost.cmake
@@ -74,7 +74,7 @@
   INSTALL(DIRECTORY ${boost_folder}/include/boost
     DESTINATION ${DEAL_II_INCLUDE_RELDIR}/deal.II/contrib
     COMPONENT library
-    FILES_MATCHING PATTERN "*.h"
+    FILES_MATCHING PATTERN "*.hh"
     PATTERN ".svn" EXCLUDE
     )


fix CMake builds (again)

fix CMake builds (again)

Former-commit-id: beb5f9f8ff2549085edf6873481fc0a5d9504e9a

--- HalideGenerator.cmake
+++ HalideGenerator.cmake
@@ -209,11 +209,15 @@

   halide_generator_genfiles_dir(${args_STUB_GENERATOR_TARGET} GENFILES_DIR)

-  set(STUB_HDR "${GENFILES_DIR}/${args_STUB_GENERATOR_TARGET}.stub.h")
+  # STUBNAME_BASE = strip_suffix(STUB_GENERATOR_TARGET, ".generator")
+  string(REGEX REPLACE "\\.generator*$" "" STUBNAME_BASE ${args_STUB_GENERATOR_TARGET})
+
+  set(STUB_HDR "${GENFILES_DIR}/${STUBNAME_BASE}.stub.h")

   set(GENERATOR_EXEC_ARGS "-o" "${GENFILES_DIR}" "-e" "cpp_stub")
   if (NOT ${args_STUB_GENERATOR_NAME} STREQUAL "")
     list(APPEND GENERATOR_EXEC_ARGS "-g" "${args_STUB_GENERATOR_NAME}")
+    list(APPEND GENERATOR_EXEC_ARGS "-n" "${STUBNAME_BASE}")
   endif()

   set(STUBGEN "${args_STUB_GENERATOR_TARGET}.exec_stub_generator")


CMake: use relative paths in resources.cfg on OSX

--- CMake/InstallResources.cmake
+++ CMake/InstallResources.cmake
@@ -24,7 +24,7 @@
     set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
     set(OGRE_TEST_MEDIA_DIR_REL "../../Tests/${OGRE_MEDIA_PATH}")
   else()
-    set(OGRE_MEDIA_DIR_REL "${CMAKE_INSTALL_PREFIX}/${OGRE_MEDIA_PATH}")
+    set(OGRE_MEDIA_DIR_REL "../${OGRE_MEDIA_PATH}")
     set(OGRE_TEST_MEDIA_DIR_REL "${CMAKE_INSTALL_PREFIX}/Tests/Media")
   endif()
   # these are resolved relative to the app bundle


iOS: Guard a media dir variable update since we want to preserve the relative paths on iOS

--- CMake/InstallResources.cmake
+++ CMake/InstallResources.cmake
@@ -21,7 +21,7 @@
   set(OGRE_SAMPLES_DIR_DBG ".")
   set(OGRE_CFG_INSTALL_PATH "bin")
 elseif (APPLE)
-  set(OGRE_MEDIA_PATH "media")
+  set(OGRE_MEDIA_PATH "Media")
   if(OGRE_BUILD_PLATFORM_IPHONE)
     set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}")
     set(OGRE_MEDIA_DIR_DBG "${OGRE_MEDIA_PATH}")
@@ -142,8 +142,11 @@

 # CREATE CONFIG FILES - BUILD DIR VERSIONS
-set(OGRE_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Samples/Media")
-set(OGRE_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Samples/Media")
+if (NOT OGRE_BUILD_PLATFORM_IPHONE)
+  set(OGRE_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Samples/Media")
+  set(OGRE_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Samples/Media")
+endif ()
+
 if (WIN32)
   set(OGRE_PLUGIN_DIR_REL ".")
   set(OGRE_PLUGIN_DIR_DBG ".")


REFAC: add requiered version in doxygen

REFAC: add requiered version in doxygen

--- CMake/OTBModuleDoxygen.cmake
+++ CMake/OTBModuleDoxygen.cmake
@@ -26,7 +26,7 @@
 # python is needed to verify the presence of the module name in the doxygen header
 # Don't require it to not force the developers to install python to be able to build
 # OTB. The tests will simply not be run if python is not available.
-find_package(PythonInterp)
+find_package( PythonInterp 3 REQUIRED)

 macro( otb_module_doxygen _name )


forward cake_pkg INSTALL/CLONE to CAKE_PKG_PROJECT if defined

--- Modules/CakePkg.cmake
+++ Modules/CakePkg.cmake
@@ -360,16 +360,40 @@
       string(REPLACE "\t" "\;" ARG_${i} "${ARG_${i}}")
     endforeach()

-    # make ARG_DESTINATION absolute
-    if(NOT ("${ARG_DESTINATION}" STREQUAL "") AND NOT IS_ABSOLUTE "${ARG_DESTINATION}")
-      if(DEFINED CMAKE_SCRIPT_MODE_FILE)
-        message(FATAL_ERROR "[cake_pkg] In script mode <destination-dir> must be absolute path.")
+
+    if(ARG_C MATCHES "^CLONE|INSTALL$")
+
+      # make ARG_DESTINATION absolute
+      if(ARG_DESTINATION)
+        if(NOT IS_ABSOLUTE "${ARG_DESTINATION}")
+          if(DEFINED CMAKE_SCRIPT_MODE_FILE)
+            message(FATAL_ERROR "[cake_pkg] In script mode <destination-dir> must be absolute path.")
+          else()
+            get_filename_component(ARG_DESTINATION "${CMAKE_CURRENT_SOURCE_DIR}/${ARG_DESTINATION}")
+          endif()
+        endif()
       else()
-        get_filename_component(ARG_DESTINATION "${CMAKE_CURRENT_SOURCE_DIR}/${ARG_DESTINATION}")
-      endif()
-    endif()
-
-    if(ARG_C MATCHES "^CLONE|INSTALL$")
+        _cake_get_project_var(EFFECTIVE CAKE_PKG_PROJECT_DIR)
+        set(pkg_project_dir "${ans}")
+        if(pkg_project_dir)
+          if(NOT IS_DIRECTORY "${pkg_project_dir}")
+            message(FATAL_ERROR "[cake] CAKE_PKG_PROJECT_DIR: \"${pkg_project_dir}\" does not exist.")
+          endif()
+          # cake_pkg INSTALL/CLONE without DESTINATION and alternative pkg_project dir defined ->
+          # forward entire call to child process launched in other project dir
+          message(STATUS "Execute cake_pkg in CAKE_PKG_PROJECT_DIR (\"${pkg_project_dir}\")")
+          execute_process(
+            COMMAND ${CMAKE_COMMAND}
+              "-DCAKE_CURRENT_DIRECTORY=${pkg_project_dir}"
+              -P "${CAKE_ROOT}/cakepkg-src/cakepkg.cmake"
+              ${ARGV}
+            WORKING_DIRECTORY "${pkg_project_dir}"
+            RESULT_VARIABLE r)
+            message(FATAL_ERROR "r: ${r}")
+          return()
+        endif()
+      endif()
+
       _cake_load_pkg_registries()
       if(ARG_GROUP)
         set(group "${ARG_GROUP}")


ci windows: replace more /Zi

ci windows: replace more /Zi

--- build/msvc_ccache.cmake
+++ build/msvc_ccache.cmake
@@ -1,10 +1,20 @@
 # ccache doesn't work with /Zi.
 # See also: https://github.com/ccache/ccache/issues/1040
-string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
-string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
-string(REPLACE "/Zi" "/Z7"
-  CMAKE_C_FLAGS_RELWITHDEBINFO
-  "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
-string(REPLACE "/Zi" "/Z7"
-  CMAKE_CXX_FLAGS_RELWITHDEBINFO
-  "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
+foreach(lang C CXX)
+  foreach(flag_suffix
+      ""
+      "_INIT"
+      "_RELEASE"
+      "_RELEASE_INIT"
+      "_RELWITHDEBINFO"
+      "_RELWITHDEBINFO_INIT"
+      "_DEBUG"
+      "_DEBUG_INIT"
+      "_MINSIZEREL"
+      "_MINSIZEREL_INIT")
+    message("XXX: ${lang}:${flag_suffix}: CMAKE_${lang}_FLAGS${flag_suffix}: ${CMAKE_${lang}_FLAGS${flag_suffix}}")
+    string(REPLACE "/Zi" "/Z7"
+      CMAKE_${lang}_FLAGS${flag_suffix}
+      "${CMAKE_${lang}_FLAGS${flag_suffix}}")
+  endforeach()
+endforeach()


Synchronize adm files

Synchronize adm files

--- adm_local_without_kernel/cmake_files/SalomeSetupPlatform.cmake
+++ adm_local_without_kernel/cmake_files/SalomeSetupPlatform.cmake
@@ -1,4 +1,4 @@
-# Copyright (C) 2013-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public


Improved FindCyclusCore to use environment variables.

--- cycamore/CMake/FindCyclusCore.cmake
+++ cycamore/CMake/FindCyclusCore.cmake
@@ -4,23 +4,28 @@

 # Look for the header files
 FIND_PATH(CYCLUS_CORE_INCLUDE_DIR suffix.h
-  HINTS /usr/local/cyclus /opt/local/cyclus
+  HINTS /usr/local/cyclus /opt/local/cyclus "$ENV{CYCLUS_ROOT_DIR}/cyclus"
+  "$ENV{CYCLUS_ROOT_DIR}"
   PATH_SUFFIXES cyclus/include)

 # Look for the header files
 FIND_PATH(CYCLUS_CORE_SHARE_DIR cyclus.rng.in
-  HINTS /usr/local/cyclus /opt/local/cyclus
+  HINTS /usr/local/cyclus /opt/local/cyclus "$ENV{CYCLUS_ROOT_DIR}/cyclus"
+  "$ENV{CYCLUS_ROOT_DIR}"
   PATH_SUFFIXES cyclus/share)

 # Look for the library
 FIND_LIBRARY(CYCLUS_CORE_LIBRARY NAMES cycluscore
   HINTS /usr/local/cyclus/lib /usr/local/cyclus
-  /opt/local/lib /opt/local/cyclus/lib)
+  "$ENV{CYCLUS_ROOT_DIR}/lib"
+  /opt/local/lib /opt/local/cyclus/lib "$ENV{CYCLUS_ROOT_DIR}/cyclus/lib")

 # Look for the library
 FIND_LIBRARY(CYCLUS_GTEST_LIBRARY NAMES gtest
   HINTS /usr/local/cyclus/lib /usr/local/cyclus
-  /opt/local/lib /opt/local/cyclus/lib)
+  /opt/local/lib /opt/local/cyclus/lib "$ENV{CYCLUS_ROOT_DIR}/cyclus/lib"
+  "$ENV{CYCLUS_ROOT_DIR}/lib"
+  )

 # Copy the results to the output variables.
 IF (CYCLUS_CORE_INCLUDE_DIR AND CYCLUS_CORE_LIBRARY AND CYCLUS_GTEST_LIBRARY AND CYCLUS_CORE_SHARE_DIR)


Clang-Tidy: make sure that it works fine with MSVC's cl.

--- cmake/common.cmake
+++ cmake/common.cmake
@@ -196,8 +196,14 @@
     string(REPLACE "/" "\\\/"
            _HEADER_FILTER_DIR "${_HEADER_FILTER_DIR}")

+    if(MSVC)
+      # Extra argument for Clang-Tidy when used with cl
+      # https://gitlab.kitware.com/cmake/cmake/-/issues/20512#note_722771
+      set(_EXTRA_ARG ";--extra-arg=/EHsc")
+    endif()
+
     set_target_properties(${_TARGET} PROPERTIES
-      CXX_CLANG_TIDY "${CLANG_TIDY_EXE};-checks=${_CLANG_TIDY_CHECKS};-header-filter=${_HEADER_FILTER_DIR}.*${_CLANG_TIDY_WARNINGS_AS_ERRORS}"
+      CXX_CLANG_TIDY "${CLANG_TIDY_EXE}${_EXTRA_ARG};-checks=${_CLANG_TIDY_CHECKS};-header-filter=${_HEADER_FILTER_DIR}.*${_CLANG_TIDY_WARNINGS_AS_ERRORS}"
     )
   endif()
 endfunction()


Some minor cleaning up [ci skip].

Some minor cleaning up [ci skip].

--- cmake/common.cmake
+++ cmake/common.cmake
@@ -327,7 +327,7 @@

         IF(EXISTS ${PROJECT_SOURCE_DIR}/${TS_FILE})
             EXECUTE_PROCESS(COMMAND ${QT_BINARY_DIR}/lupdate -no-obsolete ${INPUT_FILES}
-                                                         -ts ${TS_FILE}
+                                                             -ts ${TS_FILE}
                             WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
             EXECUTE_PROCESS(COMMAND ${QT_BINARY_DIR}/lrelease ${PROJECT_SOURCE_DIR}/${TS_FILE}
                                                           -qm ${PROJECT_BUILD_DIR}/${LANGUAGE_FILE}.qm)


cmake(dotnet): Try to fix multi-config generator

--- cmake/dotnet.cmake
+++ cmake/dotnet.cmake
@@ -116,7 +116,7 @@
 set(OR_TOOLS_DOTNET_NATIVE ${OR_TOOLS_DOTNET}.runtime.${RUNTIME_IDENTIFIER})

-file(GENERATE OUTPUT dotnet/replace_runtime.cmake
+file(GENERATE OUTPUT dotnet/$<CONFIG>/replace_runtime.cmake
   CONTENT
   "FILE(READ ${PROJECT_SOURCE_DIR}/ortools/dotnet/${OR_TOOLS_DOTNET_NATIVE}/${OR_TOOLS_DOTNET_NATIVE}.csproj.in input)
 STRING(REPLACE \"@PROJECT_VERSION@\" \"${PROJECT_VERSION}\" input \"\${input}\")
@@ -128,7 +128,7 @@
 add_custom_command(
   OUTPUT dotnet/${OR_TOOLS_DOTNET_NATIVE}/${OR_TOOLS_DOTNET_NATIVE}.csproj
   COMMAND ${CMAKE_COMMAND} -E make_directory ${OR_TOOLS_DOTNET_NATIVE}
-  COMMAND ${CMAKE_COMMAND} -P $<$<BOOL:${GENERATOR_IS_MULTI_CONFIG}>:$<CONFIG>/>replace_runtime.cmake
+  COMMAND ${CMAKE_COMMAND} -P ./$<CONFIG>/replace_runtime.cmake
   WORKING_DIRECTORY dotnet
   )

@@ -145,7 +145,7 @@
   )

 # Main Target
-file(GENERATE OUTPUT dotnet/$<$<BOOL:${GENERATOR_IS_MULTI_CONFIG}>:$<CONFIG>/>replace.cmake
+file(GENERATE OUTPUT dotnet/$<CONFIG>/replace.cmake
   CONTENT
   "FILE(READ ${PROJECT_SOURCE_DIR}/ortools/dotnet/${OR_TOOLS_DOTNET}/${OR_TOOLS_DOTNET}.csproj.in input)
 STRING(REPLACE \"@PROJECT_VERSION@\" \"${PROJECT_VERSION}\" input \"\${input}\")
@@ -158,7 +158,7 @@
 add_custom_command(
   OUTPUT dotnet/${OR_TOOLS_DOTNET}/${OR_TOOLS_DOTNET}.csproj
   COMMAND ${CMAKE_COMMAND} -E make_directory ${OR_TOOLS_DOTNET}
-  COMMAND ${CMAKE_COMMAND} -P $<$<BOOL:${GENERATOR_IS_MULTI_CONFIG}>:$<CONFIG>/>replace.cmake
+  COMMAND ${CMAKE_COMMAND} -P ./$<CONFIG>/replace.cmake
   WORKING_DIRECTORY dotnet
   )


NMI build glue: print out release_dir before tarring, in an attempt to 'fix' the mac tar problems.

--- build/cmake/macros/TarGz.cmake
+++ build/cmake/macros/TarGz.cmake
@@ -14,9 +14,11 @@
 		endif()
     endif()

+
     add_custom_command(
         OUTPUT ${CPACK_PACKAGE_FILE_NAME}.tar.gz
         COMMAND mv ARGS ${CMAKE_INSTALL_PREFIX} ${CPACK_PACKAGE_FILE_NAME}
+        COMMAND ls ARGS -lR ${CPACK_PACKAGE_FILE_NAME}
         COMMAND ${TAR_COMMAND} ARGS czf ${CPACK_PACKAGE_FILE_NAME}.tar.gz --owner=0 --group=0 --numeric-owner ${CPACK_PACKAGE_FILE_NAME}
         COMMAND mv ARGS ${CPACK_PACKAGE_FILE_NAME} ${CMAKE_INSTALL_PREFIX}
     )


Increased warning levels in compiler

Increased warning levels in compiler

--- src/csapex/cmake/csapex-extras.cmake
+++ src/csapex/cmake/csapex-extras.cmake
@@ -1,8 +1,7 @@
 if(WIN32)
 #add_definitions(-Wall)
 else()
-add_definitions(-W -Wall -Wno-unused-parameter -fno-strict-aliasing -Wno-unused-function -Wno-deprecated-register
- -Wno-inconsistent-missing-override -Wno-deprecated-register)
+add_definitions(-W -Wall -Wextra -Wno-unused-parameter -fno-strict-aliasing -Wno-unused-function -Wno-deprecated-register -Wno-deprecated-register -Wpedantic)
 endif()


Use the good c++ runtime.

Use the good c++ runtime.

--- _cmake/compilers/clang.cmake
+++ _cmake/compilers/clang.cmake
@@ -1,5 +1,6 @@
 add_definitions(
 	    --std=c++11
+	    --stdlib=libc++

             -Wall
             -Wextra


MOD: CMAKE - Added .inl files to the projects, formerly they werent added

--HG--
branch : v0-8

--- cmake/CEGUIMacros.cmake
+++ cmake/CEGUIMacros.cmake
@@ -12,7 +12,7 @@
     set (_CURR_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/${_REL_INC_DIR}")

     file (GLOB CORE_SOURCE_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" *.cpp)
-    file (GLOB CORE_HEADER_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${_CURR_INCLUDE_DIR}/*.h")
+    file (GLOB CORE_HEADER_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${_CURR_INCLUDE_DIR}/*.h" "${CMAKE_CURRENT_SOURCE_DIR}" *.inl)
 endmacro()

 #


cmake: print warning when linking shared build to static gtest build.

--- cmake/DetectGTest.cmake
+++ cmake/DetectGTest.cmake
@@ -12,6 +12,16 @@
 status("GTEST_ROOT=${GTEST_ROOT}")
 find_package(GTest REQUIRED)
 if(GTEST_FOUND)
+
+        if(BUILD_SHARED_LIBS)
+            get_filename_component(__GTEST_LIB_EXT ${GTEST_LIBRARIES} EXT)
+
+            if(NOT ${__GTEST_LIB_EXT} EQUAL ${CMAKE_SHARED_LIBRARY_SUFFIX})
+                message(WARNING "Linking shared build to static gtest may lead to testrunner crash due to memory leaks.")
+            endif()
+
+        endif(BUILD_SHARED_LIBS)
+
 	list(APPEND ${ROOT_PROJECT}_INCLUDE_DIRS ${GTEST_INCLUDE_DIRS})
 	list(APPEND ${ROOT_PROJECT}_LIBS ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES})
 else(GTEST_FOUND)


Remove a debug message

Remove a debug message

--- cmake/FindJsonCpp.cmake
+++ cmake/FindJsonCpp.cmake
@@ -69,7 +69,7 @@
 	# If we found something, and it's not the exact same as what we've found before...
 	# NOTE: The contents of this "if" block update only (internal) cache variables!
 	# (since this will only get run the first CMake pass that finds jsoncpp or that finds a different install)
-	message("Updating jsoncpp cache variables!")
+	#message("Updating jsoncpp cache variables!")
 	set(JSONCPP_CACHED_JSONCPP_DIR_DETAILS "[${jsoncpp_DIR}]" CACHE INTERNAL "" FORCE)
 	unset(JSONCPP_IMPORTED_LIBRARY_SHARED)
 	unset(JSONCPP_IMPORTED_LIBRARY_STATIC)


modyfied findjsoncpp cmake to look for debug library

--- cmake/FindJsoncpp.cmake
+++ cmake/FindJsoncpp.cmake
@@ -1,103 +1,47 @@
-# - try to find JSONCPP library
+# Find jsoncpp
 #
-# Cache Variables: (probably not for direct use in your scripts)
-#  JSONCPP_INCLUDE_DIR
-#  JSONCPP_LIBRARY
-#
-# Non-cache variables you might use in your CMakeLists.txt:
-#  JSONCPP_FOUND
-#  JSONCPP_INCLUDE_DIRS
-#  JSONCPP_LIBRARIES
-#
-# Requires these CMake modules:
-#  FindPackageHandleStandardArgs (known included with CMake >=2.6.2)
-#
-# Author:
-# 2011 Philippe Crassous (ENSAM ParisTech / Institut Image) p.crassous _at_ free.fr
-#
-# Adapted from the Virtual Reality Peripheral Network library.
-# https://github.com/rpavlik/vrpn/blob/master/README.Legal
-#
+# Find the jsoncpp includes and library
+#
+# if you nee to add a custom library search path, do it via via CMAKE_FIND_ROOT_PATH
+#
+# This module defines
+#  JSONCPP_INCLUDE_DIRS, where to find header, etc.
+#  JSONCPP_LIBRARIES, the libraries needed to use jsoncpp.
+#  JSONCPP_FOUND, If false, do not try to use jsoncpp.

-set(JSONCPP_ROOT_DIR
-	"${JSONCPP_ROOT_DIR}"
-	CACHE
-	PATH
-	"Directory to search for JSONCPP")
-set(_jsoncppnames)
-set(_pathsuffixes
-	suncc
-	vacpp
-	mingw
-	msvc6
-	msvc7
-	msvc71
-	msvc80
-	msvc90
-	linux-gcc)
-if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
-	execute_process(COMMAND
-		${CMAKE_CXX_COMPILER}
-		-dumpversion
-		OUTPUT_VARIABLE
-		_gnucxx_ver
-		OUTPUT_STRIP_TRAILING_WHITESPACE)
-	list(APPEND
-		_jsoncppnames
-		json_linux-gcc-${_gnucxx_ver}_libmt
-		json_linux-gcc_libmt)
-	list(APPEND _pathsuffixes linux-gcc-${_gnucxx_ver})
-elseif(MSVC)
-	if(MSVC_VERSION EQUAL 1200)
-		list(APPEND _jsoncppnames json_vc6_libmt)
-	elseif(MSVC_VERSION EQUAL 1300)
-		list(APPEND _jsoncppnames json_vc7_libmt)
-	elseif(MSVC_VERSION EQUAL 1310)
-		list(APPEND _jsoncppnames json_vc71_libmt)
-	elseif(MSVC_VERSION EQUAL 1400)
-		list(APPEND _jsoncppnames json_vc8_libmt)
-	elseif(MSVC_VERSION EQUAL 1500)
-		list(APPEND _jsoncppnames json_vc9_libmt)
-	elseif(MSVC_VERSION EQUAL 1600)
-		list(APPEND _jsoncppnames json_vc10_libmt)
-	endif()
-else()
-	list(APPEND _jsoncppnames
-		json_suncc_libmt
-		json_vacpp_libmt)
+# only look in default directories
+find_path(
+	JSONCPP_INCLUDE_DIR
+	NAMES jsoncpp/json/json.h
+	DOC "jsoncpp include dir"
+)
+
+find_library(
+	JSONCPP_LIBRARY
+	NAMES jsoncpp
+	DOC "jsoncpp library"
+)
+
+set(JSONCPP_INCLUDE_DIRS ${JSONCPP_INCLUDE_DIR})
+set(JSONCPP_LIBRARIES ${JSONCPP_LIBRARY})
+
+# debug library on windows
+# same naming convention as in qt (appending debug library with d)
+if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
+	find_library(
+		JSONCPP_LIBRARY_DEBUG
+		NAMES jsoncppd
+		DOC "jsoncpp debug library"
+	)
+
+	set(JSONCPP_LIBRARIES ${JSONCPP_LIBRARIES} ${JSONCPP_LIBRARY_DEBUG})
+
 endif()

-list(APPEND _jsoncppnames
-	json_mingw_libmt
-    jsoncpp)
+# handle the QUIETLY and REQUIRED arguments and set GMP_FOUND to TRUE
+# if all listed variables are TRUE, hide their existence from configuration view
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(jsoncpp DEFAULT_MSG
+	JSONCPP_INCLUDE_DIR JSONCPP_LIBRARY)
+mark_as_advanced (JSONCPP_INCLUDE_DIR JSONCPP_LIBRARY)

-find_library(JSONCPP_LIBRARY
-	NAMES
-	${_jsoncppnames}
-	PATHS
-	"${JSONCPP_ROOT_DIR}/libs"
-	PATH_SUFFIXES
-	${_pathsuffixes})
-
-find_path(JSONCPP_INCLUDE_DIR
-	NAMES
-	json/json.h
-	PATHS
-	"${JSONCPP_ROOT_DIR}"
-	PATH_SUFFIXES jsoncpp
-	include)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(JSONCPP
-	DEFAULT_MSG
-	JSONCPP_LIBRARY
-	JSONCPP_INCLUDE_DIR)
-
-if(JSONCPP_FOUND)
-	set(JSONCPP_LIBRARIES "${JSONCPP_LIBRARY}")
-	set(JSONCPP_INCLUDE_DIRS "${JSONCPP_INCLUDE_DIR}")
-	mark_as_advanced(JSONCPP_ROOT_DIR)
-endif()
-
-mark_as_advanced(JSONCPP_INCLUDE_DIR JSONCPP_LIBRARY)
-


Minor fix to FindOpenVDB.cmake to branch on the VDB version rather than if the ABI is defined

Signed-off-by: Nick Avramoussis <ce9ae7fb000f2865db247e53b12753caeda92c74@users.noreply.github.com>

--- cmake/FindOpenVDB.cmake
+++ cmake/FindOpenVDB.cmake
@@ -285,13 +285,17 @@
   MAJOR   OpenVDB_MAJOR_VERSION
   MINOR   OpenVDB_MINOR_VERSION
   PATCH   OpenVDB_PATCH_VERSION
-  ABI     OpenVDB_ABI # Will be empty for the older version.h header
-)
-
-set(_OPENVDB_HAS_NEW_VERSION_HEADER FALSE)
-if(OpenVDB_ABI)
+  ABI     OpenVDB_ABI_FROM_HEADER # will be OpenVDB_MAJOR_VERSION prior to 8.1.0
+)
+
+if(OpenVDB_VERSION VERSION_LESS 8.1.0)
+  set(_OPENVDB_HAS_NEW_VERSION_HEADER FALSE)
+  # ABI gets computed later
+else()
   set(_OPENVDB_HAS_NEW_VERSION_HEADER TRUE)
-endif()
+  set(OpenVDB_ABI ${OpenVDB_ABI_FROM_HEADER})
+endif()
+unset(OpenVDB_ABI_FROM_HEADER)

 # ------------------------------------------------------------------------
 #  Search for OPENVDB lib DIR


Update tbag_modules__apply_dep_raylib() cmake macro.

--- cmake/TbagModules.cmake
+++ cmake/TbagModules.cmake
@@ -611,7 +611,7 @@
     tbag_modules__add_whole_archive ($<TARGET_FILE:raylib>)

     if (WIN32)
-        list (APPEND TBAG_PROJECT_LDFLAGS gdi32.lib)
+        list (APPEND TBAG_PROJECT_LDFLAGS gdi32.lib Winmm.lib)
     elseif (UNIX)
         if (APPLE)
             list (APPEND TBAG_PROJECT_LDFLAGS -ObjC


make it possible to disable testing

make it possible to disable testing

--- cmake/custom/test.cmake
+++ cmake/custom/test.cmake
@@ -1,45 +1,49 @@
-include(CTest)
-enable_testing()
+option(ENABLE_TESTS "Enable XCint tests" ON)

-add_executable(
-    cpp_test
-    test/main.cpp
-    test/energy_spherical.cpp
-#   test/energy_cartesian.cpp
-    )
+if(ENABLE_TESTS)
+    include(CTest)
+    enable_testing()

-# workaround:
-# different dynamic lib suffix on mac
-if(APPLE)
-    set(_dyn_lib_suffix dylib)
-else()
-    set(_dyn_lib_suffix so)
-endif()
-
-target_link_libraries(
-    cpp_test
-    googletest
-    xcint
-    ${PROJECT_BINARY_DIR}/external/xcfun-build/libxcfun.a
-    ${PROJECT_BINARY_DIR}/external/numgrid-build/lib/libnumgrid.${_dyn_lib_suffix}
-    ${MATH_LIBS}
-    pthread
-    )
-
-add_test(cpp_test ${PROJECT_BINARY_DIR}/bin/cpp_test ${PROJECT_SOURCE_DIR}/test)
-
-if(ENABLE_FC_SUPPORT)
     add_executable(
-        fortran_test
-        test/test.F90
+        cpp_test
+        test/main.cpp
+        test/energy_spherical.cpp
+    #   test/energy_cartesian.cpp
         )

+    # workaround:
+    # different dynamic lib suffix on mac
+    if(APPLE)
+        set(_dyn_lib_suffix dylib)
+    else()
+        set(_dyn_lib_suffix so)
+    endif()
+
     target_link_libraries(
-        fortran_test
-        xcint_fortran
-        ${PROJECT_BINARY_DIR}/external/lib/libnumgrid.so
-        ${PROJECT_BINARY_DIR}/external/numgrid-build/src/libnumgrid_fortran.a
+        cpp_test
+        googletest
+        xcint
+        ${PROJECT_BINARY_DIR}/external/xcfun-build/libxcfun.a
+        ${PROJECT_BINARY_DIR}/external/numgrid-build/lib/libnumgrid.${_dyn_lib_suffix}
+        ${MATH_LIBS}
+        pthread
         )

-    add_test(fortran_test ${PROJECT_BINARY_DIR}/bin/fortran_test ${PROJECT_SOURCE_DIR}/test)
+    add_test(cpp_test ${PROJECT_BINARY_DIR}/bin/cpp_test ${PROJECT_SOURCE_DIR}/test)
+
+    if(ENABLE_FC_SUPPORT)
+        add_executable(
+            fortran_test
+            test/test.F90
+            )
+
+        target_link_libraries(
+            fortran_test
+            xcint_fortran
+            ${PROJECT_BINARY_DIR}/external/lib/libnumgrid.so
+            ${PROJECT_BINARY_DIR}/external/numgrid-build/src/libnumgrid_fortran.a
+            )
+
+        add_test(fortran_test ${PROJECT_BINARY_DIR}/bin/fortran_test ${PROJECT_SOURCE_DIR}/test)
+    endif()
 endif()


More F0 fixes.

More F0 fixes.

--- cmake/gcc_stm32f0.cmake
+++ cmake/gcc_stm32f0.cmake
@@ -40,42 +40,38 @@

     STM32_GET_CHIP_TYPE(${CHIP} TYPE)

-    IF(${TYPE} STREQUAL 030xC)
-        IF((STM32_SIZE_CODE STREQUAL "4") OR (STM32_SIZE_CODE STREQUAL "6"))
-            SET(RAM "4K")
-	ELSEIF(STM32_SIZE_CODE STREQUAL "8")
-	    SET(RAM "8K")
-        ELSE()
-            SET(RAM "32K")
-        ENDIF()
+    IF(${TYPE} STREQUAL 030x6)
+        SET(RAM "4K")
+    ELSEIF(${TYPE} STREQUAL 030x8)
+        SET(RAM "8K")
+    ELSEIF(${TYPE} STREQUAL 030xC)
+        SET(RAM "32K")
     ELSEIF(${TYPE} STREQUAL 031x6)
-            SET(RAM "4K")
-    ELSEIF(${TYPE} STREQUAL 038x6)
-            SET(RAM "4K")
+        SET(RAM "4K")
+    ELSEIF(${TYPE} STREQUAL 038xx)
+        SET(RAM "4K")
     ELSEIF(${TYPE} STREQUAL 042x6)
-            SET(RAM "6K")
+        SET(RAM "6K")
     ELSEIF(${TYPE} STREQUAL 048x6)
-            SET(RAM "6K")
+        SET(RAM "6K")
     ELSEIF(${TYPE} STREQUAL 051x8)
-            SET(RAM "8K")
-    ELSEIF(${TYPE} STREQUAL 058x8)
-            SET(RAM "8K")
+        SET(RAM "8K")
+    ELSEIF(${TYPE} STREQUAL 058xx)
+        SET(RAM "8K")
+    ELSEIF(${TYPE} STREQUAL 070x6)
+        SET(RAM "6K")
     ELSEIF(${TYPE} STREQUAL 070xB)
-        IF(STM32_SIZE_CODE STREQUAL "6")
-            SET(RAM "6K")
-        ELSE()
-            SET(RAM "16K")
-        ENDIF()
+        SET(RAM "16K")
     ELSEIF(${TYPE} STREQUAL 071xB)
-            SET(RAM "16K")
+        SET(RAM "16K")
     ELSEIF(${TYPE} STREQUAL 072xB)
-            SET(RAM "16K")
-    ELSEIF(${TYPE} STREQUAL 078xB)
-            SET(RAM "16K")
+        SET(RAM "16K")
+    ELSEIF(${TYPE} STREQUAL 078xx)
+        SET(RAM "16K")
     ELSEIF(${TYPE} STREQUAL 091xC)
-            SET(RAM "32K")
-    ELSEIF(${TYPE} STREQUAL 098xC)
-            SET(RAM "32K")
+        SET(RAM "32K")
+    ELSEIF(${TYPE} STREQUAL 098xx)
+        SET(RAM "32K")
     ENDIF()

     SET(${FLASH_SIZE} ${FLASH})


Ensure C++ cmake tests always occur, even if C++ bindings are disabled.
Some of these settings are used by drivers written in C++ (i.e. qt,
wxwidgets, psttf).

svn path=/trunk/; revision=9735

--- cmake/modules/c++.cmake
+++ cmake/modules/c++.cmake
@@ -28,7 +28,10 @@
   OPTION(ENABLE_cxx "Enable C++ bindings" ON)
 endif(DEFAULT_NO_BINDINGS)

-IF (ENABLE_cxx)
+# Always carry out C++ checks, since some drivers also use these as
+# well as the C++ bindings
+# IF (ENABLE_cxx)
+
 # Check if "using namespace std;" works
 INCLUDE(TestForNamespace)

@@ -42,4 +45,4 @@
 # Need to add check if stdint.h can be used from c++ (HAVE_CXX_STDINT_H)
 INCLUDE(TestForStdintCXX)

-ENDIF(ENABLE_cxx)
+# ENDIF(ENABLE_cxx)


Fix: don't install unit tests and don't use different names

git-svn-id: 1af002208e930b4d920e7c2b948d1e98a012c795@697 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -146,13 +146,9 @@
     #
     target_link_libraries(${_exename} ${GTEST_BOTH_LIBRARIES} ${PCL_ADD_TEST_LINK_WITH})
     PCL_LINK_OPENMP(${_exename})
-    set_target_properties(${_exename} PROPERTIES DEBUG_OUTPUT_NAME "${_exename}${CMAKE_DEBUG_POSTFIX}")
-    set_target_properties(${_exename} PROPERTIES RELEASE_OUTPUT_NAME "${_exename}${CMAKE_RELEASE_POSTFIX}")
-    install(TARGETS ${_exename} RUNTIME DESTINATION ${BIN_INSTALL_DIR}
-            COMPONENT ${_component})
 	add_test(${_name} ${_exename} ${PCL_ADD_TEST_ARGUMENTS})
 endmacro(PCL_ADD_TEST)
-###############################################################################
+

 ###############################################################################
 # Add compile flags to a target (because CMake doesn't provide something so


Fixed new CURL dependency in CFITSIO

Fixed new CURL dependency in CFITSIO

--- cmake/FindCFITSIO.cmake
+++ cmake/FindCFITSIO.cmake
@@ -51,6 +51,11 @@
     )

   ##_____________________________________________________________________________
+  ## Check for CURL dependency
+
+  find_package(CURL)
+
+  ##_____________________________________________________________________________
   ## Actions taken when all components have been found

   if (CFITSIO_INCLUDES AND CFITSIO_LIBRARIES)
@@ -67,9 +72,16 @@
     endif (NOT CFITSIO_FIND_QUIETLY)
   endif (CFITSIO_INCLUDES AND CFITSIO_LIBRARIES)

+  if (CURL_FOUND)
+    list(APPEND CFITSIO_LIBRARIES ${CURL_LIBRARIES})
+  endif (CURL_FOUND)
+
   if (CFITSIO_FOUND)
     if (NOT CFITSIO_FIND_QUIETLY)
       message (STATUS "Found components for CFITSIO")
+      if (CURL_FOUND)
+        message (STATUS "HTTPS support (CURL)")
+      endif (CURL_FOUND)
       message (STATUS "CFITSIO_INCLUDES = ${CFITSIO_INCLUDES}")
       message (STATUS "CFITSIO_LIBRARIES = ${CFITSIO_LIBRARIES}")
     endif (NOT CFITSIO_FIND_QUIETLY)


Removed debug print

Removed debug print

Signed-off-by: Nick Avramoussis <4c6772d20f21e1f087b814400acc0120202ec49e@dneg.com>

--- cmake/FindIlmBase.cmake
+++ cmake/FindIlmBase.cmake
@@ -313,7 +313,6 @@
   # Configure imported targets

   FOREACH ( COMPONENT ${IlmBase_FIND_COMPONENTS} )
-    message (STATUS ${IlmBase_${COMPONENT}_LIBRARY})
     IF ( NOT TARGET IlmBase::${COMPONENT} )
       ADD_LIBRARY ( IlmBase::${COMPONENT} UNKNOWN IMPORTED )
       SET_TARGET_PROPERTIES ( IlmBase::${COMPONENT} PROPERTIES


some osx porting bits

some osx porting bits

--- cmake/XzeroCommon.cmake
+++ cmake/XzeroCommon.cmake
@@ -2,7 +2,7 @@
 # require a C++ compiler that at least the currently latest
 # Ubuntu LTS release is supporting
 if(APPLE)
-  set(CMAKE_CXX_FLAGS "-std=c++14 -stdlib=libc++")
+  set(CMAKE_CXX_FLAGS "-std=c++11 -stdlib=libc++")
 else()
   set(CMAKE_CXX_FLAGS "-std=c++11")
 endif()


Update: speed up and fix number of arguments

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -639,7 +639,7 @@
 # exception_list OPTIONAL and contains list of subdirectories not to account
 macro(collect_subproject_directory_names dirname filename names dirs)
     file(GLOB globbed RELATIVE "${dirname}" "${dirname}/*/${filename}")
-    if(${ARGC} GREATER 3)
+    if(${ARGC} GREATER 4)
         set(exclusion_list ${ARGN})
         foreach(file ${globbed})
             get_filename_component(dir ${file} PATH)
@@ -648,18 +648,15 @@
                 set(${dirs} ${${dirs}} ${dir})
             endif(excluded EQUAL -1)
         endforeach()
-    else(${ARGC} GREATER 3)
+    else(${ARGC} GREATER 4)
         foreach(file ${globbed})
             get_filename_component(dir ${file} PATH)
             set(${dirs} ${${dirs}} ${dir})
         endforeach(file)
-    endif(${ARGC} GREATER 3)
+    endif(${ARGC} GREATER 4)
     foreach(subdir ${${dirs}})
-        file(STRINGS ${dirname}/${subdir}/CMakeLists.txt name REGEX "set.*SUBSYS_NAME .*\\)$")
-        string(REGEX REPLACE "set.*SUBSYS_NAME" "" name "${name}")
-        string(REPLACE ")" "" name "${name}")
-        string(STRIP "${name}" name)
-#       message(STATUS "setting ${subdir} component name to ${name}")
+        file(STRINGS ${dirname}/${subdir}/CMakeLists.txt name REGEX "[setSET ]+\\(.*SUBSYS_NAME .*\\)$")
+        string(REGEX REPLACE "[setSET ]+\\(.*SUBSYS_NAME[ ]+([A-Za-z0-9_]+)[ ]*\\)" "\\1" name "${name}")
         set(${names} ${${names}} ${name})
         file(STRINGS ${dirname}/${subdir}/CMakeLists.txt DEPENDENCIES REGEX "set.*SUBSYS_DEPS .*\\)")
         string(REGEX REPLACE "set.*SUBSYS_DEPS" "" DEPENDENCIES "${DEPENDENCIES}")


* fixed the issue with unit tests that are no longer being ran by TeamCity

git-svn-id: 1af002208e930b4d920e7c2b948d1e98a012c795@3450 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -248,6 +248,7 @@
     set(multiValueArgs FILES ARGUMENTS LINK_WITH)
     cmake_parse_arguments(PCL_ADD_TEST "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
     add_executable(${_exename} ${PCL_ADD_TEST_FILES})
+    set_target_properties(${_exename} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
     PCL_ADD_OPENMP_FLAGS(${_exename})
     target_link_libraries(${_exename} ${GTEST_BOTH_LIBRARIES} ${PCL_ADD_TEST_LINK_WITH})
     #


Fix compound target's target registration

--- cmake/pcl_targets.cmake
+++ cmake/pcl_targets.cmake
@@ -315,7 +315,7 @@

   # Some app targets report are defined with subsys other than apps
   # It's simpler check for tools and assume everythin else as an app
-  if(${ADD_LIBRARY_OPTION_COMPONENT} MATCHES "tools")
+  if(${ADD_LIBRARY_OPTION_COMPONENT} STREQUAL "tools")
     set_target_properties(${_name} PROPERTIES FOLDER "Tools")
   else()
     set_target_properties(${_name} PROPERTIES FOLDER "Apps")
@@ -330,7 +330,7 @@
   endif()

   string(TOUPPER ${ADD_LIBRARY_OPTION_COMPONENT} _component_upper)
-  list(APPEND PCL_${_component_upper}_ALL_TARGETS ${_name})
+  set(PCL_${_component_upper}_ALL_TARGETS ${PCL_${_component_upper}_ALL_TARGETS} ${_name} PARENT_SCOPE)
 endfunction()

 ###############################################################################


First argument to CPM_InitModule is now optional.

If the first argument is not specified, then CPM_MODULE_NAME must exist,
otherwise an error is thrown.

--- CPM.cmake
+++ CPM.cmake
@@ -608,15 +608,30 @@
 # we can set variables in the parent namespace (if any).
 # name - Same as the name parameter in CPM_AddModule. A preprocessor definition
 #        using this name will be generated for namespaces.
-macro(CPM_InitModule name)
+macro(CPM_InitModule)
+
+  # Check to see if we have any optional arguments if CPM_MODULE_NAME
+  # is not set.
+  if(NOT DEFINED CPM_MODULE_NAME)
+    # Check for optional name argument
+    set (extra_macro_args ${ARGN})
+    list(LENGTH extra_macro_args num_extra_args)
+    if (${num_extra_args} GREATER 0)
+      list(GET extra_macro_args 0 optional_arg)
+      set(CPM_MODULE_NAME ${optional_arg})
+    else()
+      message(FATAL_ERROR "CPM_InitModule: CPM_MODULE_NAME not set and no optional name argument provided.")
+    endif()
+  endif()
+
   # Ensure the parent function knows what we decided to name ourselves.
   # This name will correspond to our module's namespace directives.
   if (NOT CPM_HIERARCHY_LEVEL EQUAL 0)
-    set(CPM_LAST_MODULE_NAME ${name} PARENT_SCOPE)
+    set(CPM_LAST_MODULE_NAME ${CPM_MODULE_NAME} PARENT_SCOPE)
   endif()

   # Build the appropriate definition for the module. We stored the unique ID
-  _cpm_build_preproc_name(${name} __CPM_TMP_VAR)
+  _cpm_build_preproc_name(${CPM_MODULE_NAME} __CPM_TMP_VAR)
   if (NOT DEFINED CPM_UNIQUE_ID)
     set(CPM_UNIQUE_ID CPM_TESTING_UPPER_LEVEL_NAMESPACE)
   endif()


CMake: Options Experimental NVCC Flags

CMake: Options Experimental NVCC Flags

Add `ALPAKA_CUDA_NVCC_LAMBDAS` and `ALPAKA_CUDA_NVCC_CONSTEXPR` flags
to `alpakaConfig.cmake` to control experimental host-device lambdas
and experimental relaxed constexpr explicitly in NVCC.

--- alpakaConfig.cmake
+++ alpakaConfig.cmake
@@ -373,6 +373,8 @@
             OPTION(ALPAKA_CUDA_FTZ "Set flush to zero for GPU" OFF)
             OPTION(ALPAKA_CUDA_SHOW_REGISTER "Show kernel registers and create PTX" OFF)
             OPTION(ALPAKA_CUDA_KEEP_FILES "Keep all intermediate files that are generated during internal compilation steps (folder: nvcc_tmp)" OFF)
+            OPTION(ALPAKA_CUDA_NVCC_EXPT_EXTENDED_LAMBDA "Enable experimental, extended host-device lambdas in NVCC" ON)
+            OPTION(ALPAKA_CUDA_NVCC_EXPT_RELAXED_CONSTEXPR "Enable experimental, relaxed constexpr in NVCC" ON)

             IF(ALPAKA_CUDA_COMPILER MATCHES "clang")
                 IF(NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
@@ -488,8 +490,13 @@
                     LIST(APPEND CUDA_NVCC_FLAGS "-Wno-deprecated-gpu-targets")
                 ENDIF()

-                LIST(APPEND CUDA_NVCC_FLAGS "--expt-extended-lambda")
-                LIST(APPEND CUDA_NVCC_FLAGS "--expt-relaxed-constexpr")
+
+                IF(ALPAKA_CUDA_NVCC_EXPT_EXTENDED_LAMBDA)
+                    LIST(APPEND CUDA_NVCC_FLAGS "--expt-extended-lambda")
+                ENDIF()
+                IF(ALPAKA_CUDA_NVCC_EXPT_RELAXED_CONSTEXPR)
+                    LIST(APPEND CUDA_NVCC_FLAGS "--expt-relaxed-constexpr")
+                ENDIF()

                 FOREACH(_CUDA_ARCH_ELEM ${ALPAKA_CUDA_ARCH})
                     # set flags to create device code for the given architecture


Restore optimization

Restore optimization

--- cmake/CMakelinuxx8664gcc.cmake
+++ cmake/CMakelinuxx8664gcc.cmake
@@ -29,7 +29,7 @@
 # ------- Setting optimization flags for default configuration -------

 if((NOT CMAKE_BUILD_TYPE) OR (CMAKE_BUILD_TYPE STREQUAL "None"))
-    set(DEFAULT_CXX_FLAGS "-g -ggdb")
+    set(DEFAULT_CXX_FLAGS "-O -g")
     set(OPT "${DEFAULT_CXX_FLAGS}")
     message("-- Setting compiler flags for default configuration: ${DEFAULT_CXX_FLAGS}")
 endif((NOT CMAKE_BUILD_TYPE) OR (CMAKE_BUILD_TYPE STREQUAL "None"))
@@ -37,7 +37,7 @@
 # --------------------------------------------------------------------

-set(NOOPT "-g -ggdb")
+set(NOOPT "-g")

 set(CXXOPT ${OPT})
 set(CXXNOPT ${NOOPT})


Add warning for when building Python on Windows

The ./configure script is a Linux shell script, which doesn't work on Windows. Also, the Python source isn't really made to be built with MinGW, which is our targetted compiler for Windows as it's open source.

--- cmake/modules/FindPython.cmake
+++ cmake/modules/FindPython.cmake
@@ -4,6 +4,9 @@
 option(BUILD_PYTHON "Build the Python dependency from source. If you build this, the newly-built version will get used by Luna. If not, it will search for a pre-installed version on your system." FALSE)

 if(BUILD_PYTHON)
+	if(WIN32)
+		message(WARNING "Building Python on Windows is not supported at the moment. You will probably run into problems.")
+	endif(WIN32)
 	ExternalProject_Add(Python
 		URL https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
 		URL_HASH SHA512=248B3EF2DEFEE7C013E8AC7472B9F2828B1C5B07A2F091EAD46EBDF209BE11DD37911978B590367699D9FAD50F1B98B998BCEEC34FA8369BA30950D3A5FB596F


[cmake] fix #7009 escape characters in regex

> git clone git@github.com:SpectreVert/root.git root_src+tag
> cd root_src+tag
> mkdir compiled && cd compiled && cmake .. # should work as
intented now

--- cmake/modules/RootMacros.cmake
+++ cmake/modules/RootMacros.cmake
@@ -300,12 +300,12 @@
           if(NOT ${dir} MATCHES "^[$]")
              list(APPEND incdirs ${dir})
           endif()
-          if(${dir} MATCHES "^${CMAKE_SOURCE_DIR}")
+          string(REGEX REPLACE "([][+.*()^])" "\\\\\\1" tmp_src_dir ${CMAKE_SOURCE_DIR})
+          if(${dir} MATCHES "^${tmp_src_dir}")
              list(APPEND headerdirs ${dir})
           endif()
        endforeach()
     endif()
-

     # if (cxxmodules OR runtime_cxxmodules)
     # Comments from Vassil:


Add ENVIRONMENT option to ROOT_ADD_PYUNITTEST

--- cmake/modules/RootMacros.cmake
+++ cmake/modules/RootMacros.cmake
@@ -1491,7 +1491,7 @@
 # ROOT_ADD_PYUNITTEST( <name> <file>)
 #----------------------------------------------------------------------------
 function(ROOT_ADD_PYUNITTEST name file)
-  CMAKE_PARSE_ARGUMENTS(ARG "WILLFAIL" "" "COPY_TO_BUILDDIR" ${ARGN})
+  CMAKE_PARSE_ARGUMENTS(ARG "WILLFAIL" "" "COPY_TO_BUILDDIR;ENVIRONMENT" ${ARGN})

   set(ROOT_ENV ROOTSYS=${ROOTSYS}
       PATH=${ROOTSYS}/bin:$ENV{PATH}
@@ -1515,7 +1515,7 @@

   ROOT_ADD_TEST(pyunittests-${good_name}
                 COMMAND ${PYTHON_EXECUTABLE} -B -m unittest discover -s ${CMAKE_CURRENT_SOURCE_DIR}/${file_dir} -p ${file_name} -v
-                ENVIRONMENT ${ROOT_ENV}
+                ENVIRONMENT ${ROOT_ENV} ${ARG_ENVIRONMENT}
                 ${copy_to_builddir}
                 ${will_fail})
 endfunction()


Updates the use of find_dependency based on imported targets

--- cmake/CelixConfig.cmake
+++ cmake/CelixConfig.cmake
@@ -50,7 +50,6 @@
 set(CELIX_FRAMEWORK_LIBRARY Celix::framework)
 set(CELIX_UTILS_LIBRARY Celix::utils)
 set(CELIX_DFI_LIBRARY Celix::dfi)
-
 set(CELIX_LAUNCHER Celix::launcher)

 if (TARGET Celix::etcdlib)
@@ -73,9 +72,25 @@
 set(CELIX_SHELL_TUI_BUNDLE ${CELIX_BUNDLES_DIR}/shell_tui.zip)

 include(CMakeFindDependencyMacro)
-find_dependency(ZLIB)
-find_dependency(UUID)
-find_dependency(OpenSSL)
-find_dependency(CURL)
-find_dependency(FFI)
-find_dependency(Jansson)+
+find_dependency(ZLIB REQUIRED) #Needed by framework
+find_dependency(UUID REQUIRED) #Needed by framework
+find_dependency(CURL REQUIRED) #Needed by framework (used for curl initialization)
+find_dependency(Jansson REQUIRED) #Needed by dfi, etcdlib, remote services, pubsub
+
+if (TARGET Celix::dfi)
+  find_dependency(FFI REQUIRED)
+endif()
+if (TARGET Celix::RsaConfiguredDiscovery)
+  find_dependency(RapidJSON REQUIRED)
+endif ()
+if (TARGET Celix::rsa_discovery_common)
+  find_dependency(LibXml2 REQUIRED)
+endif ()
+if (TARGET Celix::celix_pubsub_admin_zmq OR TARGET Celix::celix_pubsub_admin_zmq_v2)
+  find_dependency(ZMQ REQUIRED)
+  find_dependency(CZMQ REQUIRED)
+endif ()
+if (TARGET Celix::pubsub_admin_nanomsg)
+  find_dependency(NanoMsg REQUIRED)
+endif ()


Fixed mariadb client library detection for 64-bit

--- cmake/FindMariaDB.cmake
+++ cmake/FindMariaDB.cmake
@@ -4,7 +4,7 @@
 #
 # Try to find the include directory

-IF(${MSI_64})
+IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
   SET(PFILES $ENV{ProgramW6432})
 ELSE()
   SET(PFILES $ENV{ProgramFiles})


fixed install path of plugins.xml openvino file

--- cmake/InstallFAST.cmake
+++ cmake/InstallFAST.cmake
@@ -263,9 +263,15 @@
 	install(FILES ${FAST_EXTERNAL_BUILD_DIR}/OpenVINO/src/OpenVINO/LICENSE
 		DESTINATION fast/licenses/openvino/
 	)
-	install(FILES ${PROJECT_BINARY_DIR}/plugins.xml
-	  DESTINATION fast/bin/
-  )
+	if(WIN32)
+		install(FILES ${PROJECT_BINARY_DIR}/bin/plugins.xml
+		  DESTINATION fast/bin/
+	  )
+	else()
+		install(FILES ${PROJECT_BINARY_DIR}/lib/plugins.xml
+			DESTINATION fast/lib/
+		)
+	endif()
 endif()

 if(FAST_MODULE_RealSense)


cmake: fix CMake error

cmake: fix CMake error

"install DIRECTORY does not allow "COMPONENT" after PATTERN or REGEX."

--- cmake/OpenCVUtils.cmake
+++ cmake/OpenCVUtils.cmake
@@ -1098,16 +1098,16 @@

 macro(ocv_add_testdata basedir dest_subdir)
   if(BUILD_TESTS)
-    cmake_parse_arguments(__TESTDATA "" "COMPONENT" "" ${ARGN})
     if(NOT CMAKE_CROSSCOMPILING AND NOT INSTALL_TESTS)
       file(COPY ${basedir}/
            DESTINATION ${CMAKE_BINARY_DIR}/${OPENCV_TEST_DATA_INSTALL_PATH}/${dest_subdir}
-           ${__TESTDATA_UNPARSED_ARGUMENTS}
+           ${ARGN}
       )
     endif()
     if(INSTALL_TESTS)
       install(DIRECTORY ${basedir}/
               DESTINATION ${OPENCV_TEST_DATA_INSTALL_PATH}/contrib/text
+              COMPONENT "tests"
               ${ARGN}
       )
     endif()


Add missing sgx includes (#2878)

Add missing sgx includes (#2878)

--- cmake/modules/SGX.cmake
+++ cmake/modules/SGX.cmake
@@ -48,4 +48,6 @@
     -L${USE_SGX}/lib64 -l${_urts_lib}
     -L${RUST_SGX_SDK}/sgx_ustdc -lsgx_ustdc)
   list(APPEND RUNTIME_SRCS ${RUNTIME_SGX_SRCS})
+
+  include_directories(${RUST_SGX_SDK}/edl ${RUST_SGX_SDK}/common)
 endif()


Even in shared build Windows requires to find static libraries, issue #636

git-svn-id: e7ea667a1d39a4453c4efcc4ba7bca3d620c3f19@5284 a9d63959-f2ad-4865-b262-bf0e56cfafb6

--- cmake/pcl_options.cmake
+++ cmake/pcl_options.cmake
@@ -6,7 +6,10 @@
   set(PCL_LIB_PREFIX ${CMAKE_SHARED_LIBRARY_PREFIX})
   set(PCL_LIB_SUFFIX ${CMAKE_SHARED_LIBRARY_SUFFIX})
   set(PCL_LIB_TYPE "SHARED")
-  set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_SHARED_LIBRARY_SUFFIX})
+#  set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_SHARED_LIBRARY_SUFFIX})
+  if(WIN32)
+    set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_IMPORT_LIBRARY_SUFFIX})
+  endif(WIN32)
 else(PCL_SHARED_LIBS)
   set(PCL_LIB_PREFIX ${CMAKE_STATIC_LIBRARY_PREFIX})
   set(PCL_LIB_SUFFIX ${CMAKE_STATIC_LIBRARY_SUFFIX})


cmake: Up C++ standard to c++17

cmake: Up C++ standard to c++17

--- cmake/pre.service.cmake
+++ cmake/pre.service.cmake
@@ -30,7 +30,7 @@
 set(DCMAKE_CXX_COMPILER_TARGET ${TRIPLE})
 set(DCMAKE_C_COMPILER_TARGET ${TRIPLE})

-set(CPP_VERSION c++14)
+set(CPP_VERSION c++17)

 add_definitions(-DARCH_${ARCH})
 add_definitions(-DARCH="${ARCH}")