소스 검색

A few more tweaks to scripts

- Changed `make summary` to show a one line summary
- Added `make lfs.csv` rule, which is useful for finding more info with
  other scripts
- Fixed small issue in ./scripts/summary.py
- Added *.ci (callgraph) and *.csv (script output) to CI
Christopher Haster 3 년 전
부모
커밋
7ea2b515aa
3개의 변경된 파일15개의 추가작업 그리고 13개의 파일을 삭제
  1. 2 0
      .gitignore
  2. 13 2
      Makefile
  3. 0 11
      scripts/summary.py

+ 2 - 0
.gitignore

@@ -2,6 +2,8 @@
 *.o
 *.d
 *.a
+*.ci
+*.csv
 
 # Testing things
 blocks/

+ 13 - 2
Makefile

@@ -133,7 +133,7 @@ summary: $(OBJ) $(CGI)
 		$(if $(COVERAGE),\
 			| ./scripts/coverage.py $(BUILDDIR)tests/*.toml.info \
 				-q -m - -o - $(COVERAGEFLAGS)) \
-		| ./scripts/summary.py $(SUMMARYFLAGS))
+		| ./scripts/summary.py -Y $(SUMMARYFLAGS))
 
 
 # rules
@@ -143,9 +143,20 @@ summary: $(OBJ) $(CGI)
 $(BUILDDIR)lfs: $(OBJ)
 	$(CC) $(CFLAGS) $^ $(LFLAGS) -o $@
 
-$(BUILDDIR)%.a: $(OBJ)
+$(BUILDDIR)lfs.a: $(OBJ)
 	$(AR) rcs $@ $^
 
+$(BUILDDIR)lfs.csv: $(OBJ) $(CGI)
+	$(strip \
+		  ./scripts/code.py    $(OBJ) -q      -o - $(CODEFLAGS) \
+		| ./scripts/data.py    $(OBJ) -q -m - -o - $(DATAFLAGS) \
+		| ./scripts/stack.py   $(CGI) -q -m - -o - $(STACKFLAGS) \
+		| ./scripts/structs.py $(OBJ) -q -m - -o - $(STRUCTFLAGS) \
+		$(if $(COVERAGE),\
+			| ./scripts/coverage.py $(BUILDDIR)tests/*.toml.info \
+				-q -m - -o - $(COVERAGEFLAGS)) \
+		> $@)
+
 $(BUILDDIR)%.o: %.c
 	$(CC) -c -MMD $(CFLAGS) $< -o $@
 

+ 0 - 11
scripts/summary.py

@@ -135,17 +135,6 @@ def main(**args):
         except FileNotFoundError:
             pass
 
-        if args.get('all_fields'):
-            fields = FIELDS
-        elif args.get('fields') is not None:
-            fields_dict = {field.name: field for field in FIELDS}
-            fields = [fields_dict[f] for f in args['fields']]
-        else:
-            fields = []
-            for field in FIELDS:
-                if any(field.name in result for result in prev_results.values()):
-                    fields.append(field)
-
         prev_total = {}
         for result in prev_results.values():
             for field in fields: