📄 makefile.config
字号:
MAJOR_VERS = 0MINOR_VERS = 1VERS = $(MAJOR_VERS).$(MINOR_VERS)DESTDIR ?= /usr/localINSTDIR ?= $(DESTDIR)DATASUFFIX ?= shareBINSUFFIX ?= binLIBSUFFIX ?= libINCLUDESUFFIX ?= includeDATADIR ?= $(DESTDIR)/$(DATASUFFIX)BINDIR ?= $(DESTDIR)/$(BINSUFFIX)LIBDIR ?= $(DESTDIR)/$(LIBSUFFIX)INCLUDEDIR ?= $(DESTDIR)/$(INCLUDESUFFIX)DATAINST ?= $(INSTDIR)/$(DATASUFFIX)BININST ?= $(INSTDIR)/$(BINSUFFIX)LIBINST ?= $(INSTDIR)/$(LIBSUFFIX)INCLUDEINST ?= $(INSTDIR)/$(INCLUDESUFFIX)CROSSDIR ?= /opt/cross-toolsPACKAGE_NAME = gsegyviewPROGRAM_NAME = GSEGYViewPROGRAM_VERS = $(VERS)DEPFILE = .depend.$(OS)DIRS += gl lib test ui viewLIBDIRS += gl lib uiINSTDIRS += gl lib view dataTARGET_DIRS = $(foreach DIR,$(DIRS),target_$(DIR))TARGET_LIBDIRS = $(foreach DIR,$(LIBDIRS),target_$(DIR))TARGET_INSTDIRS = $(foreach DIR,$(INSTDIRS),target_$(DIR))NODEBUG ?= FALSEifneq ($(MARSHAL_LIST), )MARSHAL_SRC = $(MARSHAL_LIST:%.list=%.c)MARSHAL_HDR = $(MARSHAL_LIST:%.list=%.h)SRCS := $(MARSHAL_SRC) $(SRCS)endifMARSHAL_GEN = glib-genmarshalifneq ($(SRCS), )CCWARNINGS = -Wall -Wmissing-prototypes -Wstrict-prototypes \ -Wmissing-declarations -Wsign-compareDEFINES += -D_FILE_OFFSET_BITS=64 -DPACKAGE_NAME=\""$(PACKAGE_NAME)"\" \ -DPROGRAM_NAME=\""$(PROGRAM_NAME)"\" -DPROGRAM_VERS=\""$(PROGRAM_VERS)"\"INCLUDES += -I. -I..LIBS ?=##### Cross-compilation for Windows on Linux (both ia32)# MingW, Glib, GTK+ and related are supposed# to be installed in /opt/cross-tools####ifeq ($(OS), win32)TARGET = i386-mingw32msvcPATH := $(CROSSDIR)/bin:$(PATH)PKG_CONFIG_PATH = $(CROSSDIR)/lib/pkgconfigDLLPATH = -L$(CROSSDIR)/lib -L$(CROSSDIR)/i586-mingw32/libPKG_CONFIG = pkg-configDEFINES += -DWIN32 -DPACKAGE_LOCALE_DIR=\""locale"\"CC = i586-mingw32-gccF77 = i586-mingw32-g77AS = i586-mingw32-asLD = i586-mingw32-ldAR = i586-mingw32-arWINDRES = i586-mingw32-windresHOST_CC = gccINCLUDES += -I$(CROSSDIR)/include -I$(CROSSDIR)/i586-mingw32/includeLDFLAGS += $(DLLPATH)ifeq ($(NODEBUG), TRUE)CFLAGS = -O1 -march=i586 -mms-bitfields -fomit-frame-pointer -ffast-math -funroll-loopsFCFLAGS = -O1 -march=i586 -mms-bitfields -fomit-frame-pointer -ffast-math -funroll-loopsLDFLAGS += -s -mwindowselseCFLAGS = $(CCWARNINGS) -g -mms-bitfieldsFCFLAGS = -g -mms-bitfieldsLDFLAGS += -sDEFINES += -DDEBUGendifDLLWRAP = i586-mingw32-dllwrapDLLWRAP_FLAGS = --as=$(AS) --export-all --driver-name $(CC) -sGTK_CFLAGS = $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \ $(PKG_CONFIG) --cflags gtk+-win32-2.0)GTK_LIBS = $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \ $(PKG_CONFIG) --libs gtk+-win32-2.0)GTKGLEXT_CFLAGS = $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \ $(PKG_CONFIG) --cflags gtkglext-win32-1.0)GTKGLEXT_LIBS = $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) \ $(PKG_CONFIG) --libs gtkglext-win32-1.0)endif##### Linux x86 with GNU C Compiler####ifeq ($(OS), linux)DEFINES += -DLINUX -DPACKAGE_LOCALE_DIR=\""$(DATADIR)/locale"\" -DDATA_DIR=\""$(DATADIR)"\"CC ?= gccF77 ?= g77AS ?= asLD ?= ldAR ?= arifeq ($(NODEBUG), TRUE)CFLAGS += -O1 -fomit-frame-pointer -ffast-math -funroll-loops -fPICFCFLAGS += -O1 -fomit-frame-pointer -ffast-math -funroll-loops -fPICLDFLAGS += -selseifeq ($(PROFILE), TRUE)CFLAGS += $(CCWARNINGS) -g -p -pgFCFLAGS += -g -p -pgDEFINES += -DDEBUGLDFLAGS += -p -pgelseCFLAGS += $(CCWARNINGS) -gFCFLAGS += -gDEFINES += -DDEBUGendifendifPKG_CONFIG = pkg-configGTK_CFLAGS += $(shell $(PKG_CONFIG) --cflags gtk+-x11-2.0)GTK_LIBS += $(shell $(PKG_CONFIG) --libs gtk+-x11-2.0)GTKGLEXT_CFLAGS += $(shell $(PKG_CONFIG) --cflags gtkglext-x11-1.0)GTKGLEXT_LIBS += $(shell $(PKG_CONFIG) --libs gtkglext-x11-1.0)GTKGLEXT_LIBS += $(shell $(PKG_CONFIG) --libs gtkglext-x11-1.0)endifG_THREAD_CFLAGS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --cflags gthread-2.0)G_THREAD_LIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs gthread-2.0)GLIB_CFLAGS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --cflags glib-2.0)GLIB_LIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs glib-2.0)GOBJ_CFLAGS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --cflags gobject-2.0)GOBJ_LIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs gobject-2.0)endifPRODUCTDIR = ../product/$(OS)BINDIR = ../binifeq ($(DIRDEPTH), 2)PRODUCTDIR = ../../product/$(OS)BINDIR = ../../binendififeq ($(DIRDEPTH), 3)PRODUCTDIR = ../../../product/$(OS)BINDIR = ../../../binendififneq ($(SRCS), )MAKERUNTEST = $(BINDIR)/makerun_testPRODUCTBINDIR = $(PRODUCTDIR)/binPRODUCTOBJDIR = $(PRODUCTDIR)/objPRODUCTGLDIR = $(PRODUCTDIR)/glPRODUCTLIBDIR = $(PRODUCTDIR)/libPRODUCTTESTDIR = $(PRODUCTDIR)/testPRODUCTUIDIR = $(PRODUCTDIR)/uiPRODUCTVIEWDIR = $(PRODUCTDIR)/viewOBJS = $(SRCS:%.c=$(PRODUCTOBJDIR)/%.o) $(SRCS.f:%.f=$(PRODUCTOBJDIR)/%.o)$(PRODUCTOBJDIR)/%.o: %.c @echo $(CFLAGS) @echo $(DEFINES) @echo $(INCLUDES) $(CC) -c -o $(PRODUCTOBJDIR)/$*.o $(INCLUDES) $(CFLAGS) $(DEFINES) $<$(PRODUCTOBJDIR)/%.o: %.f $(F77) -c -o $(PRODUCTOBJDIR)/$*.o $(INCLUDES) $(FCFLAGS) $(DEFINES) $<ifneq ($(MARSHAL_SRC), )$(MARSHAL_SRC): $(MARSHAL_LIST) $(MARSHAL_GEN) --header --prefix=$(MARSHAL_PREFIX) $< > $(MARSHAL_HDR) $(MARSHAL_GEN) --body --prefix=$(MARSHAL_PREFIX) $< > $(MARSHAL_SRC)endififeq ($(OS), win32)GSEGYFILELIB = gsegyfile$(MAJOR_VERS)$(MINOR_VERS)GTKSEISVIEWGL = gtkseisviewgl$(MAJOR_VERS)$(MINOR_VERS)GSEGYVIEWUI = gsegyviewui$(MAJOR_VERS)$(MINOR_VERS)GSEGYFILELIB_SO = $(PRODUCTLIBDIR)/lib$(GSEGYFILELIB).dllGSEGYFILELIB_A = $(PRODUCTLIBDIR)/lib$(GSEGYFILELIB).aGSEGYFILELIB_DEF = $(PRODUCTLIBDIR)/lib$(GSEGYFILELIB).defGTKSEISVIEWGL_SO = $(PRODUCTGLDIR)/lib$(GTKSEISVIEWGL).dllGTKSEISVIEWGL_A = $(PRODUCTGLDIR)/lib$(GTKSEISVIEWGL).aGTKSEISVIEWGL_DEF = $(PRODUCTGLDIR)/lib$(GTKSEISVIEWGL).defGSEGYVIEWUI_SO = $(PRODUCTUIDIR)/lib$(GSEGYVIEWUI).dllGSEGYVIEWUI_A = $(PRODUCTUIDIR)/lib$(GSEGYVIEWUI).aGSEGYVIEWUI_DEF = $(PRODUCTUIDIR)/lib$(GSEGYVIEWUI).defGTKSEISVIEWGL_LD = -L$(PRODUCTGLDIR) -l$(GTKSEISVIEWGL)GSEGYFILELIB_LD = -L$(PRODUCTLIBDIR) -l$(GSEGYFILELIB)GSEGYVIEWUI_LD = -L$(PRODUCTUIDIR) -l$(GSEGYVIEWUI)endififeq ($(OS), linux)GSEGYFILELIB = gsegyfileGTKSEISVIEWGL = gtkseisviewglGSEGYVIEWUI = gsegyviewuiGSEGYFILELIB_SO_NAME = lib$(GSEGYFILELIB).so.$(VERS)GSEGYFILELIB_SO_LN_NAME = lib$(GSEGYFILELIB).soGSEGYFILELIB_SO = $(PRODUCTLIBDIR)/$(GSEGYFILELIB_SO_NAME)GSEGYFILELIB_SO_LN = $(PRODUCTLIBDIR)/$(GSEGYFILELIB_SO_LN_NAME)GSEGYFILELIB_A = $(PRODUCTLIBDIR)/lib$(GSEGYFILELIB).aGTKSEISVIEWGL_SO_NAME = lib$(GTKSEISVIEWGL).so.$(VERS)GTKSEISVIEWGL_SO_LN_NAME = lib$(GTKSEISVIEWGL).soGTKSEISVIEWGL_SO = $(PRODUCTGLDIR)/$(GTKSEISVIEWGL_SO_NAME)GTKSEISVIEWGL_SO_LN = $(PRODUCTGLDIR)/$(GTKSEISVIEWGL_SO_LN_NAME)GTKSEISVIEWGL_A = $(PRODUCTGLDIR)/lib$(GTKSEISVIEWGL).aGSEGYVIEWUI_SO_NAME = lib$(GSEGYVIEWUI).so.$(VERS)GSEGYVIEWUI_SO_LN_NAME = lib$(GSEGYVIEWUI).soGSEGYVIEWUI_SO = $(PRODUCTUIDIR)/$(GSEGYVIEWUI_SO_NAME)GSEGYVIEWUI_SO_LN = $(PRODUCTUIDIR)/$(GSEGYVIEWUI_SO_LN_NAME)GSEGYVIEWUI_A = $(PRODUCTUIDIR)/lib$(GSEGYVIEWUI).aGTKSEISVIEWGL_LD = $(GTKSEISVIEWGL_SO_LN)GSEGYFILELIB_LD = $(GSEGYFILELIB_SO_LN)GSEGYVIEWUI_LD = -L$(PRODUCTUIDIR) -l$(GSEGYVIEWUI)endifMAKEDEPEND = rm $(DEPFILE) && touch $(DEPFILE) && makedepend -f$(DEPFILE) -p$(PRODUCTOBJDIR)/ -- $(INCLUDES) $(CFLAGS) $(DEFINES) -- $(SRCS) && rm $(DEPFILE).bakendif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -