mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-14 17:01:22 +00:00
2e91b29580
This gets only some very basics working: * Algebra (multi-vector) types: eg @algebra(float(3,0,1)). * Algebra scopes (using either the above or @algebra(TYPE_NAME) where the above was used in a typedef. * Basis blades (eg, e12) done via procedural symbols that evaluate to suitable constants based on the basis group for the blade. * Addition and subtraction of multi-vectors (only partially tested). * Assignment of sub-algebra multi-vectors to full-algebra multi-vectors (missing elements zeroed). There's still much work to be done, but I thought it time to get something into git.
99 lines
2.9 KiB
Text
99 lines
2.9 KiB
Text
QFCC_LIBS=@QFCC_LIBS@
|
|
QFCC_DEPS=@QFCC_DEPS@
|
|
QFCC_INCS=@QFCC_INCS@
|
|
|
|
EXTRA_PROGRAMS += qfcc$(EXEEXT) qfprogs$(EXEEXT)
|
|
bin_PROGRAMS += @QFCC_TARGETS@
|
|
bin_SCRIPTS += tools/qfcc/source/qfpreqcc
|
|
|
|
qfcc_SOURCES = \
|
|
tools/qfcc/source/algebra.c \
|
|
tools/qfcc/source/attribute.c \
|
|
tools/qfcc/source/class.c \
|
|
tools/qfcc/source/codespace.c \
|
|
tools/qfcc/source/constfold.c \
|
|
tools/qfcc/source/cpp.c \
|
|
tools/qfcc/source/dags.c \
|
|
tools/qfcc/source/debug.c \
|
|
tools/qfcc/source/def.c \
|
|
tools/qfcc/source/defspace.c \
|
|
tools/qfcc/source/diagnostic.c \
|
|
tools/qfcc/source/dot.c \
|
|
tools/qfcc/source/dot_dag.c \
|
|
tools/qfcc/source/dot_expr.c \
|
|
tools/qfcc/source/dot_flow.c \
|
|
tools/qfcc/source/dot_sblock.c \
|
|
tools/qfcc/source/dot_type.c \
|
|
tools/qfcc/source/emit.c \
|
|
tools/qfcc/source/expr.c \
|
|
tools/qfcc/source/expr_algebra.c \
|
|
tools/qfcc/source/expr_assign.c \
|
|
tools/qfcc/source/expr_binary.c \
|
|
tools/qfcc/source/expr_bool.c \
|
|
tools/qfcc/source/expr_cast.c \
|
|
tools/qfcc/source/expr_compound.c \
|
|
tools/qfcc/source/expr_obj.c \
|
|
tools/qfcc/source/expr_vector.c \
|
|
tools/qfcc/source/evaluate.c \
|
|
tools/qfcc/source/flow.c \
|
|
tools/qfcc/source/function.c \
|
|
tools/qfcc/source/grab.c \
|
|
tools/qfcc/source/idstuff.c \
|
|
tools/qfcc/source/linker.c \
|
|
tools/qfcc/source/method.c \
|
|
tools/qfcc/source/obj_file.c \
|
|
tools/qfcc/source/obj_type.c \
|
|
tools/qfcc/source/opcodes.c \
|
|
tools/qfcc/source/options.c \
|
|
tools/qfcc/source/pragma.c \
|
|
tools/qfcc/source/qc-lex.l \
|
|
tools/qfcc/source/qc-parse.y \
|
|
tools/qfcc/source/qfcc.c \
|
|
tools/qfcc/source/qp-lex.l \
|
|
tools/qfcc/source/qp-parse.y \
|
|
tools/qfcc/source/reloc.c \
|
|
tools/qfcc/source/shared.c \
|
|
tools/qfcc/source/statements.c \
|
|
tools/qfcc/source/strpool.c \
|
|
tools/qfcc/source/struct.c \
|
|
tools/qfcc/source/switch.c \
|
|
tools/qfcc/source/symtab.c \
|
|
tools/qfcc/source/type.c \
|
|
tools/qfcc/source/value.c
|
|
|
|
qfcc_LDADD= $(QFCC_LIBS)
|
|
qfcc_DEPENDENCIES= $(QFCC_DEPS)
|
|
|
|
qfprogs_SOURCES= \
|
|
tools/qfcc/source/disassemble.c \
|
|
tools/qfcc/source/dump_globals.c \
|
|
tools/qfcc/source/dump_lines.c \
|
|
tools/qfcc/source/dump_modules.c \
|
|
tools/qfcc/source/dump_strings.c \
|
|
tools/qfcc/source/obj_file.c \
|
|
tools/qfcc/source/qfprogs.c \
|
|
tools/qfcc/source/strpool.c \
|
|
tools/qfcc/source/stub.c \
|
|
tools/qfcc/source/type.c
|
|
qfprogs_LDADD= $(QFCC_LIBS)
|
|
qfprogs_DEPENDENCIES= $(QFCC_DEPS)
|
|
|
|
BUILT_SOURCES += \
|
|
tools/qfcc/source/qc-parse.c \
|
|
tools/qfcc/source/qc-parse.h \
|
|
tools/qfcc/source/qc-lex.c \
|
|
tools/qfcc/source/qp-parse.c \
|
|
tools/qfcc/source/qp-parse.h \
|
|
tools/qfcc/source/qp-lex.c
|
|
|
|
tools/qfcc/source/qc-parse.c: tools/qfcc/source/qc-parse.y
|
|
$(AM_V_YACC)$(YACCCOMPILE) -Dapi.prefix={qc_yy} $< -o $@
|
|
tools/qfcc/source/qc-lex.c: tools/qfcc/source/qc-lex.l
|
|
$(AM_V_LEX)$(LEXCOMPILE) -Pqc_yy -o$@ $<
|
|
tools/qfcc/source/qp-parse.c: tools/qfcc/source/qp-parse.y
|
|
$(AM_V_YACC)$(YACCCOMPILE) -Dapi.prefix={qp_yy} $< -o $@
|
|
tools/qfcc/source/qp-lex.c: tools/qfcc/source/qp-lex.l
|
|
$(AM_V_LEX)$(LEXCOMPILE) -Pqp_yy -o$@ $<
|
|
|
|
EXTRA_DIST += \
|
|
tools/qfcc/source/qfpreqcc
|