makefile: simplify and speed up

pull/4884/head
Alexander Medvednikov 2020-05-13 14:50:33 +02:00
parent db5036686b
commit c7e4f5eefb
2 changed files with 8 additions and 36 deletions

View File

@ -4,12 +4,7 @@ LDFLAGS ?=
TMPDIR ?= /tmp
VCFILE := v.c
TMPVC := $(TMPDIR)/vc
TMPTCC := /var/tmp/tcc
VCREPO := https://github.com/vlang/vc
TCCREPO := https://github.com/vlang/tccbin
GITCLEANPULL := git clean -xf && git pull --quiet
GITFASTCLONE := git clone --depth 1 --quiet
TMPVC := $(TMPDIR)/v.c
#### Platform detections and overrides:
_SYS := $(shell uname 2>/dev/null || echo Unknown)
@ -39,16 +34,15 @@ endif
#####
ifdef WIN32
TCCREPO := https://github.com/vlang/tccbin_win
VCFILE := v_win.c
endif
all: latest_vc latest_tcc
all: latest_vc
ifdef WIN32
$(CC) $(CFLAGS) -g -std=c99 -municode -w -o v.exe $(TMPVC)/$(VCFILE) $(LDFLAGS)
$(CC) $(CFLAGS) -g -std=c99 -municode -w -o v.exe $(TMPVC) $(LDFLAGS)
./v.exe self
else
$(CC) $(CFLAGS) -g -std=gnu11 -w -o v $(TMPVC)/$(VCFILE) $(LDFLAGS) -lm
$(CC) $(CFLAGS) -g -std=gnu11 -w -o v $(TMPVC) $(LDFLAGS) -lm
ifdef ANDROID
chmod 755 v
endif
@ -67,32 +61,10 @@ clean: clean_tmp
git clean -xf
clean_tmp:
rm -rf $(TMPTCC)
rm -rf $(TMPVC)
rm $(TMPVC)
latest_vc: $(TMPVC)/.git/config
cd $(TMPVC) && $(GITCLEANPULL)
fresh_vc:
rm -rf $(TMPVC)
$(GITFASTCLONE) $(VCREPO) $(TMPVC)
latest_tcc: $(TMPTCC)/.git/config
ifndef ANDROID
cd $(TMPTCC) && $(GITCLEANPULL)
endif
fresh_tcc:
ifndef ANDROID
rm -rf $(TMPTCC)
$(GITFASTCLONE) $(TCCREPO) $(TMPTCC)
endif
$(TMPTCC)/.git/config:
$(MAKE) fresh_tcc
$(TMPVC)/.git/config:
$(MAKE) fresh_vc
latest_vc:
curl "https://raw.githubusercontent.com/vlang/vc/master/v.c" -o $(TMPVC) -s
selfcompile:
./v -keepc -cg -o v cmd/v

View File

@ -8,7 +8,7 @@ if exist "vc" (
rd /s /q vc
)
echo Downloading v.c...
echo Downloading v.c from github.com/vlang/vc...
git clone --depth 1 --quiet https://github.com/vlang/vc
REM option to force msvc or gcc