Files
AlgebraInLean/lakefile.lean
T
2026-08-11 07:23:56 +02:00

40 lines
1.5 KiB
Lean4

import Lake
open Lake DSL
-- The manual genre of the Lean reference manual is pinned to the tag
-- matching the toolchain; verso is NOT required explicitly but resolved
-- through the reference manual's own pin (its v4.33.0-rc2 tag needs a
-- verso nightly, not the verso tag of the same name). Mathlib is
-- pinned to the same commit as before (a master snapshot on toolchain
-- v4.33.0-rc2). Mathlib comes LAST so that its pins of shared
-- dependencies (batteries, …) take precedence — otherwise
-- `lake exe cache get` refuses to work.
require «verso-manual» from git
"https://github.com/leanprover/reference-manual.git"@"v4.33.0-rc2"
require mathlib from git
"https://github.com/leanprover-community/mathlib4"@"87adeaebd370a3b6a41ac4f044fddd4bf81803ad"
package «AlgebraInLean» where
-- building the C code costs much more than the optimizations save
moreLeancArgs := #["-O0"]
-- work around clang emitting invalid linker optimization hints that lld rejects
moreLinkArgs :=
if System.Platform.isOSX then
#["-Wl,-ignore_optimization_hints"]
else #[]
/-- The exercise files that students open in VS Code. -/
@[default_target]
lean_lib «AlgebraInLean» where
/-- The Verso sources of the course notes. -/
@[default_target]
lean_lib «Book» where
/-- The generator executable: `lake exe algebrainlean --output _out`
renders the course notes to `_out/html-multi`. -/
@[default_target]
lean_exe «algebrainlean» where
srcDir := "./"
root := `Main