X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c801d85f158c4cba50b588807daabdcbd0ed3853..cd25ce61b5a469dca8848ba955c2e42be741a1c6:/samples/minimal/makefile.unx?ds=sidebyside diff --git a/samples/minimal/makefile.unx b/samples/minimal/makefile.unx index 9685d06789..d9bca5f200 100644 --- a/samples/minimal/makefile.unx +++ b/samples/minimal/makefile.unx @@ -1,58 +1,110 @@ -# -# File: makefile.unx -# Author: Julian Smart -# Created: 1993 -# Updated: -# Copyright: (c) 1993, AIAI, University of Edinburgh -# -# "%W% %G%" -# -# Makefile for minimal example (UNIX). +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.3 (http://www.bakefile.org) +# Do not modify, all changes will be overwritten! +# ========================================================================= -WXDIR = ../.. -# All common UNIX compiler flags and options are now in -# this central makefile. -include $(WXDIR)/src/make.env -OBJECTS = $(OBJDIR)/minimal.$(OBJSUFF) +# ------------------------------------------------------------------------- +# These are configurable options: +# ------------------------------------------------------------------------- -.SUFFIXES: +# C++ compiler +CXX := g++ -all: $(OBJDIR) minimal$(GUISUFFIX) +# Standard flags for C++ +CXXFLAGS := -wx: +# Standard preprocessor flags (common for CC and CXX) +CPPFLAGS := +# Standard linker flags +LDFLAGS := -motif: - $(MAKE) -f makefile.unx GUISUFFIX=_motif GUI=-Dwx_motif GUISUFFIX=_motif OPT='$(OPT)' LDLIBS='$(MOTIFLDLIBS)' WXLIB=$(WXDIR)/lib/libwx_motif.a OPTIONS='$(OPTIONS)' DEBUG='$(DEBUG)' WARN='$(WARN)' XLIB='$(XLIB)' XINCLUDE='$(XINCLUDE)' XVIEW_LINK= +# Location and arguments of wx-config script +WX_CONFIG := wx-config -xview: - cd $(WXDIR)/src/x; $(MAKE) -f makefile.unx xview - $(MAKE) -f makefile.unx GUI=-Dwx_xview GUISUFFIX=_ol CC=$(CC) OPTIONS='$(OPTIONS)' DEBUG='$(DEBUG)' WARN='$(WARN)' XLIB='$(XLIB)' XINCLUDE='$(XINCLUDE)' +# Port of the wx library to build against [gtk1,gtk2,msw,x11,motif,mgl,mac,dfb] +WX_PORT := $(shell $(WX_CONFIG) --selected-config | cut -d '-' -f 1) -hp: - cd $(WXDIR)/src/x; $(MAKE) -f makefile.unx hp - $(MAKE) -f makefile.unx GUI=-Dwx_motif GUISUFFIX=_hp CC=CC DEBUG='$(DEBUG)' WARN='-w' \ - XINCLUDE='$(HPXINCLUDE)' XLIB='$(HPXLIB)' XVIEW_LINK='' LDLIBS='$(HPLDLIBS)' +# Use DLL build of wx library to use? [0,1] +WX_SHARED := $(shell if test -z `$(WX_CONFIG) --selected-config | cut -d '-' -f 5`; then echo 1; else echo 0; fi) -$(OBJDIR): - mkdir $(OBJDIR) +# Compile Unicode build of wxWidgets? [0,1] +WX_UNICODE := $(shell $(WX_CONFIG) --selected-config | cut -d '-' -f 2 | sed 's/unicode/1/;s/ansi/0/') -minimal$(GUISUFFIX): $(OBJDIR)/minimal.$(OBJSUFF) $(WXLIB) - $(CC) $(LDFLAGS) -o minimal$(GUISUFFIX) $(OBJDIR)/minimal.$(OBJSUFF) $(XVIEW_LINK) $(LDLIBS) +# Use debug build of wxWidgets (define __WXDEBUG__)? [0,1] +WX_DEBUG := $(shell $(WX_CONFIG) --selected-config | cut -d '-' -f 3 | sed 's/debug/1/;s/release/0/') -$(OBJDIR)/minimal.$(OBJSUFF): minimal.$(SRCSUFF) - $(CC) -c $(CPPFLAGS) -o $@ minimal.$(SRCSUFF) +# Version of the wx library to build against. +WX_VERSION := $(shell $(WX_CONFIG) --selected-config | sed -e 's/.*-\([0-9]*\)\.\([0-9]*\)$$/\1\2/') -clean_motif: - $(MAKE) -f makefile.unx GUISUFFIX=_motif cleanany -clean_ol: - $(MAKE) -f makefile.unx GUISUFFIX=_ol cleanany -clean_hp: - $(MAKE) -f makefile.unx GUISUFFIX=_hp cleanany +# ------------------------------------------------------------------------- +# Do not modify the rest of this file! +# ------------------------------------------------------------------------- -cleanany: - rm -f $(OBJECTS) minimal$(GUISUFFIX) core +### Variables: ### + +CPPDEPS = -MT$@ -MF`echo $@ | sed -e 's,\.o$$,.d,'` -MD +WX_VERSION_MAJOR = $(shell echo $(WX_VERSION) | cut -c1,1) +WX_VERSION_MINOR = $(shell echo $(WX_VERSION) | cut -c2,2) +WX_CONFIG_FLAGS = $(WX_CONFIG_DEBUG_FLAG) $(WX_CONFIG_UNICODE_FLAG) \ + $(WX_CONFIG_SHARED_FLAG) --toolkit=$(WX_PORT) \ + --version=$(WX_VERSION_MAJOR).$(WX_VERSION_MINOR) +MINIMAL_CXXFLAGS = -I. `$(WX_CONFIG) --cxxflags $(WX_CONFIG_FLAGS)` $(CPPFLAGS) \ + $(CXXFLAGS) +MINIMAL_OBJECTS = \ + minimal_minimal.o + +### Conditionally set variables: ### + +ifeq ($(WX_DEBUG),0) +WX_CONFIG_DEBUG_FLAG = --debug=no +endif +ifeq ($(WX_DEBUG),1) +WX_CONFIG_DEBUG_FLAG = --debug=yes +endif +ifeq ($(WX_UNICODE),0) +WX_CONFIG_UNICODE_FLAG = --unicode=no +endif +ifeq ($(WX_UNICODE),1) +WX_CONFIG_UNICODE_FLAG = --unicode=yes +endif +ifeq ($(WX_SHARED),0) +WX_CONFIG_SHARED_FLAG = --static=yes +endif +ifeq ($(WX_SHARED),1) +WX_CONFIG_SHARED_FLAG = --static=no +endif + + +### Targets: ### + +all: test_for_selected_wxbuild minimal + +install: all + +uninstall: + +clean: + rm -f ./*.o + rm -f ./*.d + rm -f minimal + +test_for_selected_wxbuild: + @$(WX_CONFIG) $(WX_CONFIG_FLAGS) + +minimal: $(MINIMAL_OBJECTS) + $(CXX) -o $@ $(MINIMAL_OBJECTS) $(LDFLAGS) `$(WX_CONFIG) $(WX_CONFIG_FLAGS) --libs core,base` + +minimal_minimal.o: ./minimal.cpp + $(CXX) -c -o $@ $(MINIMAL_CXXFLAGS) $(CPPDEPS) $< + +.PHONY: all install uninstall clean + + +# Dependencies tracking: +-include ./*.d