Skip to content

Commit 0f9290b

Browse files
committed
Modularied stdlib_stats
1 parent 72ad5fb commit 0f9290b

19 files changed

+59
-18
lines changed

CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,13 @@ if(STDLIB_NO_BITSET)
5656
add_compile_definitions(STDLIB_NO_BITSET)
5757
endif()
5858

59+
option(STDLIB_NO_STATS "Does not compile STDLIB STATS" OFF)
60+
61+
if(STDLIB_NO_STATS)
62+
message(STATUS "Disable stdlib stats module")
63+
add_compile_definitions(STDLIB_NO_STATS)
64+
endif()
65+
5966
option(FIND_BLAS "Find external BLAS and LAPACK" ON)
6067

6168
# --- find external BLAS and LAPACK

example/CMakeLists.txt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,12 @@ add_subdirectory(selection)
3838
add_subdirectory(sorting)
3939
add_subdirectory(specialfunctions_gamma)
4040
add_subdirectory(specialmatrices)
41-
add_subdirectory(stats)
42-
add_subdirectory(stats_distribution_exponential)
43-
add_subdirectory(stats_distribution_normal)
44-
add_subdirectory(stats_distribution_uniform)
41+
if (NOT STDLIB_NO_STATS)
42+
add_subdirectory(stats)
43+
add_subdirectory(stats_distribution_exponential)
44+
add_subdirectory(stats_distribution_normal)
45+
add_subdirectory(stats_distribution_uniform)
46+
endif()
4547
add_subdirectory(stringlist_type)
4648
add_subdirectory(strings)
4749
add_subdirectory(string_type)

include/macros.inc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,10 @@
55
#else
66
#define STDLIB_BITSET 1
77
#endif
8+
9+
!Default: compile the stats module
10+
#ifdef STDLIB_NO_STATS
11+
#define STDLIB_STATS 0
12+
#else
13+
#define STDLIB_STATS 1
14+
#endif

src/CMakeLists.txt

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
if (NOT STDLIB_NO_BITSET)
22
add_subdirectory(bitsets)
33
endif()
4+
if (NOT STDLIB_NO_STATS)
5+
add_subdirectory(stats)
6+
endif()
47
add_subdirectory(blas)
58
add_subdirectory(lapack)
69

@@ -58,19 +61,6 @@ set(fppFiles
5861
stdlib_specialfunctions.fypp
5962
stdlib_specialmatrices.fypp
6063
stdlib_specialmatrices_tridiagonal.fypp
61-
stdlib_stats.fypp
62-
stdlib_stats_corr.fypp
63-
stdlib_stats_cov.fypp
64-
stdlib_stats_mean.fypp
65-
stdlib_stats_median.fypp
66-
stdlib_stats_moment.fypp
67-
stdlib_stats_moment_all.fypp
68-
stdlib_stats_moment_mask.fypp
69-
stdlib_stats_moment_scalar.fypp
70-
stdlib_stats_distribution_uniform.fypp
71-
stdlib_stats_distribution_normal.fypp
72-
stdlib_stats_distribution_exponential.fypp
73-
stdlib_stats_var.fypp
7464
stdlib_quadrature.fypp
7565
stdlib_quadrature_trapz.fypp
7666
stdlib_quadrature_simps.fypp
@@ -124,4 +114,5 @@ configure_stdlib_target(${PROJECT_NAME} f90Files fppFiles cppFiles)
124114

125115
target_link_libraries(${PROJECT_NAME} PUBLIC
126116
$<$<NOT:$<BOOL:${STDLIB_NO_BITSET}>>:bitsets>
117+
$<$<NOT:$<BOOL:${STDLIB_NO_STATS}>>:stats>
127118
blas lapack)

src/stats/CMakeLists.txt

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
set(stats_cppFiles
2+
../stdlib_linalg_constants.fypp
3+
)
4+
5+
set(stats_fppFiles
6+
../stdlib_ascii.fypp
7+
../stdlib_io.fypp
8+
../stdlib_kinds.fypp
9+
../stdlib_optval.fypp
10+
../stdlib_error.fypp
11+
../stdlib_linalg.fypp
12+
../stdlib_linalg_diag.fypp
13+
../stdlib_linalg_state.fypp
14+
../stdlib_random.fypp
15+
../stdlib_selection.fypp
16+
../stdlib_string_type.fypp
17+
stdlib_stats_corr.fypp
18+
stdlib_stats_cov.fypp
19+
stdlib_stats_distribution_exponential.fypp
20+
stdlib_stats_distribution_normal.fypp
21+
stdlib_stats_distribution_uniform.fypp
22+
stdlib_stats.fypp
23+
stdlib_stats_mean.fypp
24+
stdlib_stats_median.fypp
25+
stdlib_stats_moment_all.fypp
26+
stdlib_stats_moment.fypp
27+
stdlib_stats_moment_mask.fypp
28+
stdlib_stats_moment_scalar.fypp
29+
stdlib_stats_var.fypp
30+
)
31+
32+
configure_stdlib_target(stats "" stats_fppFiles stats_cppFiles)
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)