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

📄 makefile

📁 在uclinux下写的一个 address book 程序
💻
字号:
##  $Id: Makefile,v 1.8 2005/06/24 09:19:55 wilson 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.#ADDR_BK_OBJS    = src/addressbook.o src/addressbook_record.o src/addressbook_edit.oDB_UTIL_OBJS    = src/addressbook_record.o src/addressbook_db_util.oOBJS            = $(sort ${ADDR_BK_OBJS} ${DB_UTIL_OBJS})######################################### Name and path########################################LIB_DIR                 = /usr/libEMLINUX_TOP             = ../../..ORGANIZER_DIR           = ..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}IMGENC_INC_DIR          = ${EMLINUX_TOP}/imgenc/includeIMGENC_LIB_DIR          = ${EMLINUX_TOP}/imgenc/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             = ${EMLINUX_TOP}/EmGdkPixbuf/libpngPNG_LIB_DIR             = ${GDKPIXBUF_LIB_DIR}GDBM_INC_DIR            = ${ORGANIZER_DIR}/gdbm-1.8.3/install${ARCH_SUFFIX}/includeGDBM_LIB_DIR            = ${ORGANIZER_DIR}/gdbm-1.8.3/install${ARCH_SUFFIX}/libEMPLAYER_INC_DIR        = ${EMLINUX_TOP}/libemplayer/includeEMPLAYER_LIB_DIR        = ${EMLINUX_TOP}/libemplayer/lib${ARCH_SUFFIX}######################################### Default build options########################################USE_GDKPIXBUF   = YBUILD_SHLIB     = YENABLE_I18N			= YFONT_TABLE 			= YLAUNCHER_SUPPORT	= Y######################################### Build targets########################################TARGET  = bin${ARCH_SUFFIX}/addressbookifeq ($(MAKECMDGOALS),x86)ARCH_SUFFIX = -x86CC          = gccAR          = arCFLAGS      = -g -Wall -DX86TARGET     += bin${ARCH_SUFFIX}/addressbook_db_utilendififeq ($(MAKECMDGOALS),arm7)ARCH_SUFFIX = -arm7CC          = arm-linux-gccAR          = arm-linux-arCFLAGS      = -O2 -Wall -DARM7endififeq ($(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_INC_DIR    = ${UCLINUX_TOP}/lib/libjpegJPEG_LIB_DIR    = ${UCLINUX_TOP}/lib/libjpegPNG_INC_DIR     = ${UCLINUX_TOP}/lib/libpngPNG_LIB_DIR     = ${UCLINUX_TOP}/lib/libpngZLIB_INC_DIR    = ${UCLINUX_TOP}/lib/zlibZLIB_LIB_DIR    = ${UCLINUX_TOP}/lib/zlibLIBM_LIB_DIR    = ${UCLINUX_TOP}/uClibc/libmLIB_DIR         = ${UCLINUX_TOP}/uClibc/libENABLE_I18N     = NBUILD_SHLIB     = NLAUNCHER_SUPPORT= Ylayout          = 240160ifndef compressedcompressed      = YendifendifCFLAGS += ${OPTIONS}######################################### Other configurations########################################ifndef compressedcompressed      = Nendififndef sharedbinarysharedbinary    = Nendififeq (${sharedbinary}, Y)BUILD_SHLIB     = Ncompressed      = NLDLIBS  = -Xlinker -Map $@.mapSBLIBH  = -Wl,--whole-archiveSBLIBT  = -Wl,--no-whole-archiveSBLIB   = ${EMLINUX_TOP}/Application/lib-arm7/emtk.slib#SBLIB   = ${EMLINUX_TOP}/Application/lib-arm7/multimedia.slibSBLIB_0 = libemplayer/lib-arm7/libemplayer.a\(libemplayer.o\)SBLIB_1 = deskmsg/lib-arm7/libdeskmsg.aSBLIB_2 = uClinux-dist/lib/uClibc/lib/crt0.oSBLIB_0:= $(subst /,\/,$(subst .,\.,${SBLIB_0}))SBLIB_1:= $(subst /,\/,$(subst .,\.,${SBLIB_1}))SBLIB_2:= $(subst /,\/,$(subst .,\.,${SBLIB_2}))SBUTIL  = ${EMLINUX_TOP}/uCbin-util/bin-x86/ucbinSBCMDXL = ${SBUTIL} -xl $@ `awk '/ \.text.*0x.*${SBLIB_1}/ { printf("%s",$$2) } / \.text.*0x.*${SBLIB_2}/ { printf(" %s\n",$$2) }' $@.map`#SBCMDXL = ${SBUTIL} -xl $@ `awk '/ \.text.*0x.*${SBLIB_0}/ { printf("%s",$$2) } / \.text.*0x.*${SBLIB_1}/ { printf(" %s",$$2) } / \.text.*0x.*${SBLIB_2}/ { printf(" %s\n",$$2) }' $@.map`SBCMDXD = ${SBUTIL} -xd ${SBLIB} $@.libSBCMDBN = cat $@.bin $@.lib.diff > $@.sbinelseSBLIBH  =SBLIBT  =endififdef layoutOPTIONS += -DUI_LAYOUT_SCHEME=${layout}endififeq ($(ENABLE_I18N),Y)CFLAGS += -DENABLE_I18Nendififeq ($(FONT_TABLE), Y)CFLAGS += -DFONT_TABLEendif# Launcher desk-message supportifeq (${LAUNCHER_SUPPORT}, Y)CFLAGS += -I${ORGANIZER_DIR}/deskmsg/include -DLAUNCHER_SUPPORTifeq (${BUILD_SHLIB},Y)LFLAGS += -L${ORGANIZER_DIR}/deskmsg/lib${ARCH_SUFFIX} -ldeskmsgelseLDLIBS += ${SBLIBH}LDLIBS += ${ORGANIZER_DIR}/deskmsg/lib${ARCH_SUFFIX}/libdeskmsg.aLDLIBS += ${SBLIBT}endifendif# Gdbm and database librariesCFLAGS += -I${ORGANIZER_DIR}/common/includeCFLAGS += -I${ORGANIZER_DIR}/db/includeCFLAGS += -I${GDBM_INC_DIR}ifeq (${BUILD_SHLIB},Y)LFLAGS += -L${ORGANIZER_DIR}/common/lib${ARCH_SUFFIX} -lcommonLFLAGS += -L${ORGANIZER_DIR}/db/lib${ARCH_SUFFIX} -ldbLFLAGS += -L${GDBM_LIB_DIR} -lgdbmelseLDLIBS += ${SBLIBH}LDLIBS += ${ORGANIZER_DIR}/common/lib${ARCH_SUFFIX}/libcommon.aLDLIBS += ${ORGANIZER_DIR}/db/lib${ARCH_SUFFIX}/libdb.aLDLIBS += ${GDBM_LIB_DIR}/libgdbm.aLDLIBS += ${SBLIBT}endif# EmTK Look-And-Feel (requires EmGdkPixbuf)CFLAGS += -I${EMTK_INC_DIR}ifeq (${BUILD_SHLIB},Y)LFLAGS += -L${EMTK_LIB_DIR} -lemtklafLFLAGS += -L${EMTK_LIB_DIR} -lemtkelseLDLIBS += ${SBLIBH}LDLIBS += ${EMTK_LIB_DIR}/libemtklaf.aLDLIBS += ${EMTK_LIB_DIR}/libemtk.aLDLIBS += ${SBLIBT}endif# EmGdkPixbuf (requires Gdk and Glib)ifeq (${USE_GDKPIXBUF},Y)CFLAGS += -DUSE_GDKPIXBUF=1CFLAGS += -I${GDKPIXBUF_INC_DIR}CFLAGS += -I${IMGENC_INC_DIR}CFLAGS += -I${PNG_INC_DIR}CFLAGS += -I${ZLIB_INC_DIR}ifeq (${BUILD_SHLIB},Y)LFLAGS += -L${GDKPIXBUF_LIB_DIR} -lgdk_pixbufLFLAGS += -L${IMGENC_LIB_DIR} -limgencLFLAGS += -L${JPEG_LIB_DIR} -ljpegLFLAGS += -lpngLFLAGS += -L${ZLIB_LIB_DIR} -lzelseLDLIBS += ${SBLIBH}LDLIBS += ${GDKPIXBUF_LIB_DIR}/libgdk_pixbuf.aLDLIBS += ${IMGENC_LIB_DIR}/libimgenc.aLDLIBS += ${SBLIBT}LDLIBS += ${JPEG_LIB_DIR}/libjpeg.aLDLIBS += ${SBLIBH}LDLIBS += ${PNG_LIB_DIR}/libpng.aLDLIBS += ${ZLIB_LIB_DIR}/libz.aLDLIBS += ${SBLIBT}endif # 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 += ${SBLIBH}LDLIBS += ${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.aLDLIBS += ${SBLIBT}endif# LibCifeq (${BUILD_SHLIB},Y)LFLAGS += -lmelseifeq ($(findstring uclinux,${MAKECMDGOALS}),uclinux)LDLIBS += ${UCLDFLAGS} ${UCLDLIBS}LDLIBS += ${LIBM_LIB_DIR}/libm.aLDLIBS += ${LIB_DIR}/libpthread.aendifendif######################################### 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 "      l10n -- compile po files";	@echo "     clean -- to remove objects and binaries";	@echo "";	@echo "[layout=<type>]     UI layout scheme: 320240 (default), 240160";	@echo "[compressed=Y]      flat file binary (uClinux only): Y (default), N";	@echo "[sharedbinary=Y]    shared static binary files (uClinux only): Y, N (default)";	@echox86 arm7 uclinux: ${TARGET}library: ${SHTARGET}bin${ARCH_SUFFIX}/addressbook: ${ADDR_BK_OBJS}	@echo "Linking $@..."	@install -d ${dir $@}ifeq (${sharedbinary}, Y)	@echo -n > $@.mapendif	@${CC} -o $@ ${CFLAGS} ${LFLAGS} $+ ${LDLIBS}ifeq (${compressed},Y)	@${FLTHDR} -z $@endififeq (${sharedbinary}, Y)	@${SBCMDXL}	@${SBCMDXD}	@${SBCMDBN}endifbin${ARCH_SUFFIX}/addressbook_db_util: ${DB_UTIL_OBJS}	@echo "Linking $@..."	@install -d ${dir $@}	@${CC} -o $@ ${CFLAGS} ${LFLAGS} $+ ${LDLIBS}${OBJS}: %.o: %.c	@echo "Compiling $<..."	@$(CC) ${CFLAGS} -c $< -o $@l10n:	make -C pol10n-install:	make -C po installclean:	rm -f core $(wildcard core.* ${OBJS})distclean: clean	rm -f $(wildcard bin-*/addressbook*)	find -name '*~' -exec rm -f {} \;	@rmdir --ignore-fail-on-non-empty $(wildcard bin-*/) src

⌨️ 快捷键说明

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