From acf3b3564ede70ad0683033e9a57dbfb62cdb281 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Fri, 11 Dec 2015 18:37:15 -0500 Subject: [PATCH] Set up the new Unix build. Now to do the OS X build. --- newbuild/GNUmakefile => GNUmakefile | 0 {newbuild/build => build}/GNUbasegcc.mk | 12 ++++++++++-- {newbuild/build => build}/GNUmakefile.libui | 0 newbuild/notes => buildnotes | 0 {newbuild/common => common}/GNUfiles.mk | 0 {newbuild/unix => unix}/GNUfiles.mk | 8 ++++++++ {newbuild/unix => unix}/GNUosspecific.mk | 0 7 files changed, 18 insertions(+), 2 deletions(-) rename newbuild/GNUmakefile => GNUmakefile (100%) rename {newbuild/build => build}/GNUbasegcc.mk (84%) rename {newbuild/build => build}/GNUmakefile.libui (100%) rename newbuild/notes => buildnotes (100%) rename {newbuild/common => common}/GNUfiles.mk (100%) rename {newbuild/unix => unix}/GNUfiles.mk (87%) rename {newbuild/unix => unix}/GNUosspecific.mk (100%) diff --git a/newbuild/GNUmakefile b/GNUmakefile similarity index 100% rename from newbuild/GNUmakefile rename to GNUmakefile diff --git a/newbuild/build/GNUbasegcc.mk b/build/GNUbasegcc.mk similarity index 84% rename from newbuild/build/GNUbasegcc.mk rename to build/GNUbasegcc.mk index 8aa12999..8190e214 100644 --- a/newbuild/build/GNUbasegcc.mk +++ b/build/GNUbasegcc.mk @@ -27,6 +27,8 @@ ifneq ($(NODEBUG),1) LDFLAGS += -g endif +# Build rules. + OFILES = \ $(subst /,_,$(CFILES)) \ $(subst /,_,$(CXXFILES)) \ @@ -37,10 +39,16 @@ OFILES := $(OFILES:%=$(OBJDIR)/%.o) OUT = $(OUTDIR)/$(NAME)$(SUFFIX) -# TODO make the linker the C++ compiler in a C++ build if needed +# TODO allow using LD +# LD is defined by default so we need a way to override the default define without blocking a user define +ifeq ($(CXXFILES),) + reallinker = $(CC) +else + reallinker = $(CXX) +endif $(OUT): $(OFILES) | $(OUTDIR) - @$(LD) -o $(OUT) $(OFILES) $(LDFLAGS) + @$(reallinker) -o $(OUT) $(OFILES) $(LDFLAGS) @echo ====== Linked $(OUT) .SECONDEXPANSION: diff --git a/newbuild/build/GNUmakefile.libui b/build/GNUmakefile.libui similarity index 100% rename from newbuild/build/GNUmakefile.libui rename to build/GNUmakefile.libui diff --git a/newbuild/notes b/buildnotes similarity index 100% rename from newbuild/notes rename to buildnotes diff --git a/newbuild/common/GNUfiles.mk b/common/GNUfiles.mk similarity index 100% rename from newbuild/common/GNUfiles.mk rename to common/GNUfiles.mk diff --git a/newbuild/unix/GNUfiles.mk b/unix/GNUfiles.mk similarity index 87% rename from newbuild/unix/GNUfiles.mk rename to unix/GNUfiles.mk index 4f6d3867..4861bab4 100644 --- a/newbuild/unix/GNUfiles.mk +++ b/unix/GNUfiles.mk @@ -33,6 +33,14 @@ HFILES += \ # TODO split into a separate file or put in GNUmakefile.libui somehow? +# flags for GTK+ +CFLAGS += \ + `pkg-config --cflags gtk+-3.0` +CXXFLAGS += \ + `pkg-config --cflags gtk+-3.0` +LDFLAGS += \ + `pkg-config --libs gtk+-3.0` -lm + # flags for building a shared library # OS X does support -shared but it has a preferred name for this so let's use that there instead; hence this is not gcc-global LDFLAGS += \ diff --git a/newbuild/unix/GNUosspecific.mk b/unix/GNUosspecific.mk similarity index 100% rename from newbuild/unix/GNUosspecific.mk rename to unix/GNUosspecific.mk