97 lines
2.5 KiB
Makefile
97 lines
2.5 KiB
Makefile
###############################################################
|
|
#
|
|
# Makefile for PalmPhotoCapturePreview
|
|
#
|
|
# Targets:
|
|
# all - build and install
|
|
# clean - clean everything
|
|
# samples - build sample code
|
|
#
|
|
# This makefile uses the following environment variables:
|
|
#
|
|
# PALMTOOLSU - path to directory where palm tools should go.
|
|
# ex: "/usr/local/PalmTools"
|
|
#
|
|
#
|
|
# Conventions:
|
|
# "ALLUPPER" case variable names are generally exported or provided by
|
|
# the environment
|
|
# "initLower" case variables are local to the makefile
|
|
#
|
|
#
|
|
# Commonly used Automatic Variables:
|
|
# $< represents the first dependency
|
|
# $^ represents all dependencies
|
|
# $? represents all dependencies that are newer than the target
|
|
# $@ represents the target
|
|
#
|
|
#
|
|
###################################################################
|
|
|
|
|
|
# ====================================================
|
|
# Common Make variables for PalmOS executables
|
|
# ====================================================
|
|
# Tools we use
|
|
CC = m68k-palmos-gcc
|
|
AS = m68k-palmos-as
|
|
|
|
|
|
# Directory paths
|
|
OUTPUTDIR = Obj
|
|
SRCDIR = Src
|
|
RSCDIR = Rsc
|
|
TESTSDIR = Tests
|
|
RESULTDIR = Result
|
|
|
|
HS_COMMON_INCS_DIR = $(shell cat includes.txt) $(shell cat platform.txt)
|
|
|
|
HS_PALM_RC_FLAGS = $(HS_COMMON_INCS_DIR)
|
|
|
|
CFLAGS = -O2 -g -Wall $(HS_PALM_RC_FLAGS) -I $(RSCDIR)
|
|
LDFLAGS = -g
|
|
|
|
APP = PalmPhotoCapturePreview
|
|
RCPFILE=$(RSCDIR)/$(APP).rcp
|
|
PRCFILE=$(RESULTDIR)/$(APP).prc
|
|
|
|
OBJS=$(OUTPUTDIR)/$(APP).o
|
|
SYMS=$(OUTPUTDIR)/$(APP).sym
|
|
|
|
$(RESULTDIR)/$(APP).prc: $(OUTPUTDIR) $(RESULTDIR) $(OUTPUTDIR)/$(APP) $(OUTPUTDIR)/bin.stamp $(APP).def
|
|
build-prc $(APP).def $(OUTPUTDIR)/$(APP) -o $(RESULTDIR)/$(APP).prc $(OUTPUTDIR)/*.bin
|
|
|
|
$(OUTPUTDIR):
|
|
mkdir $(OUTPUTDIR)
|
|
|
|
$(RESULTDIR):
|
|
mkdir $(RESULTDIR)
|
|
|
|
$(OUTPUTDIR)/$(APP): $(OBJS)
|
|
$(CC) $(CFLAGS) -o $@ $(OBJS)
|
|
# Add next line if generating symbols for debugging
|
|
$(CC) $(CFLAGS) $(OBJS) -o $(SYMS)
|
|
|
|
$(OUTPUTDIR)/%.o: $(SRCDIR)/%.c
|
|
$(CC) $(CFLAGS) -c $(SRCDIR)/$(APP).c -o $(OUTPUTDIR)/$(APP).o
|
|
$(CC) $(CFLAGS) -c $< -o $@
|
|
|
|
$(RSCDIR)/$(APP)_Rsc.h:
|
|
( cd $(RSCDIR); pilrc -I ../$(SRCDIR) -I ../$(RSCDIR) ../$(RCPFILE))
|
|
|
|
$(OBJS): $(SRCDIR)/$(APP).h $(RSCDIR)/$(APP)_Rsc.h
|
|
|
|
$(OUTPUTDIR)/$(APP).o: $(SRCDIR)/$(APP).h $(RSCDIR)/$(APP)_Rsc.h
|
|
|
|
$(OUTPUTDIR)/bin.stamp: $(RCPFILE) $(OBJS)
|
|
( cd $(OUTPUTDIR); rm *.bin; pilrc -I ../$(SRCDIR) -I ../$(RSCDIR) ../$(RCPFILE))
|
|
touch $(OUTPUTDIR)/bin.stamp
|
|
|
|
samples: ${PRCFILE}
|
|
|
|
clean:
|
|
rm -rf $(OUTPUTDIR)
|
|
rm -rf $(RESULTDIR)
|
|
rm -rf Debug
|
|
rm -f $(RSCDIR)/$(APP)_Rsc.h
|