From 79aae2594534c067d3730098d7359b7fa906ef02 Mon Sep 17 00:00:00 2001 From: David Rose Date: Wed, 11 Apr 2001 20:30:21 +0000 Subject: [PATCH] *** empty log message *** --- .../src/egg-build/Makefile.a2egg-static.rules | 249 -------- dtool/src/egg-build/Makefile.a2egg.rules | 55 -- dtool/src/egg-build/Makefile.char-egg.rules | 533 ------------------ dtool/src/egg-build/Makefile.flt-egg.rules | 166 ------ dtool/src/egg-build/Makefile.inst-egg.vars | 43 -- dtool/src/egg-build/Makefile.soft2egg.rules | 65 --- dtool/src/egg-build/Makefile.source-egg.rules | 211 ------- dtool/src/egg-build/Makefile.textures.rules | 36 -- dtool/src/egg-build/Sources.pp | 11 - dtool/src/egg-build/findlatest.cxx | 171 ------ 10 files changed, 1540 deletions(-) delete mode 100644 dtool/src/egg-build/Makefile.a2egg-static.rules delete mode 100644 dtool/src/egg-build/Makefile.a2egg.rules delete mode 100644 dtool/src/egg-build/Makefile.char-egg.rules delete mode 100644 dtool/src/egg-build/Makefile.flt-egg.rules delete mode 100644 dtool/src/egg-build/Makefile.inst-egg.vars delete mode 100644 dtool/src/egg-build/Makefile.soft2egg.rules delete mode 100644 dtool/src/egg-build/Makefile.source-egg.rules delete mode 100644 dtool/src/egg-build/Makefile.textures.rules delete mode 100644 dtool/src/egg-build/Sources.pp delete mode 100644 dtool/src/egg-build/findlatest.cxx diff --git a/dtool/src/egg-build/Makefile.a2egg-static.rules b/dtool/src/egg-build/Makefile.a2egg-static.rules deleted file mode 100644 index 6397eac94a..0000000000 --- a/dtool/src/egg-build/Makefile.a2egg-static.rules +++ /dev/null @@ -1,249 +0,0 @@ -# -# Makefile rules for compiling Alias static (non-character) models -# into egg, and then into pfb's (or something). This is useful -# for things which are not characters but are modeled in Alias. -# - -include $(DTOOL)/include/Makefile.inst-egg.vars - -ifeq ($(A2E),) - A2E = a2egg -endif - -ifeq ($(EGG_RESTRUCTURE),) - EGG_RESTRUCTURE = egg-restructure -endif - -ifeq ($(EGG_PALETTIZE),) - EGG_PALETTIZE = egg-palettize -endif - -ifeq ($(EGG_COMBINE),) - EGG_COMBINE = egg-combine -endif - -ifeq ($(EGG_TEXTURES),) - EGG_TEXTURES = egg-textures -endif - -ifeq ($(PFICONV),) - PFICONV = pficonv -m -endif - -ifeq ($(INSTALL_DIR),) - INSTALL_DIR = $(INSTALL_ROOT)/models/$(SCENE_DIR) -endif - -ifeq ($(EGG_NAME),) - EGG_NAME = $(SCENE) -endif - -ifeq ($(DIR_NAME),) - DIR_NAME = $(CHAR_NAME) -endif - -ifeq ($(ALIAS_VERSION),7) - VERSION_SUFFIX = -v7 -endif - -ifeq ($(WIRE_NAME),) - WIRE_NAME = $(CHAR_NAME) -endif - -ifeq ($(WIRE_PATTERN),) - WIRE_PATTERN = $(WIRE_NAME)*.wire -endif - -ifeq ($(WIRE_DIR),) - ifeq ($(MODEL_TYPE),) - WIRE_DIR = $(ALIAS_SOURCE_ROOT)/models/$(DIR_NAME) - else - WIRE_DIR = $(ALIAS_SOURCE_ROOT)/models/$(DIR_NAME)/$(MODEL_TYPE) - endif -endif - -ifeq ($(BUILD_MODELS),) - BUILD_MODELS = $(EGG_NAME) -endif - -ifeq ($(SCENE_DIR),) - SCENE_DIR = snarf -endif - -ifeq ($(PFI_DIR),) - PFI_DIR = $(FLT_PFI_DIR) -endif - -# This helps out some of the generic option variables that are used for -# both chars and scenes. -CHAR_NAME = $(SCENE) - -# WIRE_DIR and WIRE_PATTERN tell the makefile where to find the latest model -# file. -ifneq ($(WIRE_DIR),) - ifneq ($(WIRE_PATTERN),) - WIRE_FILE := $(strip $(shell cd $(WIRE_DIR); findlatest $(WIRE_DIR) $(WIRE_PATTERN))) - endif -endif - -# If we have RESTRUCTURE_OPTS set, then we must generate the model file into -# the unstructure directory, and restructure it into the current directory. -# Otherwise, we just generate it directly into the current directory. -ifneq ($(RESTRUCTURE_OPTS),) - INIT_EGG_DIR = unstructure - UNPAL_EGG_DIR = $(SCENE_DIR) -else - INIT_EGG_DIR = $(SCENE_DIR) - UNPAL_EGG_DIR = $(SCENE_DIR) -endif - -ifneq ($(PALETTIZE_OPTS),) - PAL_EGG_DIR = pal -else - PAL_EGG_DIR = $(UNPAL_EGG_DIR) -endif - -ifneq ($(MAKE_PFI),) - PFI_EGG_DIR = pfi - EGG2INST_OPTS = -t -else - PFI_EGG_DIR = $(PAL_EGG_DIR) -endif - -# INSTALL_FROM_DIR is the name of the subdirectory from which the final -# egg files will be installed. If unspecified, it defaults to either -# PAL_EGG_DIR or PFI_EGG_DIR, depending on whether pfi's are built. This -# can be used to apply a last-minute operation on the egg file within the -# makefile. -ifeq ($(INSTALL_FROM_DIR),) - INSTALL_FROM_DIR = $(PFI_EGG_DIR) -endif - -# BUILD_NAMES is the filename, without directory, of each of BUILD_MODELS. -# Often this will be the same, but it is allowed to specified a relative -# filename on each BUILD_MODEL. -BUILD_NAMES := $(notdir $(BUILD_MODELS)) - -INIT_EGG_FILES := $(patsubst %,$(INIT_EGG_DIR)/%.egg,$(BUILD_MODELS)) -UNPAL_EGG_FILES := $(patsubst %,$(UNPAL_EGG_DIR)/%.egg,$(BUILD_MODELS)) -PAL_EGG_FILES := $(patsubst %,$(PAL_EGG_DIR)/%.egg,$(BUILD_NAMES)) -PFI_EGG_FILES := $(patsubst %,$(PFI_EGG_DIR)/%.egg,$(BUILD_NAMES)) -INSTALL_INST_FILES := $(patsubst %,$(INSTALL_DIR)/%.$(INST),$(BUILD_NAMES)) - -ifneq ($(PALETTIZE_TOGETHER),) - # If we only have one file, don't attempt to palettize it together with - # itself. PALETTIZE_TOGETHER only makes sense if we have multiple files. - ifeq ($(words $(PAL_EGG_FILES)),1) - PALETTIZE_TOGETHER := - endif -endif - -.PHONY: egg pfb clean cleanall all_dirs - -egg: all_dirs $(UNPAL_EGG_FILES) -pfb: egg $(INSTALL_INST_FILES) -all_dirs: maps $(SCENE_DIR) $(INSTALL_DIR) - -ifneq ($(RESTRUCTURE_OPTS),) -all_dirs: unstructure -endif - -ifneq ($(PALETTIZE_OPTS),) -all_dirs: pal -endif - -ifneq ($(MAKE_PFI),) -all_dirs: pfi $(PFI_DIR) -endif - -# This is the basic rule. If the including makefile doesn't specify anything -# else, we use this rule to build our egg file. -$(INIT_EGG_DIR)/%.egg : $(WIRE_FILE) - $(A2E) $(A2E_OPTS) -m $@ $(WIRE_FILE) - -# -# Restructuring. -# -ifneq ($(RESTRUCTURE_OPTS),) -$(UNPAL_EGG_FILES) : $(UNPAL_EGG_DIR)/%.egg : $(INIT_EGG_DIR)/%.egg - $(EGG_RESTRUCTURE) -o $@ $(RESTRUCTURE_OPTS) $< -endif - -# -# Palettizing. -# -ifneq ($(PALETTIZE_OPTS),) -ifneq ($(PALETTIZE_TOGETHER),) - -# If there are multiple files and the user so requested, palettize them all -# together. -$(UNPAL_EGG_DIR)/$(EGG_NAME)-combine.egg : $(UNPAL_EGG_FILES) - $(EGG_COMBINE) -o $@ $^ - -$(PAL_EGG_DIR)/$(EGG_NAME)-combine.egg : $(UNPAL_EGG_DIR)/$(EGG_NAME)-combine.egg - $(EGG_PALETTIZE) -o $@ $(PALETTIZE_OPTS) -p $(EGG_NAME)-palette. $< - -$(PAL_EGG_FILES) : $(PAL_EGG_DIR)/$(EGG_NAME)-combine.egg - $(EGG_COMBINE) -x -p $(PAL_EGG_DIR)/ $< - -else - -# If there's only one file, or the user didn't request a group palettizing, -# palettize them separately. -ifeq ($(BUILD_MODELS),$(BUILD_NAMES)) - # If none of the build models had directories, we can do it this way. -$(PAL_EGG_FILES) : $(PAL_EGG_DIR)/%.egg : $(UNPAL_EGG_DIR)/%.egg - $(EGG_PALETTIZE) -o $@ $(PALETTIZE_OPTS) -p $(patsubst $(PAL_EGG_DIR)/%.egg,%,$@)-palette. $< - -else - # Otherwise, we have an error. Don't put a rule for the palettized files, - # so the make will stop. -endif - -endif -endif - -ifneq ($(MAKE_PFI),) -$(PFI_EGG_FILES) : $(PFI_EGG_DIR)/%.egg : $(PAL_EGG_DIR)/%.egg - $(EGG_TEXTURES) -o $@ -d $(PFI_DIR)/$(PFI_PREFIX) -e pfi -n -p "$(PFICONV) %o %n" $< -endif - -$(INSTALL_INST_FILES) : $(INSTALL_DIR)/%.$(INST) : $(INSTALL_FROM_DIR)/%.egg - $(INSTALL_EGG_ACTION) - - -clean: -# Not really much we can do here. - -cleanall: clean -# Or here. - -unstructure: - mkdir unstructure - -pal: - mkdir pal - -pfi: - mkdir pfi - -maps: - mkdir maps - -ifneq ($(SCENE_DIR),.) -$(SCENE_DIR) : - mkdir -p $@ -endif - -$(INSTALL_DIR) : - mkdir -p $@ - -ifneq ($(PFI_DIR),$(INSTALL_DIR)) -$(PFI_DIR) : - mkdir -p $@ -endif - -show-wire-files: - @echo WIRE_DIR is $(WIRE_DIR) - @echo WIRE_PATTERN is $(WIRE_PATTERN) - @echo WIRE_FILE is $(WIRE_FILE) diff --git a/dtool/src/egg-build/Makefile.a2egg.rules b/dtool/src/egg-build/Makefile.a2egg.rules deleted file mode 100644 index 15a9ced883..0000000000 --- a/dtool/src/egg-build/Makefile.a2egg.rules +++ /dev/null @@ -1,55 +0,0 @@ -# -# Makefile rules for compiling Alias character models. -# - -ifeq ($(ALIAS_VERSION),7) - VERSION_SUFFIX = -v7 -endif - -ifeq ($(WIRE_NAME),) - WIRE_NAME = $(CHAR_NAME) -endif - -ifeq ($(WIRE_PATTERN),) - WIRE_PATTERN = $(WIRE_NAME)*.wire -endif - -ifeq ($(WIRE_DIR),) - ifeq ($(MODEL_TYPE),) - WIRE_DIR = $(ALIAS_SOURCE_ROOT)/models/$(DIR_NAME) - else - WIRE_DIR = $(ALIAS_SOURCE_ROOT)/models/$(DIR_NAME)/$(MODEL_TYPE) - endif -endif - -ifeq ($(CHAN_DIR),) - CHAN_DIR = $(ALIAS_SOURCE_ROOT)/channels/$(DIR_NAME)/$(ANIM) -endif - -ifneq ($(TESS_LEVELS)$(QTESS_LEVELS),) - # If we are tesselating, we must force the nurbs model generation. - ifeq ($(NURBS_OPTS),) - NURBS_OPTS = $(A2E_OPTS) - endif -endif - -# We'll always use version 8 a2egg to get out the static model. Version 7 -# has some problems with clusters. -A2EGG = a2egg$(VERSION_SUFFIX) - -# But we'll use version 7, if requested, to get out the animation, which is -# necessary for some version 7 animations. -A2EGG_CHAN = a2egg-chan$(VERSION_SUFFIX) - -MAKE_POLY_MODEL = a2egg -m $@ $(POLY_OPTS) $(WIRE_FILE) -MAKE_NURBS_MODEL = a2egg -n -s -m $@ $(NURBS_OPTS) $(WIRE_FILE) - -A2E_RULE = $(UNOPT)$(EGG_NAME)-$(MODEL).egg : $(WIRE_FILE) -A2E = $(A2EGG) -m $@ $(A2E_OPTS) - -A2C_RULE = $(UNOPT)$(CHAN_FILE_PREFIX)$(ANIM)$(CHAN_FILE_SUFFIX).egg : $(FIND_CHAN_FILES) - -A2C = $(A2EGG_CHAN) -c $@ $(A2C_OPTS) - -include $(DTOOL)/include/Makefile.char-egg.rules - diff --git a/dtool/src/egg-build/Makefile.char-egg.rules b/dtool/src/egg-build/Makefile.char-egg.rules deleted file mode 100644 index 94a0747e50..0000000000 --- a/dtool/src/egg-build/Makefile.char-egg.rules +++ /dev/null @@ -1,533 +0,0 @@ -# -# Makefile rules for compiling Alias or SoftImage character models into egg, -# and then into pfb's. -# - -include $(DTOOL)/include/Makefile.inst-egg.vars - -ifeq ($(EGG_PALETTIZE),) - EGG_PALETTIZE = egg-palettize -endif - -ifeq ($(EGG_TEXTURES),) - EGG_TEXTURES = egg-textures -endif - -ifeq ($(PFICONV),) - PFICONV = pficonv -m -endif - -ifeq ($(PFI_DIR),) - PFI_DIR = $(CHAR_PFI_DIR) -endif - -ifeq ($(QTESS),) - QTESS = qtess $(QTESS_OPTS) -endif - -ifeq ($(TESS),) - TESS = tess $(TESS_OPTS) -endif - -ifeq ($(EGG_BLEND),) - EGG_BLEND = egg-blend $(EGG_BLEND_OPTS) -endif - -ifeq ($(EGG_REPLACE),) - EGG_REPLACE = egg-replace $(EGG_REPLACE_OPTS) -endif - -ifeq ($(EGG_REPLACE_OPTS),) - EGG_REPLACE_OPTS = -n -endif - -ifeq ($(INSTALL_DIR),) - INSTALL_DIR = $(INSTALL_ROOT)/models/char/$(DIR_NAME) -endif - -ifeq ($(INSTALL_MAP_DIR),) - INSTALL_MAP_DIR = $(INSTALL_DIR)/$(INSTALL_MAPS) -endif - -ifeq ($(DIR_NAME),) - DIR_NAME = $(CHAR_NAME) -endif - -# A synonym to help palettize find a reasonable default palette name. -SCENE = $(DIR_NAME) - -ifeq ($(EGG_NAME),) - EGG_NAME = $(CHAR_NAME) -endif - -ifeq ($(CHAR_TOP_NODE),) - CHAR_TOP_NODE = $(CHAR_NAME) -endif - -ifneq ($(PALETTE_NAME),) - # If the palette name is nonempty, make sure it doesn't contain slashes. - PALETTE_NAME := $(subst /,-,$(PALETTE_NAME)) -endif - -PAL_EGG_DIR = $(CHAR_BUILD_DIR)/pal - - -# WIRE_DIR and WIRE_PATTERN tell the makefile where to find the latest model -# file. -ifneq ($(WIRE_DIR),) - ifneq ($(WIRE_PATTERN),) - WIRE_FILE := $(strip $(shell cd $(WIRE_DIR); findlatest $(WIRE_DIR) $(WIRE_PATTERN))) - endif -endif - -# TX_WIRE_DIR and TX_WIRE_PATTERN tell where to find the latest model for the -# texture substitution. If this is non-null, it will use this file to -# substitute pieces in when it builds the NURBS file. This is a hack to -# work around the Alias/SoftImage texture offset problem. -ifneq ($(TX_WIRE_DIR),) - ifneq ($(TX_WIRE_PATTERN),) - TX_WIRE_FILE := $(strip $(shell cd $(TX_WIRE_DIR); findlatest $(TX_WIRE_DIR) $(TX_WIRE_PATTERN))) - endif -endif - -ifneq ($(CHAN_DIR),) - FIND_CHAN_FILES = $(foreach pat,$(CHAN_PATTERN),$(foreach dir,$(CHAN_DIR),$(strip $(shell cd $(dir); findlatest $(dir) $(pat))))) -endif - -# If the user didn't give us an explicit directory to place the unoptimized -# models--normally $(UNOPT)--infer it. -ifeq ($(UNOPT),) - ifneq ($(OPTCHAR_OPTS),) - UNOPT = unopt/ - endif -endif - -# And, we might even want to make a second pass at optcharring. -ifeq ($(UNOPT2),) - ifneq ($(OPTCHAR2_OPTS),) - UNOPT2 = unopt2/ - endif -endif - -# Set UNOPT2_NAME to be the printable name of UNOPT2. -ifeq ($(UNOPT2),) - UNOPT2_NAME = . -else - UNOPT2_NAME = $(UNOPT2) -endif - -# We need this variable in a substitution below. -comma := , - -ifeq ($(POLY_MODEL_FILE),) - POLY_MODEL_FILE = $(EGG_NAME)-mod.egg -endif - -ifeq ($(NURBS_MODEL_FILE),) - NURBS_MODEL_FILE = $(EGG_NAME)-nurbs.egg -endif - -# We define two different variables, NURBS_MODEL_READ and -# NURBS_MODEL_WRITE, to allow inserting of a user step in the build -# process between writing a final NURBS model and processing it. -# Normally, these variables are the same; if the user makefile defines -# them different, it can establish the processing to generate one from -# the other. -ifeq ($(NURBS_MODEL_READ),) - NURBS_MODEL_READ = $(NURBS_MODEL_FILE) -endif -ifeq ($(NURBS_MODEL_WRITE),) - NURBS_MODEL_WRITE = $(NURBS_MODEL_FILE) -endif - -# Similarly for POLY_MODEL_READ and POLY_MODEL_WRITE. -ifeq ($(POLY_MODEL_READ),) - POLY_MODEL_READ = $(POLY_MODEL_FILE) -endif -ifeq ($(POLY_MODEL_WRITE),) - POLY_MODEL_WRITE = $(POLY_MODEL_FILE) -endif - -TX_EGG_FILE = $(EGG_NAME)-tx.egg -PRETX_EGG_FILE = $(EGG_NAME)-pretx.egg - -# ANIMS is the list of anim files. These are passed through optchar. -CHAN_FILES := $(patsubst %,$(CHAN_FILE_PREFIX)%$(CHAN_FILE_SUFFIX).egg,$(ANIMS)) - -# ANIMS2 is the list of anim files that are passed through the second round -# of optchar, if there is one. If ANIMS2 is left unspecified, the user -# may specify simply BLEND_ANIMS, which is concatenated on the end. -ifneq ($(ANIMS2),) - CHAN2_FILES := $(patsubst %,$(CHAN_FILE_PREFIX)%$(CHAN_FILE_SUFFIX).egg,$(ANIMS2)) -else - CHAN2_FILES := $(CHAN_FILES) $(patsubst %,$(CHAN_FILE_PREFIX)%$(CHAN_FILE_SUFFIX).egg,$(BLEND_ANIMS)) -endif - -MODEL_FILES_READ = $(MODEL_FILES) -MODEL_FILES_WRITE = $(MODEL_FILES) - -ifneq ($(POLY_OPTS),) - MODEL_FILES_READ += $(POLY_MODEL_READ) - MODEL_FILES_WRITE += $(POLY_MODEL_WRITE) -endif - -# Maybe we have a list of additional models that are built by separate -# makefiles, but are intended to be optcharred in with the primary -# model. -ifneq ($(AUX_MODELS),) - UNOPT_AUX_MODELS := $(patsubst %,$(UNOPT)%.egg,$(AUX_MODELS)) - OPT_AUX_MODELS := $(patsubst %,%.egg,$(AUX_MODELS)) -endif - -ifneq ($(LODS),) - # If LODS is set, assume it's a list of models that will be compiled - # into a single multiple-lod model. - - LOD_EGG_FILES := $(patsubst %,$(UNOPT)$(EGG_NAME)-%.egg,$(LODS)) - MODEL_FILES_READ := $(patsubst $(UNOPT)%,%,$(POLY_MODEL_READ)) - MODEL_FILES_WRITE := $(patsubst $(UNOPT)%,%,$(POLY_MODEL_WRITE)) - - LOD_DF := - ifneq ($(LOD_DIST),) - LOD_DF += -d $(LOD_DIST) - endif - ifneq ($(LOD_FADE),) - LOD_DF += -f $(LOD_FADE) - endif - - # If we're building a multiple-lod model, we might want to consider - # different TESS options. - ifneq ($(TESS_LEVELS),) - TESS_MODELS := $(patsubst %,$(UNOPT)$(EGG_NAME)-%.egg,$(TESS_LEVELS)) - endif - ifneq ($(QTESS_LEVELS),) - QTESS_MODELS := $(patsubst %,$(UNOPT)$(EGG_NAME)-%.egg,$(QTESS_LEVELS)) - endif - -else - # Ok, we're not building a multiple-lod model. We're either building - # several distinct models, or a single NURBS model. - - MODEL_FILES_READ += $(OPT_AUX_MODELS) - MODEL_FILES_WRITE += $(OPT_AUX_MODELS) - - ifneq ($(TESS_LEVELS),) - # One or more TESS'ed model. - TESS_MODELS := $(patsubst %,$(UNOPT)$(EGG_NAME)-%.egg,$(TESS_LEVELS)) - MODEL_FILES_READ += $(patsubst $(UNOPT)%,%,$(TESS_MODELS)) - MODEL_FILES_WRITE += $(patsubst $(UNOPT)%,%,$(TESS_MODELS)) - else - ifneq ($(QTESS_LEVELS),) - # One or more QTESS'ed model. - QTESS_MODELS := $(patsubst %,$(UNOPT)$(EGG_NAME)-%.egg,$(QTESS_LEVELS)) - MODEL_FILES_READ += $(patsubst $(UNOPT)%,%,$(QTESS_MODELS)) - MODEL_FILES_WRITE += $(patsubst $(UNOPT)%,%,$(QTESS_MODELS)) - else - ifneq ($(NURBS_OPTS),) - # No particular tesselation parameters, but the user still asked for - # a NURBS file. He must really want to install it. - MODEL_FILES_READ += $(NURBS_MODEL_READ) - MODEL_FILES_WRITE += $(NURBS_MODEL_WRITE) - endif - endif - endif -endif - -# Now that we've built up the list of MODEL_FILES, give the user a chance -# to override it. These are the egg files that get passed through optchar. -ifneq ($(BUILD_MODELS),) - MODEL_FILES_READ := $(patsubst %,$(EGG_NAME)-%.egg,$(BUILD_MODELS)) - MODEL_FILES_WRITE := $(patsubst %,$(EGG_NAME)-%.egg,$(BUILD_MODELS)) -endif - -# And the user might always have some extra ones. -ifneq ($(EXTRA_MODELS),) - MODEL_FILES_READ += $(patsubst %,$(EGG_NAME)-%.egg,$(EXTRA_MODELS)) - MODEL_FILES_WRITE += $(patsubst %,$(EGG_NAME)-%.egg,$(EXTRA_MODELS)) -endif - -# If the user specified BUILD2_MODELS, these are files that get passed -# through optchar the second time (if there is a second optchar pass). -# Otherwise, we'll infer it as well. -ifneq ($(BUILD2_MODELS),) - MODEL2_FILES := $(patsubst %,$(EGG_NAME)-%.egg,$(BUILD2_MODELS)) -else - MODEL2_FILES := $(MODEL_FILES_READ) -endif - -# Similarly for extras. -ifneq ($(EXTRA2_MODELS),) - MODEL2_FILES += $(patsubst %,$(EGG_NAME)-%.egg,$(EXTRA2_MODELS)) -endif - -QTESS_RULE = $(UNOPT)$(EGG_NAME)-$(MODEL).egg : $(UNOPT)$(NURBS_MODEL_READ) - -# This is largely unnecessary, because of $(TESS_MODELS). -TESS_RULE = $(UNOPT)$(EGG_NAME)-$(MODEL).egg : $(UNOPT)$(NURBS_MODEL_READ) - - -BLEND_RULE = $(UNOPT2)$(CHAN_FILE_PREFIX)$(word 1,$(ANIM))-$(word 2,$(ANIM))$(word 3,$(ANIM))$(CHAN_FILE_SUFFIX).egg : $(patsubst %,$(UNOPT2)$(CHAN_FILE_PREFIX)%$(CHAN_FILE_SUFFIX).egg,$(word 1,$(ANIM)) $(word 2,$(ANIM))) - - -ifneq ($(COLLAPSED_ANIM),) - COLLAPSED_CHAN_FILE = $(EGG_NAME)-$(COLLAPSED_ANIM).egg - ifneq ($(OPTCHAR_OPTS),) - OPTCHAR_OPTS += -c $(COLLAPSED_CHAN_FILE) - endif - OPT_MODEL_FILES = $(patsubst %,$(UNOPT2)%,$(MODEL_FILES_READ) - OPT_CHAN_FILES = $(COLLAPSED_CHAN_FILE)) - OPT2_MODEL_FILES = $(MODEL2_FILES) - OPT2_CHAN_FILES = $(COLLAPSED_CHAN_FILE) -else - OPT_MODEL_FILES = $(patsubst %,$(UNOPT2)%,$(MODEL_FILES_READ)) - OPT_CHAN_FILES = $(patsubst %,$(UNOPT2)%,$(CHAN_FILES)) - OPT2_MODEL_FILES = $(MODEL2_FILES) - OPT2_CHAN_FILES = $(CHAN2_FILES) -endif -OPT_EGG_FILES = $(OPT_MODEL_FILES) $(OPT_CHAN_FILES) -OPT2_EGG_FILES = $(OPT2_MODEL_FILES) $(OPT2_CHAN_FILES) - -UNOPT2_EGG_FILES = $(patsubst %,$(UNOPT2)%,$(OPT2_EGG_FILES)) - -ifneq ($(INSTALL_MODELS),) - # If the user gave us a custom list of eggs to install, respect it. These - # are the egg files--models, in this case--that get converted to pfb's - # or whatever. - INSTALL_MODEL_FILES := $(patsubst %,$(EGG_NAME)-%.egg,$(INSTALL_MODELS)) -else - # Otherwise, infer it. - INSTALL_MODEL_FILES := $(OPT2_MODEL_FILES) -endif -ifneq ($(INSTALL_ANIMS),) - # Same story with the anims. - INSTALL_CHAN_FILES := $(patsubst %,$(CHAN_FILE_PREFIX)%.egg,$(INSTALL_ANIMS)) -else - # Otherwise, infer it. - INSTALL_CHAN_FILES := $(OPT2_CHAN_FILES) -endif -INSTALL_EGG_FILES = $(INSTALL_MODEL_FILES) $(INSTALL_CHAN_FILES) - -PAL_MODEL_FILES := $(patsubst %,$(PAL_EGG_DIR)/%,$(INSTALL_MODEL_FILES)) - -INSTALL_INST_MODEL_FILES := $(patsubst %.egg,$(INSTALL_DIR)/%.$(INST),$(INSTALL_MODEL_FILES)) -INSTALL_INST_CHAN_FILES := $(patsubst %.egg,$(INSTALL_DIR)/%.$(INST),$(INSTALL_CHAN_FILES)) -INSTALL_INST_FILES = $(INSTALL_INST_MODEL_FILES) $(INSTALL_INST_CHAN_FILES) - -ifneq ($(INSTALL_MAPS),) - EXTRA_INSTALL_TARGET := install-maps - EXTRA_UNINSTALL_TARGET := uninstall-maps -endif - -UNOPT_MODEL_FILES_READ := $(patsubst %,$(UNOPT)%,$(MODEL_FILES_READ)) -UNOPT_MODEL_FILES_WRITE := $(patsubst %,$(UNOPT)%,$(MODEL_FILES_WRITE)) -UNOPT_CHAN_FILES := $(patsubst %,$(UNOPT)%,$(CHAN_FILES)) -UNOPT_EGG_FILES_READ := $(UNOPT_MODEL_FILES_READ) $(UNOPT_CHAN_FILES) -UNOPT_EGG_FILES_WRITE := $(UNOPT_MODEL_FILES_WRITE) $(UNOPT_CHAN_FILES) - -.PHONY: egg pfb all_dirs check-palette -.PHONY: install-maps uninstall-maps -.PHONY: realinstall uninstall clean cleanall -.PHONY: $(addprefix uninstall-,$(INSTALL_INST_FILES)) - -egg: $(UNOPT) all_dirs $(INSTALL_EGG_FILES) -pfb: $(UNOPT) all_dirs check-palette $(INSTALL_INST_FILES) $(EXTRA_INSTALL_TARGET) -all_dirs: maps $(INSTALL_DIR) $(UNOPT) $(UNOPT2) - -ifneq ($(PALETTE_NAME),) -all_dirs: $(PAL_EGG_DIR) -endif - -realinstall: pfb -uninstall: $(addprefix uninstall-,$(INSTALL_INST_FILES)) $(EXTRA_UNINSTALL_TARGET) -$(addprefix uninstall-,$(INSTALL_INST_FILES)) : uninstall-% : - rm -f $(patsubst uninstall-%,%,$@) - -clean: - rm -f $(sort $(OPT_EGG_FILES) $(LOD_EGG_FILES) $(INSTALL_EGG_FILES)) - rm -f $(sort $(UNOPT_EGG_FILES_READ) $(UNOPT_EGG_FILES_WRITE) $(UNOPT)$(NURBS_MODEL_READ) $(UNOPT)$(NURBS_MODEL_WRITE)) - rm -f $(EXTRA_DIRT) maps/* -ifneq ($(TX_WIRE_FILE),) - rm -f $(UNOPT)$(PRETX_EGG_FILE) $(UNOPT)$(TX_EGG_FILE) -endif -ifneq ($(OPTCHAR2_OPTS),) - rm -f $(OPT2_EGG_FILES) - rm -f $(UNOPT2_EGG_FILES) -endif - -cleanall: clean - -$(INSTALL_DIR): - mkdir -p $(INSTALL_DIR) - -ifneq ($(LODS),) -# Make the unoptimized multiple-lod file -$(UNOPT)$(POLY_MODEL_WRITE) : $(LOD_EGG_FILES) - egg-lod $(LOD_OPTS) $(LOD_DF) -o $@ $(patsubst %,%$(comma)$(CHAR_TOP_NODE),$< $^) -else - ifneq ($(POLY_OPTS),) - # Make the unoptimized model file - - ifeq ($(TX_WIRE_FILE),) - # Make the poly file the normal way, directly. -$(UNOPT)$(POLY_MODEL_WRITE) : $(WIRE_FILE) - $(MAKE_POLY_MODEL) - - else - # Make the poly file via the TX_WIRE_FILE. -$(UNOPT)$(TX_EGG_FILE) : $(TX_WIRE_FILE) - $(MAKE_TX_MODEL) -$(UNOPT)$(PRETX_EGG_FILE) : $(WIRE_FILE) - $(MAKE_POLY_MODEL) -$(UNOPT)$(POLY_MODEL_WRITE) : $(UNOPT)$(PRETX_EGG_FILE) $(UNOPT)$(TX_EGG_FILE) - $(EGG_REPLACE) -o $@ $^ - endif - - endif -endif - -ifneq ($(NURBS_OPTS),) -# Make the nurbs model file - - ifeq ($(TX_WIRE_FILE),) - # Make the nurbs file the normal way, directly. -$(UNOPT)$(NURBS_MODEL_WRITE) : $(WIRE_FILE) - $(MAKE_NURBS_MODEL) - - else - # Make the nurbs file via the TX_WIRE_FILE. -$(UNOPT)$(TX_EGG_FILE) : $(TX_WIRE_FILE) - $(MAKE_TX_MODEL) -$(UNOPT)$(PRETX_EGG_FILE) : $(WIRE_FILE) - $(MAKE_NURBS_MODEL) -$(UNOPT)$(NURBS_MODEL_WRITE) : $(UNOPT)$(PRETX_EGG_FILE) $(UNOPT)$(TX_EGG_FILE) - $(EGG_REPLACE) -o $@ $^ - endif - -endif - -# Make the tesselated files. -ifneq ($(TESS_MODELS),) -$(TESS_MODELS) : $(UNOPT)%.egg : %.tess $(UNOPT)$(NURBS_MODEL_READ) - $(TESS) $(UNOPT)$(NURBS_MODEL_READ) $< >$@ -endif - -# Make the tesselated files. -ifneq ($(QTESS_MODELS),) -$(QTESS_MODELS) : $(UNOPT)%.egg : %.qtess $(UNOPT)$(NURBS_MODEL_READ) - $(QTESS) -iq $< -o $@ $(UNOPT)$(NURBS_MODEL_READ) -endif - -# Make the auxiliary models, model files whose build commands are -# handled in a separate makefile. -ifneq ($(UNOPT_AUX_MODELS),) -$(UNOPT_AUX_MODELS) : $(UNOPT)%.egg : Makefile.% - $(MAKE) -f $< $@ -endif - - - -ifneq ($(OPTCHAR_OPTS),) -# Make the optimized files. -$(OPT_EGG_FILES) : $(UNOPT_EGG_FILES_READ) - egg-optchar -d $(UNOPT2_NAME) $(OPTCHAR_OPTS) $^ -else - ifneq ($(COLLAPSED_CHAN_FILE),) - # Ok, we're not optcharing, but we do need to collapse some chan files. -$(COLLAPSED_CHAN_FILE) : $(CHAN_FILES) - egg-optchar -c $(COLLAPSED_CHAN_FILE) $(CHAN_FILES) - endif -endif - -ifneq ($(OPTCHAR2_OPTS),) -# Make the optimized files again. -$(OPT2_EGG_FILES) : $(UNOPT2_EGG_FILES) - egg-optchar -d . $(OPTCHAR2_OPTS) $^ -endif - -ifneq ($(PALETTE_NAME),) - # Palettize the files as we install them. -PT_FILES := $(patsubst %.egg,%.pt,$(INSTALL_MODEL_FILES)) -$(PT_FILES) : %.pt : %.egg - touch $@ - -# Attempt to regularize the cwd. -DIRNAME=$(notdir $(shell pwd)) -PWD=$(CHAR_BUILD_DIR)/$(DIRNAME) - -$(PAL_MODEL_FILES) : $(PT_FILES) - $(EGG_PALETTIZE) -t -de $(PAL_EGG_DIR) -dm $(INSTALL_ROOT)/maps $(PALETTIZE_OPTS) $(TEXATTRIB_DIR)/$(PALETTE_NAME).txa $(patsubst %.pt,$(PWD)/%.egg,$^) - -$(INSTALL_INST_MODEL_FILES) : $(INSTALL_DIR)/%.$(INST) : $(PAL_EGG_DIR)/%.egg - $(INSTALL_EGG_ACTION) - -else - # Don't palettize. -$(INSTALL_INST_MODEL_FILES) : $(INSTALL_DIR)/%.$(INST) : %.egg - $(INSTALL_EGG_ACTION) -endif - -$(INSTALL_INST_CHAN_FILES) : $(INSTALL_DIR)/%.$(INST) : %.egg - $(INSTALL_EGG_ACTION) - -$(PAL_EGG_DIR): - mkdir $(PAL_EGG_DIR) - -maps: - mkdir maps - -ifneq ($(UNOPT),) -$(UNOPT): - mkdir $(UNOPT) - ln -s ../maps $(UNOPT)maps -endif - -ifneq ($(UNOPT2),) -$(UNOPT2): - mkdir $(UNOPT2) - ln -s ../maps $(UNOPT2)maps -endif - -ifneq ($(PALETTE_NAME),) -check-palette: $(TEXATTRIB_DIR)/$(PALETTE_NAME).pi -$(TEXATTRIB_DIR)/$(PALETTE_NAME).pi : $(TEXATTRIB_DIR)/$(PALETTE_NAME).txa - $(EGG_PALETTIZE) -t $(PALETTIZE_OPTS) $< -$(TEXATTRIB_DIR)/$(PALETTE_NAME).txa : - @echo $@ -else -check-palette: -endif - -show-chan-files: - @echo CHAN_DIR is $(CHAN_DIR) - @echo CHAN_PATTERN is $(CHAN_PATTERN) - @echo CHAN_FILES is $(CHAN_FILES) - @echo FIND_CHAN_FILES is $(FIND_CHAN_FILES) - -show-wire-files: - @echo WIRE_DIR is $(WIRE_DIR) - @echo WIRE_PATTERN is $(WIRE_PATTERN) - @echo WIRE_FILE is $(WIRE_FILE) - @echo TX_WIRE_DIR is $(TX_WIRE_DIR) - @echo TX_WIRE_PATTERN is $(TX_WIRE_PATTERN) - @echo TX_WIRE_FILE is $(TX_WIRE_FILE) - -show-lods: - @echo LODS is $(LODS) - @echo LOD_EGG_FILES is $(LOD_EGG_FILES) - -show-models: - @echo NURBS_MODEL_READ is $(NURBS_MODEL_READ) - @echo NURBS_MODEL_WRITE is $(NURBS_MODEL_WRITE) - @echo POLY_MODEL_READ is $(POLY_MODEL_READ) - @echo POLY_MODEL_WRITE is $(POLY_MODEL_WRITE) - @echo MODEL_FILES_READ is $(MODEL_FILES_READ) - @echo MODEL_FILES_WRITE is $(MODEL_FILES_WRITE) - @echo OPT_EGG_FILES is $(OPT_EGG_FILES) - @echo UNOPT_EGG_FILES_READ is $(UNOPT_EGG_FILES_READ) - @echo UNOPT_EGG_FILES_WRITE is $(UNOPT_EGG_FILES_WRITE) - @echo INSTALL_MODEL_FILES is $(INSTALL_MODEL_FILES) - @echo INSTALL_INST_FILES is $(INSTALL_INST_FILES) - @echo PAL_MODEL_FILES is $(PAL_MODEL_FILES) - @echo PT_FILES is $(PT_FILES) - @echo INSTALL_CHAN_FILES is $(INSTALL_CHAN_FILES) - @echo .txa file is $(TEXATTRIB_DIR)/$(PALETTE_NAME).txa diff --git a/dtool/src/egg-build/Makefile.flt-egg.rules b/dtool/src/egg-build/Makefile.flt-egg.rules deleted file mode 100644 index d4ed5847ed..0000000000 --- a/dtool/src/egg-build/Makefile.flt-egg.rules +++ /dev/null @@ -1,166 +0,0 @@ -# -# Makefile rules for compiling Multigen scene models into egg, and -# then into pfb's (or whatever). This uses rflt2egg (in $DWDTOOL/bin) to -# automatically resolve and convert referenced files. -# - -include $(DTOOL)/include/Makefile.inst-egg.vars - -ifeq ($(RFLT2EGG),) - RFLT2EGG = rflt2egg -endif - -ifeq ($(EGG_PALETTIZE),) - EGG_PALETTIZE = egg-palettize -endif - -ifeq ($(EGG_COMBINE),) - EGG_COMBINE = egg-combine -endif - -ifeq ($(EGG_TEXTURES),) - EGG_TEXTURES = egg-textures -endif - -ifeq ($(PFICONV),) - PFICONV = pficonv -m -endif - -ifeq ($(PFI_DIR),) - PFI_DIR = $(FLT_PFI_DIR) -endif - -ifeq ($(INSTALL_DIR),) - INSTALL_DIR = $(INSTALL_ROOT)/models/$(SCENE_DIR) -endif - -ifeq ($(EGG_NAME),) - EGG_NAME = $(SCENE) -endif - -ifeq ($(BUILD_MODELS),) - BUILD_MODELS = $(EGG_NAME) -endif - -ifeq ($(SCENE_DIR),) - SCENE_DIR = snarf -endif - -# This helps out some of the generic option variables that are used for -# both chars and scenes. -CHAR_NAME = $(SCENE) - -ifneq ($(PALETTE_NAME),) - # If the palette name is nonempty, make sure it doesn't contain slashes. - PALETTE_NAME := $(subst /,-,$(PALETTE_NAME)) -endif - -UNPAL_EGG_DIR = $(SCENE_DIR) - -ifneq ($(PALETTE_NAME),) - PAL_EGG_DIR = $(MG_BUILD_DIR)/pal -else - PAL_EGG_DIR = $(UNPAL_EGG_DIR) -endif - -# INSTALL_FROM_DIR is the name of the subdirectory from which the -# final egg files will be installed. If unspecified, it defaults to -# either PAL_EGG_DIR. This can be used to apply a last-minute -# operation on the egg file within the makefile. -ifeq ($(INSTALL_FROM_DIR),) - INSTALL_FROM_DIR = $(PAL_EGG_DIR) -endif - -# BUILD_NAMES is the filename, without directory, of each of BUILD_MODELS. -# Often this will be the same, but it is allowed to specified a relative -# filename on each BUILD_MODEL. -BUILD_NAMES := $(notdir $(BUILD_MODELS)) - -TEST_EGG_FILES := $(patsubst %,rflt2egg-%.egg,$(BUILD_MODELS)) -SHOW_RFLT2EGG_FILES := $(patsubst %,show-rflt2egg-%.egg,$(BUILD_MODELS)) -UNPAL_EGG_FILES := $(patsubst %,$(UNPAL_EGG_DIR)/%.egg,$(BUILD_MODELS)) -PAL_EGG_FILES := $(patsubst %,$(PAL_EGG_DIR)/%.egg,$(BUILD_NAMES)) -INSTALL_INST_FILES := $(patsubst %,$(INSTALL_DIR)/%.$(INST),$(BUILD_NAMES)) - -.PHONY: pfb clean cleanall all_dirs check-palette -.PHONY: $(TEST_EGG_FILES) $(SHOW_RFLT2EGG_FILES) - -pfb: all_dirs check-palette $(INSTALL_INST_FILES) -all_dirs: maps $(INSTALL_DIR) -rflt2egg: $(SHOW_RFLT2EGG_FILES) - -ifneq ($(PALETTE_NAME),) -all_dirs: pal -endif - -# This is a phony rule which invokes rflt2egg to freshen up an egg file from -# its .flt sources. -$(TEST_EGG_FILES) : rflt2egg-%.egg : - @$(RFLT2EGG) -F $(MG_SOURCE_ROOT) $(RFLT2EGG_OPTS) $(patsubst rflt2egg-%,$(UNPAL_EGG_DIR)/%,$@) - -# This is another phony rule, just like the above except it doesn't squelch -# the rflt2egg command. Handy for debugging. -$(SHOW_RFLT2EGG_FILES) : show-rflt2egg-%.egg : - @echo "" - @echo $(patsubst show-rflt2egg-%,$(UNPAL_EGG_DIR)/%,$@) - $(RFLT2EGG) -vv -F $(MG_SOURCE_ROOT) $(RFLT2EGG_OPTS) $(patsubst show-rflt2egg-%,$(UNPAL_EGG_DIR)/%,$@) - -# We need to have a command here so make won't optimize it out. Make doesn't -# know about the side-effect of $(TEST_EGG_FILES), above, on this target. -$(UNPAL_EGG_FILES) : $(UNPAL_EGG_DIR)/%.egg : rflt2egg-%.egg - @echo "" - - -# -# Palettizing. -# -ifneq ($(PALETTE_NAME),) - -PT_FILES := $(patsubst %.egg,%.pt,$(UNPAL_EGG_FILES)) -$(PT_FILES) : %.pt : %.egg - touch $@ - -$(PAL_EGG_FILES) : $(PT_FILES) - $(EGG_PALETTIZE) -t -de $(PAL_EGG_DIR) -dm $(INSTALL_ROOT)/maps $(PALETTIZE_OPTS) $(TEXATTRIB_DIR)/$(PALETTE_NAME).txa $(patsubst %.pt,$(MG_BUILD_DIR)/%.egg,$^) - -endif - - - -$(INSTALL_INST_FILES) : $(INSTALL_DIR)/%.$(INST) : $(INSTALL_FROM_DIR)/%.egg - $(INSTALL_EGG_ACTION) - - -clean: -# Not really much we can do here. - -cleanall: clean -# Or here. - -pal: - @test -d $(MG_BUILD_DIR)/pal || mkdir -p $(MG_BUILD_DIR)/pal - -maps: - @test -d $(BUILD_DIR)/maps || mkdir -p $(BUILD_DIR)/maps - -$(INSTALL_DIR) : - @test -d $@ || mkdir -p $@ - -ifneq ($(PALETTE_NAME),) -check-palette: $(TEXATTRIB_DIR)/$(PALETTE_NAME).pi -$(TEXATTRIB_DIR)/$(PALETTE_NAME).pi : $(TEXATTRIB_DIR)/$(PALETTE_NAME).txa - $(EGG_PALETTIZE) -t $(PALETTIZE_OPTS) $< -$(TEXATTRIB_DIR)/$(PALETTE_NAME).txa : - @echo $@ -else -check-palette: -endif - - -show-models: - @echo UNPAL_EGG_DIR is $(UNPAL_EGG_DIR) - @echo UNPAL_EGG_FILES is $(UNPAL_EGG_FILES) - - -show-palette-name: - @echo palette_name is $(PALETTE_NAME) diff --git a/dtool/src/egg-build/Makefile.inst-egg.vars b/dtool/src/egg-build/Makefile.inst-egg.vars deleted file mode 100644 index af01962109..0000000000 --- a/dtool/src/egg-build/Makefile.inst-egg.vars +++ /dev/null @@ -1,43 +0,0 @@ -# -# Makefile variables for converting egg files into some (likely binary) -# file format and installing them in the install directory. -# - -# The default is to install them directly as egg files, without -# converting. Redefine the following variables to change this. - - -# This is the extension of the installed files. -ifeq ($(INST),) - INST = egg -endif - -# This is the program to install them. It depends on the variables -# EGG2INST_SOURCE and EGG2INST_TARGET. We define default program lines -# for the three types of installable files we know--eggs, bams, and pfbs-- -# but this may easily be extended by defining your own. -ifeq ($(EGG2INST),) - ifeq ($(INST),egg) - EGG2INST = cp $(EGG2INST_SOURCE) $(EGG2INST_TARGET) - endif - ifeq ($(INST),bam) - EGG2INST = egg2bam $(EGG2INST_SOURCE) -o $(EGG2INST_TARGET) - endif - ifeq ($(INST),pfb) - EGG2INST = egg2pfb $(EGG2INST_SOURCE) && mv $(basename $(EGG2INST_SOURCE)).pfb $(EGG2INST_TARGET) - endif -endif - -# These are the variables that will be filled in with the files to -# read and produce, respectively. Don't redefine these. -EGG2INST_SOURCE = $< -EGG2INST_TARGET = $@.installing - -# We do this two-step installation rule just to minimize the amount of -# time the installed file is half-complete. We first convert the egg -# file into a temporary filename in the install directory, and then -# rename it to its desired filename. - -INSTALL_EGG_ACTION = \ - $(EGG2INST) && mv $(EGG2INST_TARGET) $@ - diff --git a/dtool/src/egg-build/Makefile.soft2egg.rules b/dtool/src/egg-build/Makefile.soft2egg.rules deleted file mode 100644 index b0900591d9..0000000000 --- a/dtool/src/egg-build/Makefile.soft2egg.rules +++ /dev/null @@ -1,65 +0,0 @@ -# -# Makefile rules for compiling SoftImage character models. -# - -ifeq ($(SOFT2EGG),) - SOFT2EGG = soft2egg -endif - -ifeq ($(SOFT2EGG_CLEAN),) - SOFT2EGG_CLEAN = soft2egg-clean -endif - -ifeq ($(SCENE_PREFIX),) - SCENE_PREFIX = $(CHAR_NAME)- -endif - -ifeq ($(DATABASE_DIR),) - DATABASE_DIR = $(SOURCE_ROOT)/$(DIR_NAME) -endif - -ifeq ($(SOFT_SCENE_DIR),) - SOFT_SCENE_DIR = $(DATABASE_DIR)/SCENES -endif - -ifeq ($(SOFT_MODEL_PATTERN),) - SOFT_MODEL_PATTERN = $(SCENE_PREFIX)$(MODEL_NAME).*.dsc -endif - -ifeq ($(SOFT_ANIM_PATTERN),) - SOFT_ANIM_PATTERN = $(SCENE_PREFIX)$(ANIM).*.dsc -endif - -# CHAN_DIR and WIRE_DIR are names inherited from Makefile.a2egg.rules. -# Makefile.char-egg.rules expects these to contain sensible values, -# so we feed them both the SOFT_SCENE_DIR directory. -CHAN_DIR = $(SOFT_SCENE_DIR) -WIRE_DIR = $(SOFT_SCENE_DIR) - -# Similarly for WIRE_PATTERN and CHAN_PATTERN. -WIRE_PATTERN = $(SOFT_MODEL_PATTERN) -CHAN_PATTERN = $(SOFT_ANIM_PATTERN) - -ifneq ($(TESS_LEVELS)$(QTESS_LEVELS),) - # If we are tesselating, we must force the nurbs model generation. - ifeq ($(NURBS_OPTS),) - NURBS_OPTS = -n - endif -endif - -S2E_RULE = $(UNOPT)$(EGG_NAME)-$(MODEL).egg : $(WIRE_FILE) maps -S2E = $(SOFT2EGG_CLEAN) -M $@ -d $(DATABASE_DIR) -t maps - -S2C_RULE = $(UNOPT)$(CHAN_FILE_PREFIX)$(ANIM)$(CHAN_FILE_SUFFIX).egg : $(FIND_CHAN_FILES) -S2C = $(SOFT2EGG) -a -A $@ -d $(DATABASE_DIR) -s $(notdir $<) $(S2C_OPTS) - -SOFT_MODEL = $(notdir $(WIRE_FILE)) - -MAKE_POLY_MODEL = $(S2E) -s $(SOFT_MODEL) $(POLY_OPTS) $(S2E_OPTS) -MAKE_NURBS_MODEL = $(S2E) -s $(SOFT_MODEL) $(NURBS_OPTS) $(S2E_OPTS) -MAKE_TX_MODEL = a2egg -nsk -m $@ $(MAKE_TX_OPTS) $(TX_WIRE_FILE) - - -include $(DTOOL)/include/Makefile.char-egg.rules - - diff --git a/dtool/src/egg-build/Makefile.source-egg.rules b/dtool/src/egg-build/Makefile.source-egg.rules deleted file mode 100644 index b2081e0f22..0000000000 --- a/dtool/src/egg-build/Makefile.source-egg.rules +++ /dev/null @@ -1,211 +0,0 @@ -# -# Makefile rules for converting egg files which were originally hand-crafted -# into pfb's. -# - -include $(DTOOL)/include/Makefile.inst-egg.vars - -ifeq ($(EGG_RESTRUCTURE),) - EGG_RESTRUCTURE = egg-restructure -endif - -ifeq ($(EGG_PALETTIZE),) - EGG_PALETTIZE = egg-palettize -endif - -ifeq ($(EGG_COMBINE),) - EGG_COMBINE = egg-combine -endif - -ifeq ($(EGG_TEXTURES),) - EGG_TEXTURES = egg-textures -endif - -ifeq ($(PFICONV),) - PFICONV = pficonv -m -endif - -ifeq ($(INSTALL_DIR),) - INSTALL_DIR = $(INSTALL_ROOT)/models/$(SCENE_DIR) -endif - -ifeq ($(EGG_NAME),) - EGG_NAME = $(SCENE) -endif - -ifeq ($(BUILD_MODELS),) - BUILD_MODELS = $(EGG_NAME) -endif - -ifeq ($(SCENE_DIR),) - SCENE_DIR = snarf -endif - -ifeq ($(PFI_DIR),) - PFI_DIR = $(FLT_PFI_DIR) -endif - -ifeq ($(SOURCE_DIR),) - SOURCE_DIR = $(EGG_SOURCE_ROOT)/$(SCENE_DIR) -endif - -# This helps out some of the generic option variables that are used for -# both chars and scenes. -CHAR_NAME = $(SCENE) - -# If we have RESTRUCTURE_OPTS set, then we must generate the model file into -# the unstructure directory, and restructure it into the current directory. -# Otherwise, we just generate it directly into the current directory. -ifneq ($(RESTRUCTURE_OPTS),) - INIT_EGG_DIR = unstructure - UNPAL_EGG_DIR = $(SCENE_DIR) -else - INIT_EGG_DIR = $(SCENE_DIR) - UNPAL_EGG_DIR = $(SCENE_DIR) -endif - -ifneq ($(PALETTIZE_OPTS),) - PAL_EGG_DIR = pal -else - PAL_EGG_DIR = $(UNPAL_EGG_DIR) -endif - -ifneq ($(MAKE_PFI),) - PFI_EGG_DIR = pfi - EGG2INST_OPTS = -t -else - PFI_EGG_DIR = $(PAL_EGG_DIR) -endif - -# INSTALL_FROM_DIR is the name of the subdirectory from which the final -# egg files will be installed. If unspecified, it defaults to either -# PAL_EGG_DIR or PFI_EGG_DIR, depending on whether pfi's are built. This -# can be used to apply a last-minute operation on the egg file within the -# makefile. -ifeq ($(INSTALL_FROM_DIR),) - INSTALL_FROM_DIR = $(PFI_EGG_DIR) -endif - -# BUILD_NAMES is the filename, without directory, of each of BUILD_MODELS. -# Often this will be the same, but it is allowed to specified a relative -# filename on each BUILD_MODEL. -BUILD_NAMES := $(notdir $(BUILD_MODELS)) - -INIT_EGG_FILES := $(patsubst %,$(INIT_EGG_DIR)/%.egg,$(BUILD_MODELS)) -UNPAL_EGG_FILES := $(patsubst %,$(UNPAL_EGG_DIR)/%.egg,$(BUILD_MODELS)) -PAL_EGG_FILES := $(patsubst %,$(PAL_EGG_DIR)/%.egg,$(BUILD_NAMES)) -PFI_EGG_FILES := $(patsubst %,$(PFI_EGG_DIR)/%.egg,$(BUILD_NAMES)) -INSTALL_INST_FILES := $(patsubst %,$(INSTALL_DIR)/%.$(INST),$(BUILD_NAMES)) - -ifneq ($(PALETTIZE_TOGETHER),) - # If we only have one file, don't attempt to palettize it together with - # itself. PALETTIZE_TOGETHER only makes sense if we have multiple files. - ifeq ($(words $(PAL_EGG_FILES)),1) - PALETTIZE_TOGETHER := - endif -endif - -.PHONY: egg pfb clean cleanall all_dirs - -egg: all_dirs $(UNPAL_EGG_FILES) -pfb: egg $(INSTALL_INST_FILES) -all_dirs: maps $(SCENE_DIR) $(INSTALL_DIR) - -ifneq ($(RESTRUCTURE_OPTS),) -all_dirs: unstructure -endif - -ifneq ($(PALETTIZE_OPTS),) -all_dirs: pal -endif - -ifneq ($(MAKE_PFI),) -all_dirs: pfi $(PFI_DIR) -endif - -# This is the basic rule. If the including makefile doesn't specify anything -# else, we use this rule to build our egg file. -$(INIT_EGG_DIR)/%.egg : $(SOURCE_DIR)/%.egg - cp $< $@ - -# -# Restructuring. -# -ifneq ($(RESTRUCTURE_OPTS),) -$(UNPAL_EGG_FILES) : $(UNPAL_EGG_DIR)/%.egg : $(INIT_EGG_DIR)/%.egg - $(EGG_RESTRUCTURE) -o $@ $(RESTRUCTURE_OPTS) $< -endif - -# -# Palettizing. -# -ifneq ($(PALETTIZE_OPTS),) -ifneq ($(PALETTIZE_TOGETHER),) - -# If there are multiple files and the user so requested, palettize them all -# together. -$(UNPAL_EGG_DIR)/$(EGG_NAME)-combine.egg : $(UNPAL_EGG_FILES) - $(EGG_COMBINE) -o $@ $^ - -$(PAL_EGG_DIR)/$(EGG_NAME)-combine.egg : $(UNPAL_EGG_DIR)/$(EGG_NAME)-combine.egg - $(EGG_PALETTIZE) -o $@ $(PALETTIZE_OPTS) -p $(EGG_NAME)-palette. $< - -$(PAL_EGG_FILES) : $(PAL_EGG_DIR)/$(EGG_NAME)-combine.egg - $(EGG_COMBINE) -x -p $(PAL_EGG_DIR)/ $< - -else - -# If there's only one file, or the user didn't request a group palettizing, -# palettize them separately. -ifeq ($(BUILD_MODELS),$(BUILD_NAMES)) - # If none of the build models had directories, we can do it this way. -$(PAL_EGG_FILES) : $(PAL_EGG_DIR)/%.egg : $(UNPAL_EGG_DIR)/%.egg - $(EGG_PALETTIZE) -o $@ $(PALETTIZE_OPTS) -p $(patsubst $(PAL_EGG_DIR)/%.egg,%,$@)-palette. $< - -else - # Otherwise, we have an error. Don't put a rule for the palettized files, - # so the make will stop. -endif - -endif -endif - -ifneq ($(MAKE_PFI),) -$(PFI_EGG_FILES) : $(PFI_EGG_DIR)/%.egg : $(PAL_EGG_DIR)/%.egg - $(EGG_TEXTURES) -o $@ -d $(PFI_DIR)/$(PFI_PREFIX) -e pfi -n -p "$(PFICONV) %o %n" $< -endif - -$(INSTALL_INST_FILES) : $(INSTALL_DIR)/%.$(INST) : $(INSTALL_FROM_DIR)/%.egg - $(INSTALL_EGG_ACTION) - - -clean: -# Not really much we can do here. - -cleanall: clean -# Or here. - -unstructure: - mkdir unstructure - -pal: - mkdir pal - -pfi: - mkdir pfi - -maps: - mkdir maps - -ifneq ($(SCENE_DIR),.) -$(SCENE_DIR) : - mkdir -p $@ -endif - -$(INSTALL_DIR) : - mkdir -p $@ - -ifneq ($(PFI_DIR),$(INSTALL_DIR)) -$(PFI_DIR) : - mkdir -p $@ -endif diff --git a/dtool/src/egg-build/Makefile.textures.rules b/dtool/src/egg-build/Makefile.textures.rules deleted file mode 100644 index be91725d27..0000000000 --- a/dtool/src/egg-build/Makefile.textures.rules +++ /dev/null @@ -1,36 +0,0 @@ -# -# Makefile rules for converting texture maps from characters to rgb format -# and/or reducing them. -# - -ifeq ($(DEFAULT_SIZE),) - DEFAULT_SIZE = -2 -endif - - -RESIZE = image-resize -DEF_RESIZE = $(RESIZE) $(DEFAULT_SIZE) - -all: - -maps/%.rgb: - $(DEF_RESIZE) $< $@ - -maps/%.rgba: - $(DEF_RESIZE) $< $@ - - -ifneq ($(FULL_SIZE),) -$(patsubst %,maps/%,$(FULL_SIZE)) : % : - $(DEF_RESIZE) -x 100% $< $@ -endif - -ifneq ($(HALF_SIZE),) -$(patsubst %,maps/%,$(HALF_SIZE)) : % : - $(DEF_RESIZE) -x 50% $< $@ -endif - -ifneq ($(QUARTER_SIZE),) -$(patsubst %,maps/%,$(QUARTER_SIZE)) : % : - $(DEF_RESIZE) -x 25% $< $@ -endif diff --git a/dtool/src/egg-build/Sources.pp b/dtool/src/egg-build/Sources.pp deleted file mode 100644 index 60fac32a3e..0000000000 --- a/dtool/src/egg-build/Sources.pp +++ /dev/null @@ -1,11 +0,0 @@ -#define INSTALL_HEADERS \ - Makefile.a2egg-static.rules Makefile.a2egg.rules \ - Makefile.char-egg.rules Makefile.flt-egg.rules \ - Makefile.inst-egg.vars Makefile.soft2egg.rules \ - Makefile.source-egg.rules Makefile.textures.rules - -#begin bin_target - #define TARGET findlatest - #define SOURCES findlatest.cxx - #define LOCAL_LIBS dtoolbase -#end bin_target diff --git a/dtool/src/egg-build/findlatest.cxx b/dtool/src/egg-build/findlatest.cxx deleted file mode 100644 index 631a6cf906..0000000000 --- a/dtool/src/egg-build/findlatest.cxx +++ /dev/null @@ -1,171 +0,0 @@ -// Filename: findlatest.C -// Created by: drose (28Aug97) -// -//////////////////////////////////////////////////////////////////// - -#include - -#include -#include -#include -#include - -static const int max_vnums = 10; - -#ifndef True -static const int True = 1; -static const int False = 0; -#endif - - -// The VersionNumber class defines the sequence of integers that makes -// up a SoftImage file version number. One file's version is greater -// than another file's if the first integer from the left that differs -// is greater. -class VersionNumber { -public: - VersionNumber(); - VersionNumber(const VersionNumber ©); - - VersionNumber &operator = (const VersionNumber ©); - int operator < (const VersionNumber ©); - - void Extract(const char *filename); - - void Output(ostream &out) const; - - int num_vnums; - int vnums[max_vnums]; -}; - -inline ostream &operator << (ostream &out, const VersionNumber &v) { - v.Output(out); - return out; -} - -VersionNumber:: -VersionNumber() { - num_vnums = 0; -} - -VersionNumber:: -VersionNumber(const VersionNumber ©) { - (*this) = copy; -} - -VersionNumber &VersionNumber:: -operator = (const VersionNumber ©) { - num_vnums = copy.num_vnums; - assert(num_vnums < max_vnums); - for (int i = 0; i < num_vnums; i++) { - vnums[i] = copy.vnums[i]; - } - return *this; -} - -int VersionNumber:: -operator < (const VersionNumber ©) { - for (int i = 0; i < num_vnums && i < copy.num_vnums; i++) { - if (vnums[i] < copy.vnums[i]) { - return True; - } else if (vnums[i] > copy.vnums[i]) { - return False; - } - } - return (num_vnums < copy.num_vnums); -} - -// Extract the version number from a filename. -void VersionNumber:: -Extract(const char *filename) { - const char *basename = strchr(filename, '/'); - basename = (basename == NULL) ? filename : basename + 1; - - // Now basename is the beginning of the file, sans directory. - // Find the extension. - const char *ext = strrchr(basename, '.'); - if (ext == NULL) { - ext = basename+strlen(basename); - } - - // Now walk back from the extension, until we find something that's - // not a number. - int temp_vnums[max_vnums]; - int v = 0; - - const char *d = ext-1; - while (v < max_vnums && d >= basename && isdigit(*d)) { - while (d >= basename && isdigit(*d)) { - d--; - } - temp_vnums[v++] = atoi(d+1); - if (*d=='-' || *d=='.') { - d--; - } - } - - // temp_vnums now has our version numbers in right-to-left order. - // Reverse them back into vnums. - for (int i = 0; i < v; i++) { - vnums[i] = temp_vnums[v-1-i]; - } - num_vnums = v; -} - -void VersionNumber:: -Output(ostream &out) const { - out << "("; - for (int i = 0; i < num_vnums; i++) { - out << " " << vnums[i]; - } - out << " )"; -} - - -void -usage() { - cerr << - "Usage:\n\n" - - " findlatest dir file1 file2 file3 ... fileN\n\n" - - "Finds the filename with the greatest version number, and echoes dir/file.\n" - "This is intended to identify the most recent version of a file in a directory.\n" - "The files are assumed to be of the form basename[vvv].extension, where\n" - "basename and extension are any arbitrary string, and vvv is any string\n" - "of integers delimited by '.' or '-'.\n" - "\n"; -} - -int -main(int argc, char *argv[]) { - if (argc<2) { - usage(); - exit(0); - } - - if (argc<3) { - // No files. - exit(0); - } - - VersionNumber max_version; - int max_i = 0; - - VersionNumber v; - for (int i = 2; i < argc; i++) { - v.Extract(argv[i]); - - if (max_version < v) { - max_version = v; - max_i = i; - } - } - - if (max_i > 0) { - cout << argv[1] << '/' << argv[max_i] << "\n"; - } - - return (0); -} -