Skip to content

Commit e62d9a7

Browse files
committed
CMAKE compatibility
1 parent e5bb4fa commit e62d9a7

File tree

3 files changed

+253
-0
lines changed

3 files changed

+253
-0
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
*.avi
2+
.idea
3+
cmake-build-debug/
4+
build/
5+
**/*.o
26
*.mpg
37
*.mkv
48
*.mp4

CMakeLists.txt

Lines changed: 228 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,228 @@
1+
cmake_minimum_required(VERSION 3.13)
2+
project(gource)
3+
4+
set(CMAKE_CXX_STANDARD 14)
5+
6+
include_directories(.)
7+
include_directories(src)
8+
include_directories(src/core)
9+
include_directories(src/core/ftgl)
10+
include_directories(src/core/ui)
11+
include_directories(src/core/utf8)
12+
include_directories(src/formats)
13+
include_directories(src/tinyxml)
14+
include_directories(/usr/local/include/libpng16)
15+
include_directories(/usr/local/include/SDL2)
16+
include_directories(/usr/local/include)
17+
include_directories(/usr/local/Cellar/glew/2.1.0/include)
18+
include_directories(/usr/local/opt/freetype/include/freetype2)
19+
20+
link_directories(/usr/local/lib)
21+
22+
add_executable(gource
23+
src/core/ftgl/FTUnicode.h
24+
src/core/ui/action.h
25+
src/core/ui/button.cpp
26+
src/core/ui/button.h
27+
src/core/ui/checkbox.cpp
28+
src/core/ui/checkbox.h
29+
src/core/ui/colour.cpp
30+
src/core/ui/colour.h
31+
src/core/ui/console.cpp
32+
src/core/ui/console.h
33+
src/core/ui/element.cpp
34+
src/core/ui/element.h
35+
src/core/ui/file_selector.cpp
36+
src/core/ui/file_selector.h
37+
src/core/ui/group.cpp
38+
src/core/ui/group.h
39+
src/core/ui/image.cpp
40+
src/core/ui/image.h
41+
src/core/ui/label.cpp
42+
src/core/ui/label.h
43+
src/core/ui/layout.cpp
44+
src/core/ui/layout.h
45+
src/core/ui/scroll_bar.cpp
46+
src/core/ui/scroll_bar.h
47+
src/core/ui/scroll_layout.cpp
48+
src/core/ui/scroll_layout.h
49+
src/core/ui/select.cpp
50+
src/core/ui/select.h
51+
src/core/ui/slider.cpp
52+
src/core/ui/slider.h
53+
src/core/ui/solid_layout.cpp
54+
src/core/ui/solid_layout.h
55+
src/core/ui/subgroup.cpp
56+
src/core/ui/subgroup.h
57+
src/core/ui/ui.cpp
58+
src/core/ui/ui.h
59+
src/core/utf8/checked.h
60+
src/core/utf8/core.h
61+
src/core/utf8/unchecked.h
62+
src/core/utf8/utf8.h
63+
src/core/bounds.h
64+
src/core/conffile.cpp
65+
src/core/conffile.h
66+
src/core/display.cpp
67+
src/core/display.h
68+
src/core/frustum.cpp
69+
src/core/frustum.h
70+
src/core/fxfont.cpp
71+
src/core/fxfont.h
72+
src/core/gl.h
73+
src/core/logger.cpp
74+
src/core/logger.h
75+
src/core/mousecursor.cpp
76+
src/core/mousecursor.h
77+
src/core/pi.h
78+
src/core/plane.cpp
79+
src/core/plane.h
80+
src/core/png_writer.cpp
81+
src/core/png_writer.h
82+
src/core/ppm.cpp
83+
src/core/ppm.h
84+
src/core/quadtree.cpp
85+
src/core/quadtree.h
86+
src/core/regex.cpp
87+
src/core/regex.h
88+
src/core/resource.cpp
89+
src/core/resource.h
90+
src/core/sdlapp.cpp
91+
src/core/sdlapp.h
92+
src/core/seeklog.cpp
93+
src/core/seeklog.h
94+
src/core/settings.cpp
95+
src/core/settings.h
96+
src/core/shader.cpp
97+
src/core/shader.h
98+
src/core/shader.hh
99+
src/core/shader_common.cpp
100+
src/core/shader_common.h
101+
src/core/stringhash.cpp
102+
src/core/stringhash.h
103+
src/core/texture.cpp
104+
src/core/texture.h
105+
src/core/tga.cpp
106+
src/core/tga.h
107+
src/core/timer.cpp
108+
src/core/timer.h
109+
src/core/timezone.cpp
110+
src/core/timezone.h
111+
src/core/vbo.cpp
112+
src/core/vbo.h
113+
src/core/vectors.cpp
114+
src/core/vectors.h
115+
src/formats/apache.cpp
116+
src/formats/apache.h
117+
src/formats/bzr.cpp
118+
src/formats/bzr.h
119+
src/formats/commitlog.cpp
120+
src/formats/commitlog.h
121+
src/formats/custom.cpp
122+
src/formats/custom.h
123+
src/formats/cvs-exp.cpp
124+
src/formats/cvs-exp.h
125+
src/formats/cvs2cl.cpp
126+
src/formats/cvs2cl.h
127+
src/formats/git.cpp
128+
src/formats/git.h
129+
src/formats/gitraw.cpp
130+
src/formats/gitraw.h
131+
src/formats/hg.cpp
132+
src/formats/hg.h
133+
src/formats/svn.cpp
134+
src/formats/svn.h
135+
src/tinyxml/tinystr.cpp
136+
src/tinyxml/tinystr.h
137+
src/tinyxml/tinyxml.cpp
138+
src/tinyxml/tinyxml.h
139+
src/tinyxml/tinyxmlerror.cpp
140+
src/tinyxml/tinyxmlparser.cpp
141+
src/action.cpp
142+
src/action.h
143+
src/bloom.cpp
144+
src/bloom.h
145+
src/caption.cpp
146+
src/caption.h
147+
src/dirnode.cpp
148+
src/dirnode.h
149+
src/file.cpp
150+
src/file.h
151+
src/gource.cpp
152+
src/gource.h
153+
src/gource_settings.cpp
154+
src/gource_settings.h
155+
src/gource_shell.cpp
156+
src/gource_shell.h
157+
src/key.cpp
158+
src/key.h
159+
src/logmill.cpp
160+
src/logmill.h
161+
src/main.cpp
162+
src/main.h
163+
src/pawn.cpp
164+
src/pawn.h
165+
src/slider.cpp
166+
src/slider.h
167+
src/spline.cpp
168+
src/spline.h
169+
src/textbox.cpp
170+
src/textbox.h
171+
src/user.cpp
172+
src/user.h
173+
src/zoomcamera.cpp
174+
src/zoomcamera.h
175+
"tests/images/Árvíztűrő tükörfúrógép.png"
176+
tests/logs/custom-dir-delete.log
177+
tests/logs/file-removal.log
178+
tests/logs/file-to-dir.log
179+
tests/logs/svn-dir-delete.log
180+
tests/logs/utf8-caption.log
181+
tests/logs/utf8.log
182+
tests/test.conf
183+
aclocal.m4
184+
autogen.sh
185+
ChangeLog
186+
config.log
187+
config.status
188+
configure
189+
configure.ac
190+
COPYING
191+
gource.pro
192+
INSTALL
193+
Makefile
194+
Makefile.am
195+
Makefile.in
196+
README
197+
THANKS)
198+
199+
target_link_libraries(gource
200+
stdc++
201+
"-framework Foundation"
202+
"-framework CoreFoundation"
203+
"-framework OpenGL"
204+
"-framework Cocoa"
205+
"-framework CoreVideo"
206+
"-framework CoreAudio"
207+
"-framework ForceFeedback"
208+
"-framework AudioToolbox"
209+
"-framework IOKit"
210+
"-framework Carbon"
211+
"-framework Metal"
212+
/usr/local/opt/freetype/lib/libfreetype.a
213+
/usr/local/lib/libSDL2_image.a
214+
/usr/local/lib/libSDL2.dylib
215+
/usr/local/lib/libjpeg.a
216+
/usr/local/lib/libGLEW.a
217+
/usr/local/lib/libpcre32.dylib
218+
/usr/local/lib/libpng.dylib
219+
/usr/local/lib/libboost_system.a
220+
/usr/local/lib/libboost_filesystem.a
221+
/usr/local/lib/libtiff.a
222+
/usr/local/lib/libfreeimage.dylib
223+
/usr/lib/libbz2.dylib
224+
/usr/lib/libz.dylib
225+
/usr/local/lib/libpcre.dylib
226+
objc)
227+
228+
#LIBS = -L/usr/local/lib

README

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,27 @@ directories.
3131
Gource's display is rendered using OpenGL and requires a 3D accelerated video
3232
card to run.
3333

34+
2.1 Build requirements for Mac
35+
------------------------------
36+
37+
Install dependencies:
38+
39+
brew install autoconf automake freetype glew sdl2 sdl2_image boost glm pcre freeimage
40+
41+
Prepare the build:
42+
./autogen.sh
43+
./configure
44+
45+
Build with make:
46+
make
47+
Build with CMake:
48+
mkdir build
49+
cd build
50+
cmake ..
51+
make
52+
cp -R ../data data
53+
./gource
54+
3455
3. Using Gource
3556
===============
3657

0 commit comments

Comments
 (0)