Skip to content

Commit 912ebe7

Browse files
authored
Merge pull request #2515 from berryzplus/feature/fix_header_make
HeaderMakeをpythonスクリプトに移行する
2 parents 63e4b3c + 87d2ed3 commit 912ebe7

11 files changed

Lines changed: 799 additions & 397 deletions

File tree

.github/workflows/build-sakura.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,7 @@ jobs:
217217
bw-output/
218218
tests*-coverage.xml
219219
tests*-googletest.xml
220+
pytest-coverage.xml
220221
sonar-metadata.json
221222
github-event.json
222223

sonar-project.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@ sonar.sourceEncoding=UTF-8
77

88
sonar.sources=.
99

10-
sonar.exclusions=build/**,externals/**,tools/HeaderMake/**,tools/ppa_stub/**,tools/dll_plugin1/**,src/main/resources/**,src/test/**,tests*-*.xml,checkEncoding.py
10+
sonar.exclusions=build/**,externals/**,tools/ppa_stub/**,tools/dll_plugin1/**,src/main/resources/**,src/test/**,tests*-*.xml,checkEncoding.py
1111

1212
sonar.python.version=3

src/main/cmake/HeaderMake.cmake

Lines changed: 0 additions & 41 deletions
This file was deleted.

src/main/cmake/sakura.cmake

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -207,18 +207,19 @@ add_custom_target(generate_version_header
207207
"${CMAKE_BINARY_DIR}/version.h"
208208
)
209209

210-
# Include HeaderMake.cmake for HeaderMake command
211-
include(${CMAKE_SOURCE_DIR}/src/main/cmake/HeaderMake.cmake)
212-
213210
# Create a custom command for funccode_define generation
214211
add_custom_command(
215212
OUTPUT "${CMAKE_BINARY_DIR}/Funccode_define.h"
216-
COMMAND ${HEADER_MAKE_EXECUTABLE}
213+
COMMAND ${Python3_EXECUTABLE}
214+
"${CMAKE_SOURCE_DIR}/src/main/py/header_make.py"
217215
-in=${CMAKE_SOURCE_DIR}/sakura_core/Funccode_x.hsrc
218216
-out=${CMAKE_BINARY_DIR}/Funccode_define.h
219217
-mode=define
220-
DEPENDS generate_header_make
218+
DEPENDS
219+
${CMAKE_SOURCE_DIR}/src/main/py/header_make.py
220+
${CMAKE_SOURCE_DIR}/sakura_core/Funccode_x.hsrc
221221
COMMENT "Generating Funccode_define.h"
222+
VERBATIM
222223
)
223224

224225
# Create a custom target that depends on the generated file
@@ -230,13 +231,17 @@ add_custom_target(generate_funccode_define
230231
# Create a custom command for funccode_enum generation
231232
add_custom_command(
232233
OUTPUT "${CMAKE_BINARY_DIR}/Funccode_enum.h"
233-
COMMAND ${HEADER_MAKE_EXECUTABLE}
234+
COMMAND ${Python3_EXECUTABLE}
235+
"${CMAKE_SOURCE_DIR}/src/main/py/header_make.py"
234236
-in=${CMAKE_SOURCE_DIR}/sakura_core/Funccode_x.hsrc
235237
-out=${CMAKE_BINARY_DIR}/Funccode_enum.h
236238
-mode=enum
237239
-enum=EFunctionCode
238-
DEPENDS generate_header_make
240+
DEPENDS
241+
${CMAKE_SOURCE_DIR}/src/main/py/header_make.py
242+
${CMAKE_SOURCE_DIR}/sakura_core/Funccode_x.hsrc
239243
COMMENT "Generating Funccode_enum.h"
244+
VERBATIM
240245
)
241246

242247
# Create a custom target that depends on the generated file

src/main/msbuild/cmake.props

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@
44
<CMakeToolsSourceDir>$([MSBuild]::NormalizePath('$(MSBuildThisFileDirectory)', '..\..\..\'))</CMakeToolsSourceDir>
55
<CMakeToolsBuildDir>$([MSBuild]::NormalizePath('$(MSBuildThisFileDirectory)', '..\..\..\build\$(Platform)\CMakeTools\'))</CMakeToolsBuildDir>
66
<CMakeToolsPath>$([MSBuild]::NormalizePath('$(CMakeToolsBuildDir)', '.'))</CMakeToolsPath>
7-
<HeaderMakeBuildDir>$([MSBuild]::NormalizePath('$(CMakeToolsBuildDir)', '.\HeaderMake\'))</HeaderMakeBuildDir>
8-
<HeaderMakeBuildPath>$([MSBuild]::NormalizePath('$(HeaderMakeBuildDir)', '.'))</HeaderMakeBuildPath>
9-
<HeaderMakeExe>$([MSBuild]::NormalizePath('$(CMakeToolsPath)', '.\bin\HeaderMake.exe'))</HeaderMakeExe>
107
<VersionHeader>$(CMakeToolsBuildDir)version.h</VersionHeader>
118
<FuncCodeDefine>$(CMakeToolsBuildDir)Funccode_define.h</FuncCodeDefine>
129
<FuncCodeEnum>$(CMakeToolsBuildDir)Funccode_enum.h</FuncCodeEnum>

src/main/msbuild/cmake.targets

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,10 @@
99
<Target Name="GenerateVersionHeader" Inputs="..\src\main\cmake\version.h.in" Outputs="$(VersionHeader)" DependsOnTargets="ConfigureCMakeTools" BeforeTargets="ResourceCompile;ClCompile">
1010
<Exec Command="pwsh -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command &quot;[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new($false); &amp; '$(CMakeExe)' --build '$(CMakeToolsPath)' --config $(Configuration) --target generate_version_header -- /nologo&quot;" StdOutEncoding="UTF-8" ConsoleToMSBuild="true" />
1111
</Target>
12-
<Target Name="ConfigureHeaderMake" Condition="!Exists('$(HeaderMakeBuildDir)CMakeCache.txt')" DependsOnTargets="GenerateVersionHeader">
13-
<Exec Command="pwsh -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command &quot;[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new($false); &amp; '$(CMakeExe)' --build '$(CMakeToolsPath)' --config $(Configuration) --target configure_header_make -- /nologo&quot;" StdOutEncoding="UTF-8" ConsoleToMSBuild="true" />
14-
</Target>
15-
<Target Name="GenerateHeaderMake" Condition="!Exists('$(HeaderMakeExe)')" DependsOnTargets="ConfigureHeaderMake">
16-
<Exec Command="pwsh -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command &quot;[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new($false); &amp; '$(CMakeExe)' --build '$(HeaderMakeBuildPath)' --config $(Configuration) -- /nologo &amp;&amp; &amp; '$(CMakeExe)' --install '$(HeaderMakeBuildPath)' --config $(Configuration)&quot;" StdOutEncoding="UTF-8" ConsoleToMSBuild="true" />
17-
<Exec Command="pwsh -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command &quot;&amp; '$(CMakeExe)' --build '$(CMakeToolsPath)' --config $(Configuration) --target generate_header_make -- /nologo &gt; $null&quot;" />
18-
</Target>
19-
<Target Name="GenerateFuncCodeDefine" Inputs="@(FuncCodeRes)" Outputs="$(FuncCodeDefine)" DependsOnTargets="GenerateHeaderMake" BeforeTargets="ResourceCompile">
12+
<Target Name="GenerateFuncCodeDefine" Inputs="@(FuncCodeRes)" Outputs="$(FuncCodeDefine)" DependsOnTargets="ConfigureCMakeTools" AfterTargets="GenerateVersionHeader" BeforeTargets="ResourceCompile">
2013
<Exec Command="pwsh -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command &quot;[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new($false); &amp; '$(CMakeExe)' --build '$(CMakeToolsPath)' --config $(Configuration) --target generate_funccode_define -- /nologo&quot;" StdOutEncoding="UTF-8" ConsoleToMSBuild="true" />
2114
</Target>
22-
<Target Name="GenerateFuncCodeEnum" Inputs="@(FuncCodeRes)" Outputs="$(FuncCodeEnum)" DependsOnTargets="GenerateHeaderMake" BeforeTargets="ClCompile">
15+
<Target Name="GenerateFuncCodeEnum" Inputs="@(FuncCodeRes)" Outputs="$(FuncCodeEnum)" DependsOnTargets="ConfigureCMakeTools" AfterTargets="GenerateVersionHeader" BeforeTargets="ClCompile">
2316
<Exec Command="pwsh -NoProfile -NonInteractive -ExecutionPolicy RemoteSigned -Command &quot;[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new($false); &amp; '$(CMakeExe)' --build '$(CMakeToolsPath)' --config $(Configuration) --target generate_funccode_enum -- /nologo&quot;" StdOutEncoding="UTF-8" ConsoleToMSBuild="true" />
2417
</Target>
2518
<Target Name="GenerateDarkModeLib" BeforeTargets="ClCompile">

0 commit comments

Comments
 (0)