summaryrefslogtreecommitdiff
path: root/cad/openctm/files/patch-tools_Makefile.linux
blob: dfae2b78531cf1b0068309f118a83f483131bba9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
--- tools/Makefile.linux.orig	2020-03-15 00:26:34 UTC
+++ tools/Makefile.linux
@@ -25,50 +25,57 @@
 #     distribution.
 ###############################################################################
 
+LOCALBASE = %%LOCALBASE%%
 OPENCTMDIR = ../lib
-GLEWDIR = glew
-JPEGDIR = jpeg
+#GLEWDIR = glew
+GLEWDIR = $(LOCALBASE)/include/GL
+#JPEGDIR = jpeg
 RPLYDIR = rply
-TINYXMLDIR = tinyxml
-ZLIBDIR = zlib
-PNGLITEDIR = pnglite
+#TINYXMLDIR = tinyxml
+#ZLIBDIR = zlib
+#PNGLITEDIR = pnglite
 
-CPP = g++
-CPPFLAGS = -c -O3 -W -Wall `pkg-config --cflags gtk+-2.0` -I$(OPENCTMDIR) -I$(RPLYDIR) -I$(JPEGDIR) -I$(TINYXMLDIR) -I$(GLEWDIR) -I$(ZLIBDIR) -I$(PNGLITEDIR)
+CC ?= cc
+CXX ?= c++
+CPP = ${CXX}
+CPPFLAGS += -W -Wall `pkg-config --cflags gtk+-2.0` -I$(OPENCTMDIR) -I$(RPLYDIR) -I$(GLEWDIR) -I$(LOCALBASE)/include
 
 MESHOBJS = mesh.o meshio.o ctm.o ply.o rply.o stl.o 3ds.o dae.o obj.o lwo.o off.o wrl.o
 CTMCONVOBJS = ctmconv.o common.o systimer.o convoptions.o $(MESHOBJS)
-CTMVIEWEROBJS = ctmviewer.o common.o image.o systimer.o sysdialog_gtk.o convoptions.o glew.o pnglite.o $(MESHOBJS)
+CTMVIEWEROBJS = ctmviewer.o common.o image.o systimer.o sysdialog_gtk.o convoptions.o $(MESHOBJS)
 CTMBENCHOBJS = ctmbench.o systimer.o
 
 all: ctmconv ctmviewer ctmbench
 
 clean:
 	rm -f ctmconv ctmviewer ctmbench $(CTMCONVOBJS) $(CTMVIEWEROBJS) $(CTMBENCHOBJS) bin2c phong_frag.h phong_vert.h
-	cd $(JPEGDIR) && $(MAKE) -f makefile.linux clean
-	cd $(TINYXMLDIR) && $(MAKE) -f Makefile.linux clean
-	cd $(ZLIBDIR) && $(MAKE) -f Makefile.linux clean
+#	cd $(JPEGDIR) && $(MAKE) -f makefile.linux clean
+#	cd $(TINYXMLDIR) && $(MAKE) -f Makefile.linux clean
+#	cd $(ZLIBDIR) && $(MAKE) -f Makefile.linux clean
 
-libopenctm.so: $(OPENCTMDIR)/libopenctm.so
-	cp $< $@
+#libopenctm.so: $(OPENCTMDIR)/libopenctm.so
+#	cp $< $@
 
-ctmconv: $(CTMCONVOBJS) $(TINYXMLDIR)/libtinyxml.a libopenctm.so
-	$(CPP) -s -o $@ -L$(OPENCTMDIR) -L$(TINYXMLDIR) $(CTMCONVOBJS) -Wl,-rpath,. -lopenctm -ltinyxml
+ctmconv: $(CTMCONVOBJS)
+	$(CPP) $(LDFLAGS) -s -o $@ -L$(OPENCTMDIR) $(CTMCONVOBJS) -lopenctm \
+	-L$(LOCALBASE)/lib -ltinyxml
 
-ctmviewer: $(CTMVIEWEROBJS) $(JPEGDIR)/libjpeg.a $(TINYXMLDIR)/libtinyxml.a $(ZLIBDIR)/libz.a libopenctm.so
-	$(CPP) -s -o $@ -L$(OPENCTMDIR) -L$(TINYXMLDIR) -L$(JPEGDIR) -L$(ZLIBDIR) $(CTMVIEWEROBJS) -Wl,-rpath,. -lopenctm -ltinyxml -ljpeg -lz -lglut `pkg-config --libs gtk+-2.0`
+ctmviewer: $(CTMVIEWEROBJS)
+	$(CPP) $(LDFLAGS) -s -o $@ -L$(OPENCTMDIR) -L$(LOCALBASE)/lib \
+	$(CTMVIEWEROBJS) -lopenctm -ltinyxml -ljpeg -lz -lglut -lGL -lGLU -lGLEW \
+	-lpnglite `pkg-config --libs gtk+-2.0`
 
-ctmbench: $(CTMBENCHOBJS) libopenctm.so
-	$(CPP) -s -o $@ -L$(OPENCTMDIR) $(CTMBENCHOBJS) -Wl,-rpath,. -lopenctm
+ctmbench: $(CTMBENCHOBJS)
+	$(CPP) $(LDFLAGS) -s -o $@ -L$(OPENCTMDIR) $(CTMBENCHOBJS) -lopenctm
 
 %.o: %.cpp
-	$(CPP) $(CPPFLAGS) -o $@ $<
+	$(CPP) $(CPPFLAGS) -c -o $@ $<
 
 ctmconv.o: ctmconv.cpp systimer.h convoptions.h mesh.h meshio.h
 ctmviewer.o: ctmviewer.cpp common.h image.h systimer.h sysdialog.h mesh.h meshio.h phong_vert.h phong_frag.h icons/icon_open.h icons/icon_save.h icons/icon_help.h
 ctmbench.o: ctmbench.cpp systimer.h
 common.o: common.cpp common.h
-image.o: image.cpp image.h common.h $(JPEGDIR)/libjpeg.a
+image.o: image.cpp image.h common.h
 systimer.o: systimer.cpp systimer.h
 sysdialog_gtk.o: sysdialog_gtk.cpp sysdialog.h
 convoptions.o: convoptions.cpp convoptions.h
@@ -93,20 +100,20 @@ phong_frag.h: phong.frag bin2c
 bin2c: bin2c.cpp
 	$(CPP) -Os -W -Wall -o $@ $<
 
-$(JPEGDIR)/libjpeg.a:
-	cd $(JPEGDIR) && $(MAKE) -f makefile.linux libjpeg.a
+#$(JPEGDIR)/libjpeg.a:
+#	cd $(JPEGDIR) && $(MAKE) -f makefile.linux libjpeg.a
+#
+#$(ZLIBDIR)/libz.a:
+#	cd $(ZLIBDIR) && $(MAKE) -f Makefile.linux
+#
+#glew.o: $(GLEWDIR)/glew.c
+#	${CC} -c -Os -W -I$(GLEWDIR) -o $@ $<
 
-$(ZLIBDIR)/libz.a:
-	cd $(ZLIBDIR) && $(MAKE) -f Makefile.linux
-
-glew.o: $(GLEWDIR)/glew.c
-	gcc -c -Os -W -I$(GLEWDIR) -o $@ $<
-
 rply.o: $(RPLYDIR)/rply.c
-	gcc -c -O2 -W -I$(RPLYDIR) -o $@ $<
+	${CC} -c -O2 -W -I$(RPLYDIR) -o $@ $<
 
-pnglite.o: $(PNGLITEDIR)/pnglite.c
-	gcc -c -O2 -W -I$(PNGLITEDIR) -o $@ $<
-
-$(TINYXMLDIR)/libtinyxml.a:
-	cd $(TINYXMLDIR) && $(MAKE) -f Makefile.linux
+#pnglite.o: $(PNGLITEDIR)/pnglite.c
+#	${CC} -c -O2 -W -I$(PNGLITEDIR) -o $@ $<
+#
+#$(TINYXMLDIR)/libtinyxml.a:
+#	cd $(TINYXMLDIR) && $(MAKE) -f Makefile.linux