upiwin/src/Makefile

67 lines
2.7 KiB
Makefile
Raw Normal View History

# UPIWIN - Micro Pi Windowing Framework Kernel
# Copyright (C) 2019 Amy Bowersox/Erbosoft Metaverse Design Solutions
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# ------------------------------------------------------------------------
BUILDUTILS=../buildutils
RESOURCES=../resources
SPLASHSCREEN=splash-vmwcblk.png
OBJS=main.o sysinput.o ep_init.o ep_upiwin.o ep_backlight.o ep_msg.o ep_graphics.o ep_devctxt.o ep_bitmap.o \
ep_upiwin_tmp.o ep_util.o fbinit.o rect.o gfxobj.o devctxt.o dc_screen.o fontengine.o \
bitmap.o stockobj.o fbprimitive.o log.o gpio.o msg_queue.o time_func.o config.o \
i_freehand.o i_line.o i_rect.o i_fillrect.o i_undo.o i_clear.o splash.o
LIBS=-lpython3.7m -lcrypt -lfreetype -lbcm2835 -lpthread -ldl -lutil -lm
CFLAGS=-I/usr/include/python3.7m -I/usr/include/freetype2 -I/usr/include/libpng16 \
-Wall -Werror -fstack-protector -fwrapv -fno-PIE -g -O3 -DDEBUG_ASSERT
LDFLAGS=-L/usr/lib/python3.7/config-3.7m-arm-linux-gnueabihf -Xlinker -export-dynamic -Wl,-O1 \
-Wl,-Bsymbolic-functions
2019-11-29 02:05:30 -07:00
all: upiwin
2019-11-29 02:05:30 -07:00
upiwin: $(OBJS)
gcc -o upiwin $(LDFLAGS) $(OBJS) $(LIBS)
2019-11-29 02:05:30 -07:00
.c.o:
gcc -c $(CFLAGS) $<
2019-12-11 13:22:39 -07:00
%.o: %.bin
objcopy -I binary -O elf32-littlearm -B arm --rename-section \
.data=.rodata,alloc,load,readonly,data,contents $< $@
splash.bin: $(RESOURCES)/$(SPLASHSCREEN) $(BUILDUTILS)/mkgfx
$(BUILDUTILS)/mkgfx $(RESOURCES)/$(SPLASHSCREEN) splash.bin
i_freehand.bin: $(RESOURCES)/i_freehand.png $(BUILDUTILS)/mkgfx
$(BUILDUTILS)/mkgfx $(RESOURCES)/i_freehand.png i_freehand.bin
i_line.bin: $(RESOURCES)/i_line.png $(BUILDUTILS)/mkgfx
$(BUILDUTILS)/mkgfx $(RESOURCES)/i_line.png i_line.bin
i_rect.bin: $(RESOURCES)/i_rect.png $(BUILDUTILS)/mkgfx
$(BUILDUTILS)/mkgfx $(RESOURCES)/i_rect.png i_rect.bin
i_fillrect.bin: $(RESOURCES)/i_fillrect.png $(BUILDUTILS)/mkgfx
$(BUILDUTILS)/mkgfx $(RESOURCES)/i_fillrect.png i_fillrect.bin
i_undo.bin: $(RESOURCES)/i_undo.png $(BUILDUTILS)/mkgfx
2019-12-11 15:54:21 -07:00
$(BUILDUTILS)/mkgfx $(RESOURCES)/i_undo.png i_undo.bin
i_clear.bin: $(RESOURCES)/i_clear.png $(BUILDUTILS)/mkgfx
$(BUILDUTILS)/mkgfx $(RESOURCES)/i_clear.png i_clear.bin
clean:
rm -f upiwin *.o splash.bin *~