fltkhs-0.2.0.1: c-src/Makefile
FLTKCONFIG=fltk-config
CXX = $(shell $(FLTKCONFIG) --cxx) $(shell $(FLTKCONFIG) --cxxflags) -Wall -DINTERNAL_LINKAGE -g -Icpp -I../
CXXSHARED = $(CXX)
CXXSTATIC = $(CXX) -static
CPPFILES= \
Fl_Menu_ButtonC.cpp \
Fl_PositionerC.cpp \
Fl_TimerC.cpp \
Fl_Value_OutputC.cpp \
Fl_Value_SliderC.cpp \
Fl_ScrollbarC.cpp \
Fl_ScrollC.cpp \
Fl_RollerC.cpp \
Fl_DialC.cpp \
Fl_CounterC.cpp \
Fl_SpinnerC.cpp \
UtilsC.cpp \
xC.cpp \
fl_utf8C.cpp \
glC.cpp \
glutC.cpp \
DerivedText_Editor.cpp \
DerivedShared_Image.cpp \
filenameC.cpp \
Fl_AskC.cpp \
Fl_BitmapC.cpp \
Fl_BoxC.cpp \
Fl_BrowserC.cpp \
Fl_ButtonC.cpp \
Fl_CallbackC.cpp \
Fl_C.cpp \
Fl_Check_ButtonC.cpp \
Fl_ChoiceC.cpp \
Fl_ClockC.cpp \
Fl_Color_ChooserC.cpp \
Fl_Copy_SurfaceC.cpp \
Fl_Double_WindowC.cpp \
Fl_DrawC.cpp \
Fl_DeviceC.cpp \
Fl_EnumerationsC.cpp \
Fl_File_BrowserC.cpp \
Fl_File_IconC.cpp \
Fl_File_InputC.cpp \
Fl_File_ChooserC.cpp \
Fl_Float_InputC.cpp \
Fl_Gl_WindowC.cpp \
Fl_GroupC.cpp \
Fl_Hold_BrowserC.cpp \
Fl_Image_SurfaceC.cpp \
Fl_ImageC.cpp \
Fl_Input_C.cpp \
Fl_InputC.cpp \
Fl_Int_InputC.cpp \
Fl_Light_ButtonC.cpp \
Fl_Menu_C.cpp \
Fl_Menu_ItemC.cpp \
Fl_Multi_BrowserC.cpp \
Fl_Multiline_InputC.cpp \
Fl_Multiline_OutputC.cpp \
Fl_Native_File_ChooserC.cpp \
Fl_OutputC.cpp \
Fl_Overlay_WindowC.cpp \
Fl_Paged_DeviceC.cpp \
Fl_PixmapC.cpp \
Fl_PNM_ImageC.cpp \
Fl_PreferencesC.cpp \
Fl_PrinterC.cpp \
Fl_ProgressC.cpp \
Fl_Radio_ButtonC.cpp \
Fl_Radio_Light_ButtonC.cpp \
Fl_Repeat_ButtonC.cpp \
Fl_Return_ButtonC.cpp \
Fl_RGB_ImageC.cpp \
Fl_Round_ButtonC.cpp \
Fl_Round_ClockC.cpp \
Fl_Secret_InputC.cpp \
Fl_Select_BrowserC.cpp \
Fl_Shared_ImageC.cpp \
fl_show_colormapC.cpp \
Fl_Single_WindowC.cpp \
Fl_SliderC.cpp \
Fl_Sys_Menu_BarC.cpp \
Fl_TableC.cpp \
Fl_Table_RowC.cpp \
Fl_TabsC.cpp \
Fl_Text_BufferC.cpp \
Fl_Text_DisplayC.cpp \
Fl_Text_EditorC.cpp \
Fl_Text_SelectionC.cpp \
Fl_TileC.cpp \
Fl_PackC.cpp \
Fl_Toggle_ButtonC.cpp \
Fl_TooltipC.cpp \
Fl_TreeC.cpp \
Fl_Tree_ItemC.cpp \
Fl_Tree_PrefsC.cpp \
Fl_ValuatorC.cpp \
Fl_AdjusterC.cpp \
Fl_Value_InputC.cpp \
Fl_Value_SliderC.cpp \
Fl_WidgetC.cpp \
Fl_WindowC.cpp \
Fl_WizardC.cpp
LIBNAME = libfltkc
OBJECTS = $(CPPFILES:.cpp=.o)
LIBDIR = ../c-lib
SHARED_OBJECT_FILES = ../shared_object_files
STATIC_OBJECT_FILES = ../static_object_files
ifeq ($(shell uname) , Darwin)
SHARED_EXT=dylib
SONAME_FLAGS=-dynamiclib -install_name
else
SHARED_EXT=so
SONAME_FLAGS= -shared -Wl,-soname
endif
.SILENT:
all: libfltkc.a libfltkcdyn.$(SHARED_EXT)
.SUFFIXES: .cpp .o
.cpp.o:
test -d $(STATIC_OBJECT_FILES) || mkdir $(STATIC_OBJECT_FILES)
test -d $(SHARED_OBJECT_FILES) || mkdir $(SHARED_OBJECT_FILES)
@echo "*** Compiling $<..."
$(CXXSTATIC) -c -fPIC $^ -o $(STATIC_OBJECT_FILES)/$@
$(CXXSHARED) -c -fPIC $^ -o $(SHARED_OBJECT_FILES)/$@
libfltkc.a : $(OBJECTS)
test -d $(LIBDIR) || mkdir $(LIBDIR)
@echo "*** Linking $@..."
(cd $(STATIC_OBJECT_FILES); \
ar rcs $(LIBDIR)/$@ $^;)
libfltkcdyn.so : $(OBJECTS)
test -d $(LIBDIR) || mkdir $(LIBDIR)
@echo "*** Linking $@..."
(cd $(SHARED_OBJECT_FILES); \
$(CXX) $(SONAME_FLAGS),$(LIBDIR)/$@ -o $(LIBDIR)/$@ $^);
libfltkcdyn.dylib: $(OBJECTS)
@echo "*** Not linking $@ because of bugs in ./c-src/Makefile.in, help appreciated."
clean:
test -d $(LIBDIR) && rm -rf $(LIBDIR)
test -d $(SHARED_OBJECT_FILES) && rm -rf $(SHARED_OBJECT_FILES)
test -d $(STATIC_OBJECT_FILES) && rm -rf $(STATIC_OBJECT_FILES)