forked from Bananymous/banan-os
				
			BuildSystem: add rule to build libstdc++
We can now build libstdc++ and actually link with g++
This commit is contained in:
		
							parent
							
								
									8645c4c653
								
							
						
					
					
						commit
						2df7f8a1e5
					
				| 
						 | 
					@ -54,6 +54,12 @@ add_custom_target(toolchain
 | 
				
			||||||
	USES_TERMINAL
 | 
						USES_TERMINAL
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					add_custom_target(libstdc++
 | 
				
			||||||
 | 
						COMMAND ${CMAKE_COMMAND} -E env LIBSTDCPP="1" ${CMAKE_SOURCE_DIR}/toolchain/build.sh
 | 
				
			||||||
 | 
						DEPENDS libc-install
 | 
				
			||||||
 | 
						USES_TERMINAL
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
add_custom_target(image
 | 
					add_custom_target(image
 | 
				
			||||||
	COMMAND ${CMAKE_COMMAND} -E env SYSROOT="${BANAN_SYSROOT}" DISK_IMAGE_PATH="${DISK_IMAGE_PATH}" ${CMAKE_SOURCE_DIR}/image.sh
 | 
						COMMAND ${CMAKE_COMMAND} -E env SYSROOT="${BANAN_SYSROOT}" DISK_IMAGE_PATH="${DISK_IMAGE_PATH}" ${CMAKE_SOURCE_DIR}/image.sh
 | 
				
			||||||
	DEPENDS kernel-install
 | 
						DEPENDS kernel-install
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,6 +6,13 @@ GCC_VERSION="gcc-12.2.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cd $(dirname "$0")
 | 
					cd $(dirname "$0")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [[ -n $LIBSTDCPP ]]; then
 | 
				
			||||||
 | 
						cd build/${GCC_VERSION}/
 | 
				
			||||||
 | 
						make -j $(nproc) all-target-libstdc++-v3
 | 
				
			||||||
 | 
						make install-target-libstdc++-v3
 | 
				
			||||||
 | 
						exit 0
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if [[ -z $SYSROOT ]]; then
 | 
					if [[ -z $SYSROOT ]]; then
 | 
				
			||||||
	echo "You must set the SYSROOT environment variable" >&2
 | 
						echo "You must set the SYSROOT environment variable" >&2
 | 
				
			||||||
	exit 1
 | 
						exit 1
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -17,7 +17,6 @@ add_custom_target(userspace)
 | 
				
			||||||
add_custom_target(userspace-install DEPENDS userspace)
 | 
					add_custom_target(userspace-install DEPENDS userspace)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
foreach(USERSPACE_PROJECT ${USERSPACE_PROJECTS})
 | 
					foreach(USERSPACE_PROJECT ${USERSPACE_PROJECTS})
 | 
				
			||||||
	target_link_options(${USERSPACE_PROJECT} PUBLIC -nodefaultlibs)
 | 
					 | 
				
			||||||
	add_dependencies(userspace ${USERSPACE_PROJECT})
 | 
						add_dependencies(userspace ${USERSPACE_PROJECT})
 | 
				
			||||||
	add_dependencies(userspace-install ${USERSPACE_PROJECT}-install)
 | 
						add_dependencies(userspace-install ${USERSPACE_PROJECT}-install)
 | 
				
			||||||
endforeach()
 | 
					endforeach()
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue