Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cfd0904496 |
@@ -1,19 +1,15 @@
|
|||||||
|
|
||||||
$FileToWrite = Get-ChildItem -Path $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt
|
|
||||||
$Temp = $FileToWrite.FullName.Split('\')
|
|
||||||
$MainProjectDir = $Temp[0..($Temp.Count-4)] -join '\'
|
|
||||||
|
|
||||||
$Template = ""
|
$Template = ""
|
||||||
$IncDirs = [System.Collections.Hashtable]::new()
|
$IncDirs = [System.Collections.Hashtable]::new()
|
||||||
$files = Get-ChildItem -Path $MainProjectDir/Library -Recurse -Include '*.h' #-Name
|
$files = Get-ChildItem -Path $PSScriptRoot/../../Library -Recurse -Include '*.h' #-Name
|
||||||
|
|
||||||
$StartString = Select-String -Path $FileToWrite -Pattern "# Library folder"
|
$StartString = Select-String -Path $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Pattern "# Library folder"
|
||||||
$StopString = Select-String -Path $FileToWrite -Pattern "# Library folder end"
|
$StopString = Select-String -Path $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Pattern "# Library folder end"
|
||||||
|
|
||||||
if ($StartString.Count -eq 2 -and $StopString.Count -eq 1)
|
if ($StartString.Count -eq 2 -and $StopString.Count -eq 1)
|
||||||
{
|
{
|
||||||
# Считываем содержимое файла
|
# Считываем содержимое файла
|
||||||
$content = Get-Content $FileToWrite
|
$content = Get-Content $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt
|
||||||
|
|
||||||
# Указываем диапазон строк для удаления
|
# Указываем диапазон строк для удаления
|
||||||
$startLine = $StartString[0].LineNumber
|
$startLine = $StartString[0].LineNumber
|
||||||
@@ -23,12 +19,12 @@ if ($StartString.Count -eq 2 -and $StopString.Count -eq 1)
|
|||||||
$content = $content[0..($startLine-2)] + $content[($endLine)..($content.Length)]
|
$content = $content[0..($startLine-2)] + $content[($endLine)..($content.Length)]
|
||||||
|
|
||||||
# Записываем обновленный файл
|
# Записываем обновленный файл
|
||||||
$content | Out-File $FileToWrite -Encoding UTF8
|
$content | Out-File $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Encoding UTF8
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Write-Output "# Library folder" | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output "# Library folder" | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
Write-Output "set(DS_Include_Dirs" | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output "set(DS_Include_Dirs" | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
|
|
||||||
foreach($file in $files)
|
foreach($file in $files)
|
||||||
{
|
{
|
||||||
@@ -40,36 +36,38 @@ foreach($file in $files)
|
|||||||
|
|
||||||
foreach($IncDir in $IncDirs.Values)
|
foreach($IncDir in $IncDirs.Values)
|
||||||
{
|
{
|
||||||
$Template = $MainProjectDir
|
$Template = $PSScriptRoot
|
||||||
|
$Template = $Template -replace "\\cmake\\stm32cubemx", ''
|
||||||
$Template = $Template -replace "\\", '/'
|
$Template = $Template -replace "\\", '/'
|
||||||
|
|
||||||
$TempString = $IncDir -replace '\\', '/'
|
$TempString = $IncDir -replace '\\', '/'
|
||||||
$TempString = $TempString -replace $Template, ''
|
$TempString = $TempString -replace $Template, ''
|
||||||
$TempString = ' ${CMAKE_SOURCE_DIR}' + $TempString
|
$TempString = ' ${CMAKE_SOURCE_DIR}' + $TempString
|
||||||
Write-Output $TempString | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output $TempString | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
}
|
}
|
||||||
|
|
||||||
Write-Output ')' | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output ')' | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
Write-Output 'target_include_directories(stm32cubemx INTERFACE ${DS_Include_Dirs})' | Out-File $FileToWrite -Append -Encoding utf8
|
Write-Output 'target_include_directories(stm32cubemx INTERFACE ${DS_Include_Dirs})' | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
Write-Output '' | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output '' | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
Write-Output 'set(DS_Application_Src' | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output 'set(DS_Application_Src' | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
|
|
||||||
|
|
||||||
$files = Get-ChildItem -Path $MainProjectDir/Library -Recurse -Include '*.c'
|
$files = Get-ChildItem -Path $PSScriptRoot/../../Library -Recurse -Include '*.c' #-Name
|
||||||
|
|
||||||
foreach($file in $files)
|
foreach($file in $files)
|
||||||
{
|
{
|
||||||
$Template = $MainProjectDir
|
$Template = $PSScriptRoot
|
||||||
|
$Template = $Template -replace "\\cmake\\stm32cubemx", ''
|
||||||
$Template = $Template -replace "\\", '/'
|
$Template = $Template -replace "\\", '/'
|
||||||
|
|
||||||
$TempString = $file.FullName -replace '\\', '/'
|
$TempString = $file.FullName -replace '\\', '/'
|
||||||
$TempString = $TempString -replace $Template, ''
|
$TempString = $TempString -replace $Template, ''
|
||||||
$TempString = ' ${CMAKE_SOURCE_DIR}' + $TempString
|
$TempString = ' ${CMAKE_SOURCE_DIR}' + $TempString
|
||||||
Write-Output $TempString | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output $TempString | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
}
|
}
|
||||||
|
|
||||||
Write-Output ')' | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output ')' | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
Write-Output 'target_sources(${CMAKE_PROJECT_NAME} PRIVATE ${DS_Application_Src})' | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output 'target_sources(${CMAKE_PROJECT_NAME} PRIVATE ${DS_Application_Src})' | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
Write-Output "# Library folder end" | Out-File -FilePath $FileToWrite -Append -Encoding utf8
|
Write-Output "# Library folder end" | Out-File -FilePath $PSScriptRoot/../../cmake/stm32cubemx/CMakeLists.txt -Append -Encoding utf8
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user