mirror of
git://xwords.git.sourceforge.net/gitroot/xwords/xwords
synced 2024-12-30 10:26:58 +01:00
166 lines
4.1 KiB
Makefile
166 lines
4.1 KiB
Makefile
# -*- mode: Makefile; compile-command: "make -k ARCH=i686"; -*-
|
|
# ©2001 Franklin Electronic Publishers, Inc. Burlington, NJ.
|
|
# File: gui/test/Makefile
|
|
#
|
|
PLATFORM = franklin
|
|
COMMON = ../common
|
|
|
|
ifndef ARCH
|
|
$(error "Franklin builds require the environment variable ARCH. ")
|
|
endif
|
|
|
|
XW_DEFINES = -DPLATFORM_EBOOK -DPOINTER_SUPPORT -DKEY_SUPPORT -DSHOW_PROGRESS \
|
|
-DXWFEATURE_STANDALONE_ONLY -DFEATURE_TRAY_EDIT -DXWFEATURE_SEARCHLIMIT \
|
|
-DNODE_CAN_4 -DUSE_PATTERNS -D__LITTLE_ENDIAN
|
|
include ../common/config.mk
|
|
|
|
APPNAME = xwords4
|
|
|
|
# Define the list of source files
|
|
SRCS_CPP = frankdraw.cpp \
|
|
frankmain.cpp \
|
|
franksavedgames.cpp \
|
|
frankask.cpp \
|
|
frankgamesdb.cpp \
|
|
frankpasswd.cpp \
|
|
frankshowtext.cpp \
|
|
frankdict.cpp \
|
|
frankletter.cpp \
|
|
frankplayer.cpp \
|
|
frankdlist.cpp
|
|
|
|
SRCS_C =
|
|
SRCS_S =
|
|
|
|
# Program parameters (ebo_locate needs 12K of stack)
|
|
#HEAPSPACE = 98304
|
|
HEAPSPACE = 409600 # 0x64000
|
|
MAINSTACKSPACE = 16384
|
|
TIMERSTACKSPACE = 4096
|
|
|
|
# Environment: Use "yes" or "no"
|
|
GUI_LOCAL_COPY = no
|
|
OS_LOCAL_COPY = no
|
|
LANG_LOCAL_COPY = no
|
|
GUI_LANGUAGE = GUI_Amr.pkg
|
|
OS_BASEDIR = ../../../os
|
|
GUI_BASEDIR = ../source
|
|
|
|
#To prevent warnings from stopping the compilation, change the following line
|
|
#to "ERROR=" or start the make using "make ERROR=".
|
|
ERROR = -Werror
|
|
|
|
OBJS = ${COMMONOBJ}
|
|
|
|
# Include the standard Makefile targets
|
|
ifeq (x$(EBSDK_LIBS)x,xx)
|
|
# Normal: binary release version
|
|
include ${EBOOKMAN_SDK}/ebsdk.uses
|
|
include ${ESDK_TARGET_INC}/Makefile.GUI
|
|
else
|
|
# Special: building the SDK
|
|
include ${EBSDK_LIBS}/ebookman_libs.uses
|
|
include ../source/Makefile.GUI
|
|
endif
|
|
|
|
|
|
#
|
|
# At this point in the Makefile, you can put overrides for variables that
|
|
# were set in "Makefile.GUI".
|
|
#
|
|
|
|
#Create linkable version of VoiceAge file
|
|
#${OBJDIR}/objects.link: welcome.voiceage
|
|
|
|
#welcome.voiceage: welcome.seb
|
|
# tail -c+4097 <welcome.seb >welcome.voiceage
|
|
|
|
#CLEANLIST += welcome.voiceage
|
|
|
|
|
|
#Need this for an os1 link of a program that uses floating-point
|
|
#GCC_LIB = ${ESDK_LIBGCC_INSTALL_LIBFILE_FLOAT}
|
|
|
|
INCFLAGS += -I$(COMMON) -I../relay -I./
|
|
CFLAGS += ${XW_DEFINES} -DCPLUS
|
|
CFL_NOCPLUS = $(subst -DCPLUS,,${CFLAGS})
|
|
|
|
CLEANLIST += ${COMMONOBJ}
|
|
|
|
# dependencies for image generation
|
|
BMPS = ./bmps
|
|
frankmain.cpp: bmps_includes.h
|
|
|
|
$(BMPS)/%.cpp: $(BMPS)/%.pbitm
|
|
./pbitm2frank.pl $< $* > $@
|
|
|
|
GENIMGS = $(BMPS)/flip.cpp \
|
|
$(BMPS)/lightbulb.cpp \
|
|
$(BMPS)/valuebutton.cpp \
|
|
$(BMPS)/undo.cpp \
|
|
|
|
# listing the .cpp files here as dependencies should be all that's
|
|
# needed to get them generated.
|
|
bmps_includes.h: $(GENIMGS)
|
|
@echo "/* This file generated in Makefile; do not edit!!! */" > $@
|
|
for f in $^; do echo "#include \"$$f\"" >> $@; done
|
|
|
|
|
|
|
|
#
|
|
# Generic rules for invoking the compiler and assembler. Stolen from
|
|
# Makefile.GUI
|
|
#
|
|
|
|
${COMMONOBJDIR}/%.s :: ${COMMON}/%.c
|
|
${ESDK_GCC32_EXE} -b sneak32 -g $(CFL_NOCPLUS) -mclist -S -o $@ -c $<
|
|
|
|
${COMMONOBJDIR}/%.i :: ${COMMON}/%.c
|
|
${ESDK_GCC32_EXE} -b sneak32 -g $(CFL_NOCPLUS) -mclist -E -o $@ -c $<
|
|
|
|
${COMMONOBJDIR}/%.i :: ${COMMON}/%.cpp
|
|
${ESDK_GXX32_EXE} -b sneak32 -g $(CFLAGS) -mclist -E -o $@ -c $<
|
|
|
|
${COMMONOBJDIR}/%.s :: ${COMMON}/%.cpp
|
|
${ESDK_GXX32_EXE} -b sneak32 -g $(CFLAGS) -mclist -S -o $@ -c $<
|
|
|
|
${COMMONOBJDIR}/%.o :: ${COMMON}/%.cpp
|
|
${ESDK_GXX32_EXE} -b sneak32 -g $(CFLAGS) -o $@ -c $<
|
|
|
|
${COMMONOBJDIR}/%.o :: ${COMMON}/%.c
|
|
${ESDK_GCC32_EXE} -b sneak32 -g $(CFL_NOCPLUS) -o $@ -c $<
|
|
|
|
${COMMONOBJDIR}/%.o :: ${COMMONOBJDIR}/%.s
|
|
${ESDK_ASM32_EXE} -case ${INCFLAGS} -po ${COMMONOBJDIR} -o $<
|
|
|
|
# Targets to allow build without copying lots of files in. First has
|
|
# hack to force directory creation
|
|
os.link os.def standalone.link:
|
|
mkdir -p ../common/franklin
|
|
ln -s $$(find $${EBOOKMAN_SDK} -follow -name $@ | grep gui) $@
|
|
|
|
# get rid of the welcome crap
|
|
libraries.link:
|
|
cat $$(find $${EBOOKMAN_SDK} -follow -name $@ | grep gui) | \
|
|
grep -v Welcome > $@
|
|
|
|
|
|
|
|
#
|
|
# The following targets are usable only during SDK creation. They are for
|
|
# copying this directory to samples/gui/test.
|
|
#
|
|
|
|
build: os sa
|
|
|
|
configure:
|
|
|
|
do_install_out: build
|
|
mkdir -p ${ELIB_GUI_INSTALL_SAMPLE_TESTDIR}
|
|
(tar cf - . | (cd ${ELIB_GUI_INSTALL_SAMPLE_TESTDIR} && tar xf -))
|
|
|
|
memdebug:
|
|
$(MAKE) "XW_DEFINES = ${XW_DEFINES} -DMEM_DEBUG -DDEBUG"
|
|
|
|
test:
|
|
echo ${OBJS}
|