less prototype, less bad code implementation of CCHM type theory
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

28 lines
1014 B

FUNCTIONS := $(shell grep -R "foreign" src/ | cut -d' ' -f4)
HS_FILES := $(shell find src -type f -name '*.hs' -or -name '*.hs-boot')
CABAL_OPTL := $(foreach function,$(FUNCTIONS),--ghc-option=-optl--export-function=$(function)) -f asterius
AHCD_OPTL := $(foreach function,$(FUNCTIONS),--export-function=$(function))
CABAL := ahc-cabal
AHCD := ahc-dist
web/dist/cubical.wasm: web/dist/cubical.js
cp dist-newstyle/cubical.wasm $@
web/dist/cubical.js: dist-newstyle/cubical.js
cp dist-newstyle/cubical.js $@
dist-newstyle/cubical.js: dist-newstyle/cubical src/wrapper.mjs
mkdir -p dist-newstyle/ahcd-spam
$(AHCD) $(AHCD_OPTL) --input-exe $< --browser --bundle --input-mjs src/wrapper.mjs
dist-newstyle/cubical: src/Presyntax/Lexer.hs src/Presyntax/Parser.hs $(HS_FILES)
$(CABAL) v2-install $(CABAL_OPTL) --installdir dist-newstyle exe:cubical --overwrite-policy=always
src/Presyntax/Lexer.hs: src/Presyntax/Lexer.x
alex $<
src/Presyntax/Parser.hs: src/Presyntax/Parser.y
happy $<