[package]
name = "pixelscript"
version = "0.6.4"
edition = "2024"
license = "Apache-2.0"
authors = ["Jordan Castro jordan@grupojvm.com"]
description = "Multi language scripting runtime"
repository = "https://github.com/jordan-castro/pixelscript"

[lib]
crate-type = ["staticlib", "rlib"]

[dependencies]
etffi = "0.1.2"

[build-dependencies]
cbindgen = "0.29.2"
cc = "1.2.52"
bindgen = "0.72.1"

[features]
# Default includes all languages and cores.
default = ["lua", "python", "js", "include-core", "js_commonjs"]
# Include LUA scripting.
lua = []
# Include Python scripting. Via pocketpy
python = []
# Include PHP scripting. v5.3 Via PH7
php = []
# luajit uses the same lua engine but with JIT flags
luajit = []
js = []

# JS specific to add or not to add CommonJS `require`
js_commonjs = []

# Core libs
# Include all core libs (toggled by default)
include-core = [
    "pxs_json",
    "pxs_mem"
]
pxs_json = []
pxs_mem = []

# Compile pixel script to debug in a "release" enviroment
pxs-debug = []

testing = []

[profile.release]
opt-level = "z"
strip = true
lto = "fat"
codegen-units = 1
panic = "unwind"
debug = false
incremental = false
