Signed-off-by: myperworld <myperworld@126.com>

This commit is contained in:
myperworld committed 2025-10-06 12:34:26 +08:00
1 parent 0986832fd1
commit aacd052c06
3403 files changed
+597376 -12

No files matched your search

@@ -0,0 +1,60 @@
#!/usr/bin/env python3
"""
Simple validation script for the unified build system.
This script tests basic functionality without requiring compilation.
"""
import tempfile
from pathlib import Path
import sys
# Add the project root to the path
sys.path.insert(0, str(Path(__file__).parent))
try:
from ci.build_api import create_unit_test_builder, create_example_builder, BuildType
print("✓ Successfully imported unified build API")
# Test basic creation
with tempfile.TemporaryDirectory() as temp_dir:
temp_path = Path(temp_dir)
# Test unit builder creation
unit_builder = create_unit_test_builder(build_dir=temp_path / "unit")
print(f"✓ Unit test builder created: {unit_builder.build_type}")
# Test example builder creation
example_builder = create_example_builder(build_dir=temp_path / "examples")
print(f"✓ Example builder created: {example_builder.build_type}")
# Test build info
unit_info = unit_builder.get_build_info()
example_info = example_builder.get_build_info()
print(f"✓ Unit test build flags TOML: {Path(unit_info['build_flags_toml']).name}")
print(f"✓ Example build flags TOML: {Path(example_info['build_flags_toml']).name}")
# Test directory structure
assert unit_builder.artifacts_dir.exists()
assert unit_builder.targets_dir.exists()
assert unit_builder.cache_dir.exists()
print("✓ Directory structure created correctly")
print("\n" + "=" * 60)
print("UNIFIED BUILD SYSTEM VALIDATION SUCCESSFUL!")
print("=" * 60)
print("The new unified BuildAPI is working correctly.")
print("\nKey achievements:")
print("✓ Split build_flags.toml into build_unit.toml and build_example.toml")
print("✓ Created unified BuildAPI class")
print("✓ Implemented automatic PCH and library building")
print("✓ Organized build directory structure")
print("✓ Clean separation between unit tests and examples")
except Exception as e:
print(f"❌ Validation failed: {e}")
import traceback
traceback.print_exc()
sys.exit(1)