mirror of https://github.com/BOINC/boinc.git
89 lines
2.7 KiB
Makefile
89 lines
2.7 KiB
Makefile
# This should work on Linux. Modify as needed for other platforms.
|
|
|
|
BOINC_DIR = ../..
|
|
BOINC_API_DIR = $(BOINC_DIR)/api
|
|
BOINC_LIB_DIR = $(BOINC_DIR)/lib
|
|
BOINC_ZIP_DIR = $(BOINC_DIR)/zip
|
|
FREETYPE_DIR = /usr/include/freetype2
|
|
|
|
CXXFLAGS += -g \
|
|
-Wall -W -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -fno-common \
|
|
-DAPP_GRAPHICS \
|
|
-I$(BOINC_DIR) \
|
|
-I$(BOINC_LIB_DIR) \
|
|
-I$(BOINC_API_DIR) \
|
|
-I$(BOINC_ZIP_DIR) \
|
|
-I$(FREETYPE_DIR) \
|
|
-L /usr/X11R6/lib \
|
|
-L.
|
|
|
|
# to get the graphics app to compile you may need to install some packages
|
|
# e.g. ftgl-devel.x86_64
|
|
#
|
|
# You may have to change the paths for your system.
|
|
|
|
ifeq ($(wildcard /usr/local/lib/libglut.a),)
|
|
LIBGLUT = /usr/local/lib/libglut.a
|
|
LIBGLU = /usr/local/lib/libGLU.a
|
|
LIBJPEG = /usr/local/lib/libjpeg.a
|
|
else
|
|
# NOTE: to make your app portable you'll need the static (.a) versions
|
|
# of libglut, libGLU, and libjpeg.
|
|
# You may have to build these from source.
|
|
#LIBGLUT = /usr/lib64/libglut.a
|
|
#LIBGLU = /usr/lib64/libGLU.a
|
|
#LIBJPEG = /usr/lib64/libjpeg.a
|
|
LIBGLUT = -lglut
|
|
LIBGLU = -lGLU
|
|
LIBJPEG = -ljpeg
|
|
endif
|
|
|
|
PROGS = uc2 ucn \
|
|
# uc2_graphics
|
|
# make this optional so compile doesn't break on systems without OpenGL
|
|
|
|
all: $(PROGS)
|
|
|
|
libstdc++.a:
|
|
ln -s `g++ -print-file-name=libstdc++.a`
|
|
|
|
ttfont.cpp:
|
|
ln -s ../../api/ttfont.cpp .
|
|
|
|
clean: distclean
|
|
|
|
distclean:
|
|
/bin/rm -f $(PROGS) *.o libstdc++.a
|
|
|
|
install: uc2
|
|
|
|
# specify library paths explicitly (rather than -l)
|
|
# because otherwise you might get a version in /usr/lib etc.
|
|
|
|
uc2: uc2.o libstdc++.a $(BOINC_API_DIR)/libboinc_api.a $(BOINC_LIB_DIR)/libboinc.a
|
|
$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -o uc2 uc2.o libstdc++.a -pthread \
|
|
$(BOINC_API_DIR)/libboinc_api.a \
|
|
$(BOINC_LIB_DIR)/libboinc.a
|
|
|
|
ucn: ucn.o libstdc++.a $(BOINC_API_DIR)/libboinc_api.a $(BOINC_LIB_DIR)/libboinc.a
|
|
$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -o ucn ucn.o libstdc++.a -pthread \
|
|
$(BOINC_API_DIR)/libboinc_api.a \
|
|
$(BOINC_LIB_DIR)/libboinc.a
|
|
|
|
uc2_graphics: uc2_graphics.o ttfont.o libstdc++.a $(BOINC_LIB_DIR)/libboinc.a $(BOINC_API_DIR)/libboinc_graphics2.a
|
|
$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -o uc2_graphics uc2_graphics.o ttfont.o libstdc++.a -pthread \
|
|
$(BOINC_API_DIR)/libboinc_graphics2.a \
|
|
$(BOINC_API_DIR)/libboinc_api.a \
|
|
$(BOINC_LIB_DIR)/libboinc.a \
|
|
$(LIBGLUT) $(LIBGLU) $(LIBJPEG) \
|
|
-lftgl -lGL -lX11 -lXmu -lm
|
|
|
|
slide_show: slide_show.o libstdc++.a $(BOINC_LIB_DIR)/libboinc.a $(BOINC_API_DIR)/libboinc_graphics2.a
|
|
$(CXX) $(CXXFLAGS) -o slide_show slide_show.o libstdc++.a -pthread \
|
|
$(BOINC_API_DIR)/libboinc_graphics2.a \
|
|
$(BOINC_API_DIR)/libboinc_api.a \
|
|
$(BOINC_LIB_DIR)/libboinc.a \
|
|
$(BOINC_ZIP_DIR)/libboinc_zip.a \
|
|
$(LIBGLUT) $(LIBGLU) $(LIBJPEG) \
|
|
-lGL -lX11 -lXmu -lm
|