⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 uclinux 下的一个记事本程序,可以供大家参考
💻
字号:
##  $Id: Makefile,v 1.9 2005/04/12 11:38:56 kalvin Exp $##  Copyright (C) 2000 EmSoft Limited (www.emsoftltd.com)##  This software may be used and distributed according to the terms#  of the GNU General Public License, incorporated herein by reference.#OBJS            = src/memopad.o src/memopad_record.o src/test_memopad.o src/memopad_edit.o src/insert_text.oFILEMODE_OBJS   = src/memopad_file.o src/memopad_edit_file.o######################################### Name and path########################################EMLINUX_TOP             = $(shell pwd)/../../..MICROWIN_INC_DIR        = ${EMLINUX_TOP}/microwin/includeMICROWIN_LIB_DIR        = ${EMLINUX_TOP}/microwin/lib${ARCH_SUFFIX}GLIB_INC_DIR            = ${EMLINUX_TOP}/glib-1.2.7/includeGLIB_LIB_DIR            = ${EMLINUX_TOP}/glib-1.2.7/lib${ARCH_SUFFIX}GLIB_CONFIG             = ${EMLINUX_TOP}/glib-1.2.7/bin${ARCH_SUFFIX}/glib-configGDK_INC_DIR             = ${EMLINUX_TOP}/gtk+-1.2.7/includeGDK_LIB_DIR             = ${EMLINUX_TOP}/gtk+-1.2.7/lib${ARCH_SUFFIX}GDK_CONFIG              = ${EMLINUX_TOP}/gtk+-1.2.7/bin${ARCH_SUFFIX}/gdk-configGDKPIXBUF_INC_DIR       = ${EMLINUX_TOP}/EmGdkPixbuf/includeGDKPIXBUF_LIB_DIR       = ${EMLINUX_TOP}/EmGdkPixbuf/lib${ARCH_SUFFIX}EMTK_INC_DIR            = ${EMLINUX_TOP}/EmTK/includeEMTK_LIB_DIR            = ${EMLINUX_TOP}/EmTK/lib${ARCH_SUFFIX}ZLIB_INC_DIR            = ${EMLINUX_TOP}/zlib/includeZLIB_LIB_DIR            = ${EMLINUX_TOP}/zlib/lib${ARCH_SUFFIX}JPEG_INC_DIR            = ${EMLINUX_TOP}/jpeglibJPEG_LIB_DIR            = ${EMLINUX_TOP}/jpeglib/install$(ARCH_SUFFIX)/libPNG_INC_DIR             = ${GDKPIXBUF_INC_DIR}/libpngPNG_LIB_DIR             = ${GDKPIXBUF_LIB_DIR}GDBM_INC_DIR            = ../gdbm-1.8.3/install${ARCH_SUFFIX}/includeGDBM_LIB_DIR            = ../gdbm-1.8.3/install${ARCH_SUFFIX}/lib######################################### Default build options########################################OPTIONS =BUILD_SHLIB     = YENABLE_I18N     = YLAUNCHER_SUPPORT= YUSE_GDKPIXBUF   = YBUILD_NOAH_LAUNCHER = N######################################### Build targets########################################TARGET      = bin${ARCH_SUFFIX}/memopadifeq ($(findstring x86,${MAKECMDGOALS}),x86)ARCH_SUFFIX = -x86CC          = gccAR          = arCFLAGS      = -g -Wall -DX86TARGET     += bin${ARCH_SUFFIX}/test_db bin${ARCH_SUFFIX}/insert_text bin${ARCH_SUFFIX}/memopad_fileendififeq ($(findstring arm7,${MAKECMDGOALS}),arm7)ARCH_SUFFIX = -arm7CC          = arm-linux-gccAR          = arm-linux-arCFLAGS      = -O2 -Wall -DARM7CFLAGS     += -I${PREFIX}/includeTARGET     += bin${ARCH_SUFFIX}/memopad_fileendififeq ($(findstring uclinux,${MAKECMDGOALS}),uclinux)UCLINUX_TOP = ${EMLINUX_TOP}/../uClinux-distinclude ${UCLINUX_TOP}/user/include/Makefile.includeARCH_SUFFIX     = -arm7CC              = ${UCCC}AR              = ${UCAR}FLTHDR          = arm-elf-flthdrCFLAGS          = -Wall -DARM7 ${UCDEFINES} ${UCCFLAGS}JPEG_LIB_DIR    = ${UCLINUX_TOP}/lib/libjpegPNG_LIB_DIR     = ${UCLINUX_TOP}/lib/libpngZLIB_LIB_DIR    = ${UCLINUX_TOP}/lib/zlibLIBM_LIB_DIR    = ${UCLINUX_TOP}/uClibc/libmENABLE_I18N     = NBUILD_SHLIB     = NLAUNCHER_SUPPORT= YOPTIONS        += -DUI_LAYOUT_SCHEME=240160TARGET         += bin${ARCH_SUFFIX}/insert_text bin${ARCH_SUFFIX}/memopad_fileifndef compressedcompressed      = YendifendifCFLAGS += ${OPTIONS}######################################### Other configurations########################################ifndef compressedcompressed      = Nendififdef layoutOPTIONS			+= -DUI_LAYOUT_SCHEME=${layout}endififndef nogdbmnogdbm          = Nendififeq ($(ENABLE_I18N),Y)CFLAGS += -DENABLE_I18Nendififeq (${BUILD_NOAH_LAUNCHER},Y)TARGET  = lib${ARCH_SUFFIX}/memopad.aCFLAGS += -DMERGE_EMTK_LAUNCHERendif# Launcher desk-message supportifeq ($(LAUNCHER_SUPPORT), Y)CFLAGS += -I../deskmsg/include -DLAUNCHER_SUPPORTifeq ($(BUILD_SHLIB),Y)LFLAGS += -L../deskmsg/lib${ARCH_SUFFIX} -ldeskmsgelseLDLIBS += ../deskmsg/lib${ARCH_SUFFIX}/libdeskmsg.aendifendif# Gdbm and database librariesCFLAGS += ${DATABASE_CFLAGS}LFLAGS += ${DATABASE_LFLAGS}LDLIBS += ${DATABASE_LDLIBS}ifeq (${nogdbm},Y) # if ${nogdbm} is YCFLAGS += -DNOGDBMGDBM_CFLAGS    += -I../common/includeifeq (${BUILD_SHLIB},Y)GDBM_LFLAGS    += -L../common/lib${ARCH_SUFFIX} -lcommonelseGDBM_LDLIBS    += ../common/lib${ARCH_SUFFIX}/libcommon.aendifelse # else if ${nogdbm} is NGDBM_CFLAGS    += -I../common/includeGDBM_CFLAGS    += -I../db/includeGDBM_CFLAGS    += -I${GDBM_INC_DIR}ifeq (${BUILD_SHLIB},Y)GDBM_LFLAGS    += -L../common/lib${ARCH_SUFFIX} -lcommonGDBM_LFLAGS    += -L../db/lib${ARCH_SUFFIX} -ldbGDBM_LFLAGS    += -L${GDBM_LIB_DIR} -lgdbmelseGDBM_LDLIBS    += ../common/lib${ARCH_SUFFIX}/libcommon.aGDBM_LDLIBS    += ../db/lib${ARCH_SUFFIX}/libdb.aGDBM_LDLIBS    += ${GDBM_LIB_DIR}/libgdbm.aendifendif # end if ${nogdbm} is Y/N# EmTK Look-And-Feel (requires EmTK)ifeq ($(BUILD_SHLIB),Y)LFLAGS += -L${EMTK_LIB_DIR} -lemtklafelseLDLIBS += ${EMTK_LIB_DIR}/libemtklaf.aendif# EmTK (requires EmGdkPixbuf)CFLAGS += -I${EMTK_INC_DIR}ifeq ($(BUILD_SHLIB),Y)LFLAGS += -L${EMTK_LIB_DIR} -lemtkelseLDLIBS += ${EMTK_LIB_DIR}/libemtk.aendif# EmGdkPixbuf (requires Gdk and Glib)ifeq ($(USE_GDKPIXBUF),Y)CFLAGS += -DUSE_GDKPIXBUF=1CFLAGS += -I${GDKPIXBUF_INC_DIR}CFLAGS += -I${ZLIB_INC_DIR}ifeq (${BUILD_SHLIB},Y)LFLAGS += -L${GDKPIXBUF_LIB_DIR} -lgdk_pixbufLFLAGS += -L${JPEG_LIB_DIR} -ljpegLFLAGS += -lpngLFLAGS += -L${ZLIB_LIB_DIR} -lzelseLDLIBS += ${GDKPIXBUF_LIB_DIR}/libgdk_pixbuf.aLDLIBS += ${JPEG_LIB_DIR}/libjpeg.aLDLIBS += ${PNG_LIB_DIR}/libpng.aLDLIBS += ${ZLIB_LIB_DIR}/libz.aendif # build shared libraryendif # use gdk-pixbuf# Gdk, Glib and microwindowsGLIB_CFLAGS = `${GLIB_CONFIG} --cflags`GLIB_LFLAGS = `${GLIB_CONFIG} --libs` CFLAGS += `${GDK_CONFIG} --cflags`CFLAGS += ${GLIB_CFLAGS}ifeq ($(BUILD_SHLIB),Y)LFLAGS += `${GDK_CONFIG} --libs` -lpthreadLFLAGS += ${GLIB_LFLAGS}elseLDLIBS += ${GDK_LIB_DIR}/libgdk.aLDLIBS += ${GLIB_LIB_DIR}/libglib.a ${GLIB_LIB_DIR}/libgmodule.a ${GLIB_LIB_DIR}/libgthread.aLDLIBS += ${MICROWIN_LIB_DIR}/libnanogtk.a ${MICROWIN_LIB_DIR}/libnano-X.aendif# LibCifeq (${BUILD_SHLIB},Y)LFLAGS += -lmelseifeq ($(findstring uclinux,${MAKECMDGOALS}),uclinux)LDLIBS += ${UCLDFLAGS} ${UCLDLIBS} ${LIBM_LIB_DIR}/libm.aendifendif# Flags for Gdbm binaryDATABASE_CFLAGS = ${GDBM_CFLAGS}DATABASE_LFLAGS = ${GDBM_LFLAGS}DATABASE_LDLIBS = ${GDBM_LDLIBS}GDBM_CFLAGS := ${CFLAGS}GDBM_LFLAGS := ${LFLAGS}GDBM_LDLIBS := ${LDLIBS}# Flags for filemode binaryDATABASE_CFLAGS =DATABASE_LFLAGS =DATABASE_LDLIBS =FILEMODE_CFLAGS := ${CFLAGS}FILEMODE_LFLAGS := ${LFLAGS}FILEMODE_LDLIBS := ${LDLIBS}######################################### Build targets########################################help:	@echo; \	echo "Specify the following targets to make:"; \	echo "       x86 -- to compile x86 X11 version binary"; \	echo "      arm7 -- to compile arm version binary"; \	echo "   uclinux -- to compile uClinux ARM version binary"; \	echo "     clean -- to remove objects and binaries"; \	echo " distclean -- to remove objects, binaries and library"; \	echo ""; \	echo "[layout=<type>] UI layout scheme: 320240 (default), 240160"; \	echo "[compressed=Y]  flat file binary (uclinux only): Y (default), N"; \	echo "[nogdbm=Y]      disable GDBM (debug only): Y, N (default)"; \	echox86 arm7 uclinux: ${TARGET}bin${ARCH_SUFFIX}/insert_text: src/insert_text.o src/memopad_record.obin${ARCH_SUFFIX}/test_db: src/test_memopad.o src/memopad_record.obin${ARCH_SUFFIX}/memopad: src/memopad.o src/memopad_record.o src/memopad_edit.obin${ARCH_SUFFIX}/insert_text bin${ARCH_SUFFIX}/test_db bin${ARCH_SUFFIX}/memopad:	@echo "Linking $+ -> $@.."	@install -d ${dir $@}	@${CC} -o $@ ${GDBM_LFLAGS} $+ ${GDBM_LDLIBS}ifeq (${compressed},Y)	@${FLTHDR} -z $@endifbin${ARCH_SUFFIX}/memopad_file: ${FILEMODE_OBJS}	@echo "Linking $+ -> $@"	@$(CC) -o $@ ${FILEMODE_LFLAGS} $+ ${FILEMODE_LDLIBS}ifeq (${compressed},Y)	@${FLTHDR} -z $@endif${OBJS}: %.o: %.c	@echo "Compiling $< -> $@..."	@$(CC) ${GDBM_CFLAGS} -DFONT_TABLE -c $< -o $@${FILEMODE_OBJS}: %_file.o: %.c	@echo "Compiling $< -> $@..."	@$(CC) ${FILEMODE_CFLAGS} -DFILEMODE -c $< -o $@l10n:	make -C pol10n-install:	make -C po installclean:	rm -f core ${OBJS} ${FILEMODE_OBJS}distclean: clean	rm -f bin-*/memopad bin-*/memopad_file bin-*/test_db bin-*/insert_text \	      bin-*/memopad.gdb bin-*/memopad_file.gdb bin-*/test_db.gdb bin-*/insert_text.gdb	find -name '*~' -exec rm -f {} \;	@rmdir --ignore-fail-on-non-empty $(wildcard bin-*/) src

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -