Skip to content

Instantly share code, notes, and snippets.

@GOFAI
Created November 26, 2015 08:28
Show Gist options
  • Save GOFAI/62d99d478032ecbbbc60 to your computer and use it in GitHub Desktop.
Save GOFAI/62d99d478032ecbbbc60 to your computer and use it in GitHub Desktop.
makefile to build clasp on osx using homebrew dependencies
# -*- mode: GNUmakefile; indent-tabs-mode: t -*-
# Cleaned up by Shinmera October 13, 2015
export CLASP_HOME := $(or $(wildcard $(CLASP_HOME)),\
$(shell pwd))
include $(wildcard $(CLASP_HOME)/local.config)
export PJOBS ?= 1
export TARGET_OS ?= $(shell uname)
export TARGET_OS := $(or $(filter $(TARGET_OS), Linux),\
$(filter $(TARGET_OS), Darwin),\
$(error Invalid TARGET_OS: $(TARGET_OS)))
export ADDRESS-MODEL ?= 64
export ADDRESS-MODEL := $(or $(filter $(ADDRESS-MODEL), 64),\
$(error Invalid ADDRESS-MODEL: $(ADDRESS-MODEL)))
export LINK ?= shared
export LINK := $(or $(filter $(LINK), shared),\
$(filter $(LINK), static),\
$(error Invalid LINK: $(LINK)))
export VARIANT ?= release
export VARIANT := $(or $(filter $(VARIANT), debug),\
$(filter $(VARIANT), release),\
$(error Invalid VARIANT: $(VARIANT)))
export TOOLSET ?= $(or $(and $(filter $(TARGET_OS),Linux), clang-linux),\
$(and $(filter $(TARGET_OS),Darwin), clang-darwin))
export TOOLSET := $(or $(filter $(TOOLSET), clang-linux),\
$(filter $(TOOLSET), clang-darwin),\
$(error Invalid TOOLSET: $(TOOLSET)))
export PYTHON2 := $(or $(wildcard $(PYTHON2)),\
$(wildcard /usr/local/bin/python2.7),\
$(wildcard /usr/bin/python2.7),\
$(wildcard /usr/bin/python2),\
$(wildcard /usr/bin/python),\
$(error Could not find python.))
export EXECUTABLE_DIR ?= $(or $(and $(filter $(TARGET_OS),Linux), bin),\
$(and $(filter $(TARGET_OS),Darwin), MacOS))
export DEVEMACS ?= $(or $(and $(filter $(TARGET_OS),Linux), emacs -nw ./),\
$(and $(filter $(TARGET_OS),Darwin), open -n -a /Applications/Emacs.app ./))
export LLVM_CONFIG := $(or $(wildcard $(LLVM_CONFIG)),\
$(wildcard /usr/local/bin/llvm-config-3.6),\
$(wildcard /usr/bin/llvm-config),\
$(wildcard /usr/bin/llvm-config*),\
$(error Could not find llvm-config.))
export GIT_COMMIT ?= $(shell git rev-parse --short HEAD || echo "unknown-commit")
export CLASP_VERSION ?= $(shell git describe --always || echo "unknown-version")
export LLVM_CONFIG_RELEASE ?= $(LLVM_CONFIG)
export LLVM_CONFIG_DEBUG ?= $(or $(wildcard $(EXTERNALS_CLASP_DIR)/build/debug/bin/llvm-config),\
$(LLVM_CONFIG))
export LLVM_BIN_DIR ?= $(shell $(LLVM_CONFIG_RELEASE) --bindir)
export CLASP_INTERNAL_BUILD_TARGET_DIR ?= $(shell pwd)/build/clasp
export LIBATOMIC_OPS_SOURCE_DIR ?= $(CLASP_HOME)/src/boehm/libatomic_ops
export BOEHM_SOURCE_DIR ?= $(CLASP_HOME)/src/boehm/bdwgc
export BUILD ?= $(CLASP_HOME)/src/common/build
export CLASP_APP_EXECS ?= $(CLASP_INTERNAL_BUILD_TARGET_DIR)/Contents/execs
export CLASP_APP_RESOURCES_DIR ?= $(CLASP_INTERNAL_BUILD_TARGET_DIR)/Contents/Resources
export CLASP_APP_RESOURCES_LIB_COMMON_DIR ?= $(CLASP_INTERNAL_BUILD_TARGET_DIR)/Contents/Resources/lib/common
export BOOST_BUILD_SOURCE_DIR ?= $(CLASP_HOME)/tools/boost_build
export BOOST_BUILD_INSTALL ?= $(CLASP_APP_RESOURCES_DIR)/boost_build
export BJAM ?= $(BOOST_BUILD_INSTALL)/bin/bjam --ignore-site-config --user-config= -q
export CLASP_DEBUG_LLVM_LIB_DIR ?= $(shell $(LLVM_CONFIG_DEBUG) --libdir | tr -d '\n')
export CLASP_RELEASE_LLVM_LIB_DIR ?= $(shell $(LLVM_CONFIG_RELEASE) --libdir | tr -d '\n')
export CLASP_DEBUG_CXXFLAGS += -I$(shell $(LLVM_CONFIG_DEBUG) --includedir)
export CLASP_DEBUG_LINKFLAGS += -L$(CLASP_DEBUG_LLVM_LIB_DIR)
export CLASP_DEBUG_LINKFLAGS += $(shell $(LLVM_CONFIG_DEBUG) --libs)
export CLASP_DEBUG_LINKFLAGS += $(shell $(LLVM_CONFIG_DEBUG) --system-libs)
export CLASP_RELEASE_CXXFLAGS += -I$(shell $(LLVM_CONFIG_RELEASE) --includedir)
export CLASP_RELEASE_LINKFLAGS += -L$(CLASP_RELEASE_LLVM_LIB_DIR)
export CLASP_RELEASE_LINKFLAGS += $(shell $(LLVM_CONFIG_RELEASE) --libs)
export CLASP_RELEASE_LINKFLAGS += $(shell $(LLVM_CONFIG_RELEASE) --system-libs)
ifneq ($(EXTERNALS_CLASP_DIR),)
export CLASP_DEBUG_CXXFLAGS += -I$(EXTERNALS_CLASP_DIR)/build/common/include
export CLASP_DEBUG_LINKFLAGS += -L$(EXTERNALS_CLASP_DIR)/build/common/lib -lgmp -lgmpxx -lreadline -lexpat
export CLASP_RELEASE_CXXFLAGS += -I$(EXTERNALS_CLASP_DIR)/build/common/include
export CLASP_RELEASE_LINKFLAGS += -L$(EXTERNALS_CLASP_DIR)/build/common/lib -lgmp -lgmpxx -lreadline -lexpat
endif
ifeq ($(TARGET_OS),Darwin)
export INCLUDE_DIRS += /usr/local/opt/boost/include
export INCLUDE_DIRS += /usr/local/Cellar/gmp/6.0.0a/include
export INCLUDE_DIRS += /usr/local/opt/readline/include
export INCLUDE_DIRS += /usr/local/opt/zlib/include
export INCLUDE_DIRS += /usr/local/opt/expat/include
export INCLUDE_DIRS += /opt/local/include
export LIB_DIRS += /usr/local/opt/boost/lib
export LIB_DIRS += /usr/local/Cellar/gmp/6.0.0a/lib
export LIB_DIRS += /usr/local/opt/readline/lib
export LIB_DIRS += /usr/local/opt/zlib/lib
export LIB_DIRS += /usr/local/opt/expat/lib
export LIB_DIRS += /opt/local/lib
export BOEHM_CC = clang-3.6
export BOEHM_CXX = clang++-3.6
endif
ifeq ($(TARGET_OS),Linux)
export BOEHM_CC = $(LLVM_BIN_DIR)/clang
export BOEHM_CXX = $(LLVM_BIN_DIR)/clang++
endif
include_flags := $(foreach dir,$(INCLUDE_DIRS),$(and $(wildcard $(dir)),-I$(dir)))
lib_flags := $(foreach dir,$(LIB_DIRS),$(and $(wildcard $(dir)),-L$(dir)))
export CLASP_DEBUG_CXXFLAGS += $(include_flags)
export CLASP_DEBUG_LINKFLAGS += $(lib_flags)
export CLASP_RELEASE_CXXFLAGS += $(include_flags)
export CLASP_RELEASE_LINKFLAGS += $(lib_flags)
export BINDIR ?= $(CLASP_INTERNAL_BUILD_TARGET_DIR)/$(EXECUTABLE_DIR)
export EXECS ?= $(CLASP_INTERNAL_BUILD_TARGET_DIR)/Contents/execs/
export PATH := $(LLVM_BIN_DIR):$(PATH)
export PATH := $(CLASP_HOME)/src/common:$(PATH)
export PATH := $(BOOST_BUILD_INSTALL)/bin:$(PATH)
export PATH := $(BINDIR):$(PATH)
ifneq ($(CXXFLAGS),)
export USE_CXXFLAGS := cxxflags=$(CXXFLAGS)
endif
define varprint
@echo -e "\033[0;32m$(strip $(1))\033[0m: $($(strip $(1)))"
endef
all:
make print-config
make submodules
make asdf
make boost_build
make boehm
(cd src/lisp; $(BJAM) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp gc=boehm bundle )
(cd src/main; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/boehm/$(VARIANT) gc=boehm $(VARIANT) clasp_install )
make -C src/main min-boehm
make -C src/main bclasp-boehm-bitcode
make -C src/main bclasp-boehm-fasl
make -C src/main cclasp-from-bclasp-boehm-bitcode
# make -C src/main cclasp-boehm-fasl
make -C src/main cclasp-boehm-fasl
make -C src/main cclasp-boehm-addons
make executable-symlinks
echo Clasp is now built
mps-build:
(cd src/main; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/mps/release gc=mps release clasp_install )
(cd src/main; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/mps/debug gc=mps debug clasp_install )
make -C src/main link-min-mps
boot:
make submodules
make asdf
make boost_build
make boehm
make -C src/main boehmdc-release-cxx
make executable-symlinks
make -C src/main min-boehmdc
make -C src/main bclasp-boehmdc-bitcode
make -C src/main bclasp-boehmdc-fasl
make -C src/main bclasp-boehmdc-addons
boot-mps-interface:
make boot
make -C src/main mps-interface
# make -C src/main bclasp-boehmdc
# make -C src/main bclasp-boehmdc-addons
clasp-libraries:
(cd src/gctools; $(BJAM) link=$(LINK) program=clasp gctools install-lib)
devbuild:
(cd src/main; $(BUILD) -j$(PJOBS) link=$(LINK) program=clasp gc=boehmdc release dist )
$(BINDIR)/clasp_boehm_o : $(BINDIR)/release/boehm/clasp
@ln -s $(BINDIR)/release/boehm/clasp $(BINDIR)/clasp_boehm_o
$(BINDIR)/clasp_mps_o : $(BINDIR)/release/boehm/clasp
echo $< $>
executable-symlinks:
install -d $(BINDIR)
ln -sf ../Contents/execs/boehm/release/bin/clasp $(BINDIR)/clasp_boehm_o
ln -sf ../Contents/execs/boehmdc/release/bin/clasp $(BINDIR)/clasp_boehmdc_o
ln -sf ../Contents/execs/mps/release/bin/clasp $(BINDIR)/clasp_mps_o
ln -sf ../Contents/execs/boehm/debug/bin/clasp $(BINDIR)/clasp_boehm_d
ln -sf ../Contents/execs/boehmdc/debug/bin/clasp $(BINDIR)/clasp_boehmdc_d
ln -sf ../Contents/execs/mps/debug/bin/clasp $(BINDIR)/clasp_mps_d
libatomic-setup:
-(cd $(LIBATOMIC_OPS_SOURCE_DIR); autoreconf -vif)
-(cd $(LIBATOMIC_OPS_SOURCE_DIR); automake --add-missing )
install -d $(CLASP_APP_RESOURCES_LIB_COMMON_DIR);
(cd $(LIBATOMIC_OPS_SOURCE_DIR); \
export ALL_INTERIOR_PTRS=1; \
CFLAGS="-DUSE_MMAP -g" \
./configure --enable-shared=yes --enable-static=yes --enable-handle-fork --enable-cplusplus --prefix=$(CLASP_APP_RESOURCES_LIB_COMMON_DIR);)
libatomic-compile:
(cd $(LIBATOMIC_OPS_SOURCE_DIR); make -j$(PJOBS) | tee _libatomic_ops.log)
(cd $(LIBATOMIC_OPS_SOURCE_DIR); make -j$(PJOBS) install | tee _libatomic_ops_install.log)
boehm-setup:
-(cd $(BOEHM_SOURCE_DIR); autoreconf -vif)
-(cd $(BOEHM_SOURCE_DIR); automake --add-missing )
(cd $(BOEHM_SOURCE_DIR); \
export ALL_INTERIOR_PTRS=1; \
CC=$(BOEHM_CC) \
CXX=$(BOEHM_CXX) \
CFLAGS="-DUSE_MMAP -g" \
PKG_CONFIG_PATH=$(CLASP_APP_RESOURCES_LIB_COMMON_DIR)/lib/pkgconfig/ \
./configure --enable-shared=yes --enable-static=yes --enable-handle-fork --enable-cplusplus --prefix=$(CLASP_APP_RESOURCES_LIB_COMMON_DIR);)
boehm-compile:
(cd $(BOEHM_SOURCE_DIR); make -j$(PJOBS) | tee _boehm.log)
(cd $(BOEHM_SOURCE_DIR); make -j$(PJOBS) install | tee _boehm_install.log)
export LIBATOMIC_OPS_CONFIGURE=src/boehm/libatomic_ops/configure
export BDWGC_CONFIGURE=src/boehm/bdwgc/configure
boehm:
@if test ! -e $(LIBATOMIC_OPS_CONFIGURE); then make libatomic-setup ; fi
@if test ! -e $(CLASP_INTERNAL_BUILD_TARGET_DIR)/Contents/Resources/lib/common/lib/libatomic_ops.a ; then make libatomic-compile ; fi
@if test ! -e $(BDWGC_CONFIGURE); then make boehm-setup ; fi
@if test ! -e $(CLASP_INTERNAL_BUILD_TARGET_DIR)/Contents/Resources/lib/common/lib/libgc.a ; then make boehm-compile ; fi
boehm-release-clbind:
(cd src/clbind; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/boehm/release gc=boehm release clasp-clbind-install)
boehm-release-clbind-a:
(cd src/clbind; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/boehm/release gc=boehm release clasp-clbind-install -a)
boehm-debug-clbind:
(cd src/clbind; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/boehm/debug gc=boehm debug clasp-clbind-install)
boehm-debug-clbind-a:
(cd src/clbind; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/boehm/debug gc=boehm debug clasp-clbind-install -a)
boehmdc-release-clbind:
(cd src/clbind; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/boehmdc/release gc=boehmdc release clasp-clbind-install)
mps-clbind:
(cd src/clbind; $(BUILD) -j$(PJOBS) toolset=$(TOOLSET) link=$(LINK) program=clasp --prefix=$(CLASP_APP_EXECS)/mps/$(VARIANT) gc=mps $(VARIANT) clasp-clbind-install)
boehm-clean:
install -d $(BOEHM_SOURCE_DIR)
-(cd $(BOEHM_SOURCE_DIR); make clean )
if test -e $(LIBATOMIC_OPS_CONFIGURE); then rm $(LIBATOMIC_OPS_CONFIGURE) ; fi
if test -e $(BDWGC_CONFIGURE); then rm $(BDWGC_CONFIGURE) ; fi
cclasp-mps:
(cd src/main; make cclasp-mps)
bclasp-only:
@echo Dumping local.config
cat local.config
make submodules
make asdf
make boost_build
make -C src/main scrape-all
$(BJAM) /internals/lisp//bundle
make clasp-boehm
make -C src/main bclasp-boehm-addons
sub-prebuild:
make -C src/ $@
fix-scraping:
for d in src/*/; do cd "$$d"; export PYTHONPATH="$$PWD:$$PYTHONPATH"; python ../../src/common/symbolScraper.py symbols_scraped.inc *.h *.cc *.scrape.inc; cd ../..; done
fix-scraping2:
-(cd src/asttooling; bjam meta)
-(cd src/cffi; bjam meta)
-(cd src/clbind; bjam meta)
-(cd src/core; bjam meta)
-(cd src/gctools; bjam meta)
-(cd src/llvmo; bjam meta)
-(cd src/main; bjam meta)
-(cd src/mpip; bjam meta)
-(cd src/mps; bjam meta)
-(cd src/serveEvent; bjam meta)
-(cd src/sockets; bjam meta)
pump:
(cd src/core; make pump)
(cd src/clbind; make pump)
submodules:
$(MAKE) submodules-boehm
$(MAKE) submodules-mps
submodules-boehm:
-git submodule update --init tools/boost_build
-git submodule update --init src/boehm/libatomic_ops
-git submodule update --init src/boehm/bdwgc
-git submodule update --init src/lisp/kernel/contrib/sicl
-git submodule update --init src/lisp/modules/asdf
-git submodule update --init tools/boost_build
# -(cd src/lisp/modules/asdf; git checkout master; git pull origin master)
submodules-mps:
-git submodule update --init src/mps
asdf:
(cd src/lisp/modules/asdf; make)
only-boehm:
make submodules-boehm
make boost_build
make clasp-boehm
boehm-build-mps-interface:
make submodules
make boost_build
make clasp-boehm
(cd src/main; make mps-interface)
#
# Tell ASDF where to find the SICL/Code/Cleavir systems - the final // means search subdirs
#
#export CL_SOURCE_REGISTRY = $(shell echo `pwd`/src/lisp/kernel/contrib/sicl/Code/Cleavir//):$(shell echo `pwd`/src/lisp/kernel/contrib/slime//)
#
# When developing, set the CLASP_LISP_SOURCE_DIR environment variable
# to tell clasp to use the development source directly rather than the
# stuff in the clasp build target directory. This saves us the trouble of
# constantly having to copy the lisp sources to the target directory.
export DEV_CLASP_LISP_SOURCE_DIR := $(shell pwd)/src/lisp
devemacs:
@echo This shell sets up environment variables like BJAM
@echo as they are defined when commands execute within the makefile
(CLASP_LISP_SOURCE_DIR=$(DEV_CLASP_LISP_SOURCE_DIR) $(DEVEMACS))
devemacs_no_clasp_lisp_source_dir:
@echo This shell sets up environment variables like BJAM
@echo as they are defined when commands execute within the makefile
$(DEVEMACS)
devshell:
@echo This shell sets up environment variables like BJAM
@echo as they are defined when commands execute within the makefile
(CLASP_LISP_SOURCE_DIR=$(DEV_CLASP_LISP_SOURCE_DIR) bash)
devshell-telemetry:
@echo This shell sets up environment variables like BJAM
@echo as they are defined when commands execute within the makefile
(CLASP_LISP_SOURCE_DIR=$(DEV_CLASP_LISP_SOURCE_DIR); export CLASP_MPS_CONFIG="32 32 16 80 32 80"; export CLASP_TELEMETRY_FILE=/tmp/clasp.tel; export CLASP_TELEMETRY_MASK=3; bash)
testing:
which clang++
clasp-mps-cpp:
$(BUILD) -j$(PJOBS) gc=mps link=$(LINK) program=clasp release src/main//dist
clasp-boehm-cpp:
$(BUILD) -j$(PJOBS) gc=boehm link=$(LINK) program=clasp release src/main//dist
clasp-mps:
$(MAKE) clasp-mps-cpp
(cd src/main; $(MAKE) mps)
# Compile the CL sources for min-mps: and full-mps
cl-mps:
(cd src/main; $(MAKE) mps)
# Compile the CL sources for min-mps: using the existing min-mps: - FAST
cl-min-mps-recompile:
(cd src/main; $(MAKE) min-mps-recompile)
# Compile the CL sources for full-mps:
cl-full-mps:
(cd src/main; $(MAKE) full-mps)
clasp-boehm:
make clasp-boehm-cpp
$(BJAM) everything gc=boehm link=$(LINK) program=clasp release
(cd src/main; make boehm)
cclasp-boehm:
(cd src/main; make cclasp-boehm)
cclasp-boehm-addons:
(cd src/main; make cclasp-boehm-addons)
# Compile the CL sources for min-boehm: and full-boehm
cl-boehm:
(cd src/main; $(MAKE) boehm)
# Compile the CL sources for min-boehm: using the existing min-boehm: - FAST
cl-min-boehm-recompile:
(cd src/main; $(MAKE) min-boehm-recompile)
# Compile the CL sources for full-boehm:
cl-full-boehm:
(cd src/main; $(MAKE) full-boehm)
boost_build:
@if test ! -e $(BOOST_BUILD_INSTALL)/bin/bjam ; then make boost_build-compile ; fi
boost_build-compile:
install -d $(BOOST_BUILD_INSTALL)
(cd $(BOOST_BUILD_SOURCE_DIR); export BOOST_BUILD_PATH=`pwd`; ./bootstrap.sh; ./b2 toolset=clang install --prefix=$(BOOST_BUILD_INSTALL) --ignore-site-config)
compile-commands:
(cd src/main; $(MAKE) compile-commands)
clean:
git submodule sync
make boehm-clean
(cd src/main; rm -rf bin bundle)
(cd src/core; rm -rf bin bundle)
(cd src/gctools; rm -rf bin bundle)
(cd src/llvmo; rm -rf bin bundle)
(cd src/asttooling; rm -rf bin bundle)
(cd src/cffi; rm -rf bin bundle)
(cd src/clbind; rm -rf bin bundle)
(cd src/sockets; rm -rf bin bundle)
(cd src/serveEvent; rm -rf bin bundle)
ifneq ($(CLASP_INTERNAL_BUILD_TARGET_DIR),)
install -d $(CLASP_INTERNAL_BUILD_TARGET_DIR)
-(find $(CLASP_INTERNAL_BUILD_TARGET_DIR) -type f -print0 | xargs -0 rm -f)
endif
setup-cleavir:
clasp_boehm_o -f bclasp -l src/lisp/kernel/cleavir/setup-cclasp-build.lisp -e "(core:quit)"
pull-sicl-master:
(cd src/lisp/kernel/contrib/sicl; git pull origin master)
make setup-cleavir
mps-submodule:
git submodule add -b dev/2014-08-18/non-incremental https://github.com/Ravenbrook/mps-temporary ./src/mps
asdf-submodule:
git submodule add --name updatedAsdf https://github.com/drmeister/asdf.git ./src/lisp/kernel/asdf
dump-local-config:
cat $(CLASP_HOME)/local.config
print-config:
$(info >> Makefile Configuration:)
$(call varprint, CLASP_HOME)
$(call varprint, EXTERNALS_CLASP_DIR)
$(call varprint, LLVM_CONFIG)
$(call varprint, TARGET_OS)
$(call varprint, ADDRESS-MODEL)
$(call varprint, LINK)
$(call varprint, PJOBS)
$(call varprint, LLVM_CONFIG_DEBUG)
$(call varprint, LLVM_CONFIG_RELEASE)
$(call varprint, LLVM_BIN_DIR)
$(call varprint, GIT_COMMIT)
$(call varprint, CLASP_VERSION)
$(call varprint, CLASP_INTERNAL_BUILD_TARGET_DIR)
$(call varprint, LIBATOMIC_OPS_SOURCE_DIR)
$(call varprint, BOEHM_SOURCE_DIR)
$(call varprint, BOOST_BUILD_SOURCE_DIR)
$(call varprint, BOOST_BUILD_INSTALL)
$(call varprint, BJAM)
$(call varprint, BUILD)
$(call varprint, CLASP_APP_EXECS)
$(call varprint, CLASP_APP_RESOURCES_DIR)
$(call varprint, CLASP_APP_RESOURCES_LIB_COMMON_DIR)
$(call varprint, CLASP_DEBUG_LLVM_LIB_DIR)
$(call varprint, CLASP_RELEASE_LLVM_LIB_DIR)
$(call varprint, CLASP_DEBUG_CXXFLAGS)
$(call varprint, CLASP_DEBUG_LINKFLAGS)
$(call varprint, CLASP_RELEASE_CXXFLAGS)
$(call varprint, CLASP_RELEASE_LINKFLAGS)
$(call varprint, VARIANT)
$(call varprint, TOOLSET)
$(call varprint, DEVEMACS)
$(call varprint, PYTHON2)
$(call varprint, EXECUTABLE_DIR)
$(call varprint, BINDIR)
$(call varprint, EXECS)
$(call varprint, PATH)
$(call varprint, USE_CXXFLAGS)
clang-format:
git ls-files src/ include/ \
| perl -ne 'chomp;print "$$_\n" if -f $$_ and (/\.[hc][hcp]?p?$$/) and !-l and !m#^include/.+/generated#;' \
| xargs -P$(PJOBS) -n1 --verbose clang-format -i
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment