116 lines
3.2 KiB
Text
116 lines
3.2 KiB
Text
# Makefile for wxthings lib (UNIX).
|
|
|
|
# ----------------------------------------------------------------------------
|
|
# wxWidgets build settings
|
|
|
|
WXCONFIG := wx-config
|
|
|
|
WXDIR = $(shell $(WXCONFIG) --prefix)
|
|
WXEXECDIR = $(shell $(WXCONFIG) --exec-prefix)
|
|
WXLIBDIR = $(WXEXECDIR)/lib
|
|
|
|
WXBASENAME = $(shell $(WXCONFIG) --basename)
|
|
WXVERSION = $(shell $(WXCONFIG) --version)
|
|
WXRELEASE = $(shell $(WXCONFIG) --release)
|
|
|
|
WXCXX = $(shell $(WXCONFIG) --cxx)
|
|
WXCXXFLAGS = $(shell $(WXCONFIG) --cxxflags)
|
|
WXLIBS = $(shell $(WXCONFIG) --libs)
|
|
|
|
WXSTC_LIB = $(WXBASENAME)_stc-$(WXRELEASE)
|
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
# in filebrws.cpp we need to resize comboboxes in toolbar
|
|
ifndef GTK_CFLAGS
|
|
ifeq (gtk2, $(findstring gtk2, $(WXBASENAME)))
|
|
GTK_CFLAGS = $(shell pkg-config --cflags gtk+-2.0)
|
|
else
|
|
GTK_CFLAGS = $(shell gtk-config --cflags)
|
|
endif
|
|
endif
|
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
# the wxstedit component is used for the wxFileBrowser class
|
|
WXSTEDIT_LIB = $(WXBASENAME)_stedit-$(WXRELEASE)
|
|
WXSTEDIT_DIR = ../../wxstedit
|
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
WXTHINGS_LIBNAME = $(WXBASENAME)_wxthings-$(WXRELEASE)
|
|
WXTHINGS_LIBDIR = $(WXLIBDIR)
|
|
|
|
LIBVERSION_CURRENT=1
|
|
LIBVERSION_REVISION=0
|
|
LIBVERSION_AGE=0
|
|
|
|
TARGET_LIBNAME = lib$(WXTHINGS_LIBNAME)
|
|
|
|
TARGET_LIB_STATIC = $(WXTHINGS_LIBDIR)/$(TARGET_LIBNAME).a
|
|
TARGET_LIB_SHARED = $(WXTHINGS_LIBDIR)/$(TARGET_LIBNAME).so.$(LIBVERSION_CURRENT).$(LIBVERSION_REVISION).$(LIBVERSION_AGE)
|
|
TARGET_LIB_LINK1 = $(TARGET_LIBNAME).so.$(LIBVERSION_CURRENT)
|
|
TARGET_LIB_LINK2 = $(TARGET_LIBNAME).so
|
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
CXXFLAGS = $(WXCXXFLAGS) $(GTK_CFLAGS) -MMD -g -Wall -Wunused -Wunused-parameter
|
|
LDLIBS = $(WXLIBS)
|
|
CXX = $(WXCXX)
|
|
|
|
#-fdump-class-hierarchy this dumps out a file.cpp.class file
|
|
# -pg in libs and defs for profiling
|
|
PROFILE = #-pg
|
|
APPEXTRADEFS = -I$(WXDIR)/contrib/include -I$(WXSTEDIT_DIR)/include -I../include $(PROFILE)
|
|
APPEXTRALIBS = -l$(WXSTC_LIB) -l$(WXSTEDIT_LIB) $(PROFILE)
|
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
RM = rm -f
|
|
AR = ar
|
|
AROPTIONS = rcu
|
|
RANLIB = ranlib
|
|
LN_S = ln -s
|
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
OBJECTS = \
|
|
block.o \
|
|
bmpcombo.o \
|
|
dropdown.o \
|
|
filebrws.o \
|
|
genergdi.o \
|
|
geometry.o \
|
|
menubtn.o \
|
|
optvalue.o \
|
|
range.o \
|
|
spinctld.o \
|
|
toggle.o
|
|
|
|
DEPFILES=$(OBJECTS:.o=.d)
|
|
|
|
.cpp.o:
|
|
$(CXX) -c $(CXXFLAGS) $(APPEXTRADEFS) -o $@ $<
|
|
|
|
all: $(TARGET_LIB_STATIC) $(TARGET_LIB_SHARED)
|
|
|
|
$(TARGET_LIB_STATIC) : $(OBJECTS)
|
|
@$(RM) $@
|
|
$(AR) $(AROPTIONS) $@ $(OBJECTS)
|
|
$(RANLIB) $@
|
|
|
|
$(TARGET_LIB_SHARED): $(OBJECTS)
|
|
$(CXX) -shared -o $@ $(OBJECTS)
|
|
cd $(WXTHINGS_LIBDIR) \
|
|
&& $(RM) $(TARGET_LIB_LINK1) $(TARGET_LIB_LINK2) \
|
|
&& $(LN_S) $(TARGET_LIB_SHARED) $(TARGET_LIB_LINK1) \
|
|
&& $(LN_S) $(TARGET_LIB_SHARED) $(TARGET_LIB_LINK2)
|
|
|
|
clean:
|
|
rm -f $(OBJECTS) $(DEPFILES) core \
|
|
$(TARGET_LIB_STATIC) \
|
|
$(TARGET_LIB_SHARED) \
|
|
$(WXTHINGS_LIBDIR)/$(TARGET_LIB_LINK1) \
|
|
$(WXTHINGS_LIBDIR)/$(TARGET_LIB_LINK2)
|
|
|
|
-include $(DEPFILES)
|