Source

cylon / ext / clang / genjson / Makefile

Full commit
CXX=g++
#CXX=clang++
LLVMHOME=/usr
LLVMCONFIG=$(LLVMHOME)/bin/llvm-config
CXXFLAGS=-I$(LLVMHOME)/include/clang \
		 `$(LLVMCONFIG) --cxxflags` -shared -fPIC

LDFLAGS= `$(LLVMCONFIG) --ldflags` -shared -fPIC

#LLVM_LIBS=`$(LLVM_CONFIG) --libs`
LLVM_LIBS=-L/usr/lib/llvm -lLLVM-2.7

# CLANG_LIBS= \
# 	-lclangCodeGen -lclangAnalysis -lclangRewrite -lclangSema \
# 	-lclangDriver  -lclangAST      -lclangParse   -lclangLex  \
# 	-lclangBasic   -lclangFrontend -lclangIndex   -lclangIndex \
# 	-lclangLex
CLANG_LIBS= \
	-lclangCodeGen  -lclangRewrite  -lclangLex    -lclangBasic \
    -lclangIndex    -lclangFrontend -lclangDriver -lclangSema \
	-lclangAnalysis -lclangAST      -lclangParse  -lclangLex  \
	-lclangBasic

LIBS= $(LLVM_LIBS) $(CLANG_LIBS)

all: clean libclang_genjson.so test

clean:
	rm -rf libclang_genjson.so

libclang_genjson.so: clang_genjson.cpp
	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o libclang_genjson.so clang_genjson.cpp $(LIBS)

.PHONY: test clean

test: libclang_genjson.so
	/bin/rm -f utest_ast.py
	./run.py utest.cxx