diff options
Diffstat (limited to 'src/lib/netlist/build/makefile')
-rw-r--r-- | src/lib/netlist/build/makefile | 75 |
1 files changed, 6 insertions, 69 deletions
diff --git a/src/lib/netlist/build/makefile b/src/lib/netlist/build/makefile index 647c7df6f12..807ddbd6c7a 100644 --- a/src/lib/netlist/build/makefile +++ b/src/lib/netlist/build/makefile @@ -12,27 +12,6 @@ SRC = .. VSBUILD = $(SRC)/buildVS DOC = $(SRC)/documentation -TIDY_DB = ../compile_commands.json - -TIDY_FLAGSX = -checks=*,-google*,-hicpp*,-readability*,-fuchsia*,cert-*,-android-*, -TIDY_FLAGSX += -llvm-header-guard,-cppcoreguidelines-pro-type-reinterpret-cast, -TIDY_FLAGSX += -cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-owning-memory, -TIDY_FLAGSX += -modernize-use-default-member-init,-cppcoreguidelines-pro-bounds-constant-array-index, -TIDY_FLAGSX += -modernize-pass-by-value,-cppcoreguidelines-pro-type-static-cast-downcast, -TIDY_FLAGSX += -cppcoreguidelines-avoid-magic-numbers, -TIDY_FLAGSX += -cppcoreguidelines-macro-usage, -TIDY_FLAGSX += -cppcoreguidelines-non-private-member-variables-in-classes,-misc-non-private-member-variables-in-classes, -TIDY_FLAGSX += -bugprone-macro-parentheses,-misc-macro-parentheses - -space := -space += -TIDY_FLAGS = $(subst $(space),,$(TIDY_FLAGSX)) - -TIDY_FLAGS = -checks=llvm-include-order,llvm-namespace-comment,modernize-use-override,modernize-use-using -fix -#TIDY_FLAGS = -checks=llvm-include-order -fix -#TIDY_FLAGS = -checks=llvm-namespace-comment -fix -#TIDY_FLAGS = -checks=modernize-use-override -fix -#TIDY_FLAGS = -checks=modernize-use-using -fix ifeq ($(subst Windows_NT,windows,$(OS)),windows) OBJ = obj/mingw @@ -44,7 +23,7 @@ endif # LTO = -flto=4 -fuse-linker-plugin -flto-partition=balanced -Wodr -CFLAGS = $(LTO) -g -O3 -std=c++11 -I$(CURDIR)/.. -I$(CURDIR)/../.. $(CEXTRAFLAGS) +CFLAGS = $(LTO) -g -O3 -std=c++11 -march=native -I../.. -Wall -Wpedantic -Wsign-compare -Wextra -Wno-unused-parameter $(CEXTRAFLAGS) LDFLAGS = $(LTO) -g -O3 -std=c++11 $(LDEXTRAFLAGS) LIBS = -lpthread -ldl @@ -53,7 +32,6 @@ LD = @g++ MD = @mkdir RM = @rm DOXYGEN = @doxygen -CLANG_TIDY = clang-tidy-9 TARGETS = nltool nlwav @@ -75,6 +53,7 @@ OBJS = $(POBJS) $(NLOBJS) POBJS := \ $(POBJ)/pstring.o \ + $(POBJ)/palloc.o \ $(POBJ)/pchrono.o \ $(POBJ)/pdynlib.o \ $(POBJ)/pexception.o \ @@ -94,7 +73,6 @@ NLOBJS := \ $(NLOBJ)/nl_setup.o \ $(NLOBJ)/nl_factory.o \ $(NLOBJ)/analog/nld_bjt.o \ - $(NLOBJ)/analog/nld_mosfet.o \ $(NLOBJ)/analog/nlid_fourterm.o \ $(NLOBJ)/analog/nld_switches.o \ $(NLOBJ)/analog/nlid_twoterm.o \ @@ -114,7 +92,6 @@ NLOBJS := \ $(NLOBJ)/devices/nld_7485.o \ $(NLOBJ)/devices/nld_7490.o \ $(NLOBJ)/devices/nld_7493.o \ - $(NLOBJ)/devices/nld_7497.o \ $(NLOBJ)/devices/nld_74107.o \ $(NLOBJ)/devices/nld_74123.o \ $(NLOBJ)/devices/nld_74153.o \ @@ -176,12 +153,10 @@ DOCS = \ $(DOC)/test1-50r.svg \ ALL_OBJS = $(OBJS) $(PMAIN) $(NLOBJ)/prg/nltool.o $(NLOBJ)/prg/nlwav.o - -ALL_TIDY_FILES = $(ALL_OBJS:.o=.json) SOURCES = $(patsubst $(OBJ)%, $(SRC)%, $(ALL_OBJS:.o=.cpp)) ALLFILES = $(SOURCES) $(VSBUILDS) $(DOCS) -MAKEFILE_TARGETS_WITHOUT_INCLUDE := clean doc clang mingw nvcc +MAKEFILE_TARGETS_WITHOUT_INCLUDE := clean doc clang mingw # git archive HEAD --prefix=project-name-version/ \ @@ -225,33 +200,19 @@ maketree: $(sort $(OBJDIRS)) # Special targets #------------------------------------------------- -.PHONY: clang clang-5 mingw doc native - -native: - $(MAKE) CEXTRAFLAGS="-march=native -msse4.2 -Wall -Wpedantic -Wsign-compare -Wextra " +.PHONY: clang clang-5 mingw doc clang: - $(MAKE) CC=clang++-9 LD=clang++-9 CEXTRAFLAGS="-march=native -Weverything -Werror -Wno-padded -Wno-weak-vtables -Wno-unused-template -Wno-missing-variable-declarations -Wno-float-equal -Wconversion -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-format-nonliteral -Wno-exit-time-destructors" + $(MAKE) CC=clang++ LD=clang++ CEXTRAFLAGS="-march=native -Weverything -Werror -override -Wno-unreachable-code -Wno-padded -Wno-weak-vtables -Wno-missing-variable-declarations -Wconversion -Wno-c++98-compat -Wno-float-equal -Wno-global-constructors -Wno-c++98-compat-pedantic -Wno-format-nonliteral -Wno-weak-template-vtables -Wno-exit-time-destructors" clang-5: $(MAKE) CC=clang++-5.0 LD=clang++-5.0 CEXTRAFLAGS="-march=native -Weverything -Werror -Wno-inconsistent-missing-destructor-override -Wno-unreachable-code -Wno-padded -Wno-weak-vtables -Wno-missing-variable-declarations -Wconversion -Wno-c++98-compat -Wno-float-equal -Wno-global-constructors -Wno-c++98-compat-pedantic -Wno-format-nonliteral -Wno-weak-template-vtables -Wno-exit-time-destructors" -nvcc: - $(MAKE) CC=/usr/local/cuda-9.0/bin/nvcc LD=/usr/local/cuda-9.2/bin/nvcc \ - CEXTRAFLAGS="-x cu -DNVCCBUILD=1 --expt-extended-lambda --expt-relaxed-constexpr --default-stream per-thread --restrict" - -tidy_db: compile_commands_prefix $(ALL_TIDY_FILES) compile_commands_postfix - # -# -Wno-c++11-narrowing : seems a bit broken # Mostly done: -Wno-weak-vtables -Wno-cast-align # FIXME: -Wno-weak-vtables -Wno-missing-variable-declarations -Wno-conversion -Wno-exit-time-destructors # FIXME: -Winconsistent-missing-destructor-override : c++ community has diverging opinions on this https://github.com/isocpp/CppCoreGuidelines/issues/721 # FIXME: -Wunreachable-code : False warnings, this a documented clang bug: https://llvm.org/bugs/show_bug.cgi?id=28994 -# -Wweak-template-vtables -# -# These have to be given: -# -Wno-missing-variable-declarations : Device factory code, on purpose mingw: $(MAKE) CEXTRAFLAGS="-DUNICODE -D_UNICODE -D_WIN32_WINNT=0x0501 -DWIN32_LEAN_AND_MEAN" \ @@ -276,7 +237,7 @@ doc: nltool @echo creating .depend @rm -f ./.depend @for i in $(SOURCES); do \ - $(CC) $(CFLAGS) -MM $$i -MT `echo $$i | sed -e 's+$(SRC)+$(OBJ)+' -e 's+.cpp+.o+' ` >> ./.depend; \ + $(CC) $(CFLAGS) -MM $$i -MT `echo $$i | sed -e 's+$(SRC)+$(OBJ)+' -e 's+.cpp+.o+' ` >>./.depend; \ done depend: .depend @@ -287,18 +248,6 @@ ifeq ($(filter $(MAKECMDGOALS),$(MAKEFILE_TARGETS_WITHOUT_INCLUDE)),) endif #------------------------------------------------- -# clang tidy -#------------------------------------------------- -tidy: tidy_db - @echo running tidy - @for i in $(SOURCES); do \ - $(CLANG_TIDY) $$i $(TIDY_FLAGS) -header-filter=.*; \ - done - -tidy_db: compile_commands_prefix $(ALL_TIDY_FILES) compile_commands_postfix - - -#------------------------------------------------- # generic rules #------------------------------------------------- @@ -319,15 +268,3 @@ $(OBJ)/%.a: $(RM) $@ $(AR) $(ARFLAGS) $@ $^ -$(OBJ)/%.json: $(SRC)/%.cpp - @echo Building compile database entry for $< ... - @echo { \"directory\": \".\", >> $(TIDY_DB) - @echo \"command\": \"$(CC) $(CDEFS) $(CFLAGS) -c $< -o dummy.o\", >> $(TIDY_DB) - @echo \"file\": \"$(CURDIR)/$<\" } >> $(TIDY_DB) - @echo "," >> $(TIDY_DB) - -compile_commands_prefix: - @echo "[" > $(TIDY_DB) - -compile_commands_postfix: - @echo "]" >> $(TIDY_DB) |