File: 05_gcc-15-fix.patch

package info (click to toggle)
neuron 8.2.6-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 34,760 kB
  • sloc: cpp: 149,571; python: 58,465; ansic: 50,329; sh: 3,510; xml: 213; pascal: 51; makefile: 35; sed: 5
file content (60 lines) | stat: -rw-r--r-- 2,553 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
From 8aff063f3c479d68cd6c479a073d668f290d43ba Mon Sep 17 00:00:00 2001
From: nrnhines <michael.hines@yale.edu>
Date: Thu, 10 Apr 2025 13:35:55 -0400
Subject: [PATCH] Fedora gcc-15 fixes for release/8.2 (#3381)

* Update coreneuron to avoid can't find <cstdio> issue on Apple M1
---
 CMakeLists.txt                  | 2 ++
 bin/nrnivmodl_makefile_cmake.in | 4 ++--
 cmake/CMakeListsNrnMech.cmake   | 1 +
 external/coreneuron             | 2 +-
 4 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9b18161cc8..f592c6426c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -24,6 +24,8 @@ project(
 # =============================================================================
 # CMake common project settings
 # =============================================================================
+set(CMAKE_C_STANDARD 11)
+set(CMAKE_C_STANDARD_REQUIRED ON)
 set(CMAKE_CXX_STANDARD 11)
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
 set(CMAKE_CXX_EXTENSIONS OFF)
diff --git a/bin/nrnivmodl_makefile_cmake.in b/bin/nrnivmodl_makefile_cmake.in
index 9d37fbaf49..ae1311317e 100644
--- a/bin/nrnivmodl_makefile_cmake.in
+++ b/bin/nrnivmodl_makefile_cmake.in
@@ -66,7 +66,7 @@ ifeq ($(origin CC), default)
     CC = @CMAKE_C_COMPILER@
     CXX = @CMAKE_CXX_COMPILER@
 endif
-CFLAGS = @BUILD_TYPE_C_FLAGS@ @CMAKE_C_FLAGS@
+CFLAGS = @BUILD_TYPE_C_FLAGS@ @CMAKE_C_FLAGS@ @C11_STANDARD_COMPILE_OPTION@
 CXXFLAGS = @BUILD_TYPE_CXX_FLAGS@ @CMAKE_CXX_FLAGS@ @CXX11_STANDARD_COMPILE_OPTION@
 
 COMPILE = $(CC) $(CFLAGS) @NRN_COMPILE_DEFS_STRING@ @NRN_COMPILE_FLAGS_STRING@
@@ -139,7 +139,7 @@ mech_lib_static: mod_func.o $(mod_objs) $(nrn_lib) build_always
 
 mod_func.o: mod_func.cpp
 	@printf " -> $(C_GREEN)Compiling$(C_RESET) $<\n"
-	$(COMPILE) $(INCLUDES) @CMAKE_CXX_COMPILE_OPTIONS_PIC@ -c $< -o $@
+	$(CXXCOMPILE) $(INCLUDES) @CMAKE_CXX_COMPILE_OPTIONS_PIC@ -c $< -o $@
 
 # Generic build c->o. Need PIC for shared lib
 $(OBJS_DIR)/%.o: $(MODC_DIR)/%.c | $(OBJS_DIR)
diff --git a/cmake/CMakeListsNrnMech.cmake b/cmake/CMakeListsNrnMech.cmake
index 7738ca3ed6..7540cca386 100644
--- a/cmake/CMakeListsNrnMech.cmake
+++ b/cmake/CMakeListsNrnMech.cmake
@@ -68,6 +68,7 @@ endforeach()
 
 # PGI add --c++11;-A option for c++11 flag
 string(REPLACE ";" " " CXX11_STANDARD_COMPILE_OPTION "${CMAKE_CXX11_STANDARD_COMPILE_OPTION}")
+set(C11_STANDARD_COMPILE_OPTION "${CMAKE_C11_STANDARD_COMPILE_OPTION}")
 
 # Compiler flags depending on cmake build type from BUILD_TYPE_<LANG>_FLAGS
 string(TOUPPER "${CMAKE_BUILD_TYPE}" _BUILD_TYPE)