games/golly:

- Update to 2.7
- Install everything to DATADIR and provide wrapper script to start golly
This commit is contained in:
Max Brazhnikov 2015-06-10 09:25:32 +00:00
parent 34746c0e01
commit bc6c6e0214
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=389026
9 changed files with 90 additions and 183 deletions

View File

@ -1,9 +1,8 @@
# $FreeBSD$
PORTNAME= golly
PORTVERSION= 2.4
PORTVERSION= 2.7
DISTVERSIONSUFFIX= -src
PORTREVISION= 3
CATEGORIES= games
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION}
@ -15,7 +14,14 @@ USE_CXXSTD= c++11
USE_WX= 3.0
WX_UNICODE= yes
CMAKE_SOURCE_PATH= ${WRKSRC}/gui-wx
DESKTOP_ENTRIES= "Golly" "${COMMENT}" "${PREFIX}/share/pixmaps/golly.xpm" \
"${PREFIX}/bin/golly" "Education;" "true"
SUB_FILES= golly
post-install:
${INSTALL_SCRIPT} ${WRKDIR}/golly ${STAGEDIR}/${PREFIX}/bin
.include <bsd.port.mk>

View File

@ -1,2 +1,2 @@
SHA256 (golly-2.4-src.tar.gz) = 3c51ab00f1f36f30570a84b1ae24590dcbe59231815de31d2798e01440956a1b
SIZE (golly-2.4-src.tar.gz) = 2613548
SHA256 (golly-2.7-src.tar.gz) = 9af30afd7b03b3eebcfaec088d67c495609aef72516d9ca8f076b62f32b5e17b
SIZE (golly-2.7-src.tar.gz) = 3881882

View File

@ -0,0 +1,2 @@
#!/bin/sh
cd %%PREFIX%%/share/golly && ./golly $@

View File

@ -1,23 +1,26 @@
--- ./CMakeLists.txt.orig 2012-06-29 21:54:59.000000000 +0000
+++ ./CMakeLists.txt 2012-12-31 11:43:49.541995237 +0000
@@ -92,7 +92,9 @@
--- gui-wx/CMakeLists.txt.orig 2015-05-11 19:32:36 UTC
+++ gui-wx/CMakeLists.txt
@@ -116,7 +116,8 @@ if(APPLE)
endif()
if(APPLE OR UNIX)
# use same settings as in makefiles
- add_definitions(-D_LARGE_FILES -O5)
+ add_definitions(-D_LARGE_FILES -DPYTHON_SHLIB=${PYTHON_LIBRARY}
+ -DPERL_SHLIB=${PERL_LIBRARY}
+ -DDATADIR="${CMAKE_INSTALL_PREFIX}/share/golly/" )
+ -DPERL_SHLIB=${PERL_LIBRARY} )
endif()
# workaround for wx2.9.3 wxAssert link errors, see http://trac.wxwidgets.org/ticket/12626
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DwxDEBUG_LEVEL=0")
@@ -176,3 +178,9 @@
target_link_libraries( bgolly ${VLD_LIBRARIES} )
target_link_libraries( RuleTableToTree ${VLD_LIBRARIES} )
endif()
+
@@ -153,6 +154,13 @@ add_executable( bgolly
target_link_libraries( ${APP_NAME} gollybase ${wxWidgets_LIBRARIES} ${ZLIB_LIBRARIES} )
target_link_libraries( bgolly gollybase ${ZLIB_LIBRARIES} )
+if (UNIX)
+ install(TARGETS ${APP_NAME} bgolly RuleTableToTree RUNTIME DESTINATION bin)
+ install(DIRECTORY Help Patterns Rules Scripts DESTINATION share/golly)
+ install(FILES appicon.xpm DESTINATION share/pixmaps RENAME golly.xpm)
+ install(TARGETS bgolly RUNTIME DESTINATION bin)
+ install(TARGETS ${APP_NAME} RUNTIME DESTINATION share/golly)
+ install(DIRECTORY ../Help ../Patterns ../Rules ../Scripts DESTINATION share/golly)
+ install(FILES icons/appicon.xpm DESTINATION share/pixmaps RENAME golly.xpm)
+endif()
+
if(APPLE)
# create Info.plist (using Info.plist.in) and PkgInfo files inside .app bundle
add_custom_target( app_bundle

View File

@ -1,11 +0,0 @@
--- ./wxhelp.cpp.orig 2012-06-12 18:04:43.000000000 +0000
+++ ./wxhelp.cpp 2012-12-31 11:51:52.148991743 +0000
@@ -1026,7 +1026,7 @@
} else if ( filepath.StartsWith(_("Help/")) ) {
// prepend location of Golly so user can open help while running a script
- wxString fullpath = gollydir + filepath;
+ wxString fullpath = wxString(DATADIR) + filepath;
LoadPage(fullpath);
} else {

View File

@ -1,11 +0,0 @@
--- ./wxmain.cpp.orig 2012-06-29 21:55:00.000000000 +0000
+++ ./wxmain.cpp 2012-12-31 11:54:05.974993147 +0000
@@ -933,7 +933,7 @@
treectrl->Expand(id);
// nicer to expand Perl & Python subdirs inside Scripts
- if ( dir == gollydir + _("Scripts") ) {
+ if ( dir == wxString(DATADIR) + _("Scripts") ) {
wxTreeItemId child;
wxTreeItemIdValue cookie;
child = treectrl->GetFirstChild(id, cookie);

View File

@ -1,30 +0,0 @@
--- ./wxprefs.cpp.orig 2012-06-29 21:55:00.000000000 +0000
+++ ./wxprefs.cpp 2012-12-31 11:36:29.488992923 +0000
@@ -1761,7 +1761,7 @@
InitPaths(); // init datadir, tempdir and prefspath
InitAlgorithms(); // init algoinfo data
- rulesdir = gollydir + wxT("Rules");
+ rulesdir = wxString(DATADIR) + wxT("Rules");
rulesdir += wxFILE_SEP_PATH;
userrules = datadir + wxT("Rules");
@@ -1770,12 +1770,12 @@
downloaddir = datadir + wxT("Downloads");
downloaddir += wxFILE_SEP_PATH;
- opensavedir = gollydir + PATT_DIR;
- rundir = gollydir + SCRIPT_DIR;
- icondir = gollydir;
- choosedir = gollydir;
- patterndir = gollydir + PATT_DIR;
- scriptdir = gollydir + SCRIPT_DIR;
+ opensavedir = wxString(DATADIR) + PATT_DIR;
+ rundir = wxString(DATADIR) + SCRIPT_DIR;
+ icondir = wxString(DATADIR);
+ choosedir = wxString(DATADIR);
+ patterndir = wxString(DATADIR) + PATT_DIR;
+ scriptdir = wxString(DATADIR) + SCRIPT_DIR;
// init the text editor to something reasonable
#ifdef __WXMSW__

View File

@ -1,11 +0,0 @@
--- ./wxpython.cpp.orig 2012-06-12 18:04:44.000000000 +0000
+++ ./wxpython.cpp 2012-12-31 11:36:29.542997130 +0000
@@ -3026,7 +3026,7 @@
// build absolute path to Scripts/Python folder and add to Python's
// import search list so scripts can import glife from anywhere
- wxString scriptsdir = gollydir + _("Scripts");
+ wxString scriptsdir = wxString(DATADIR) + _("Scripts");
scriptsdir += wxFILE_SEP_PATH;
scriptsdir += _("Python");
// convert any \ to \\ and then convert any ' to \'

View File

@ -1,12 +1,10 @@
bin/RuleTableToTree
bin/bgolly
bin/golly
share/golly/Help/Algorithms/Generations.html
share/golly/Help/Algorithms/HashLife.html
share/golly/Help/Algorithms/JvN.html
share/golly/Help/Algorithms/QuickLife.html
share/golly/Help/Algorithms/RuleTable.html
share/golly/Help/Algorithms/RuleTree.html
share/golly/Help/Algorithms/RuleLoader.html
share/golly/Help/Lexicon/lex.htm
share/golly/Help/Lexicon/lex_1.htm
share/golly/Help/Lexicon/lex_a.htm
@ -49,12 +47,10 @@ share/golly/Help/edit.html
share/golly/Help/file.html
share/golly/Help/formats.html
share/golly/Help/help.html
share/golly/Help/icon_format.bmp
share/golly/Help/index.html
share/golly/Help/intro.html
share/golly/Help/layer.html
share/golly/Help/mouse.html
share/golly/Help/multicolor.bmp
share/golly/Help/perl.html
share/golly/Help/problems.html
share/golly/Help/python.html
@ -104,6 +100,7 @@ share/golly/Patterns/Generations/SediMental.mcl
share/golly/Patterns/Generations/Steeplechase.mcl
share/golly/Patterns/Generations/Transers.mcl
share/golly/Patterns/Generations/What-a-mess.mcl
share/golly/Patterns/HashLife/Replicator-p237228340.mc.gz
share/golly/Patterns/HashLife/broken-lines.mc
share/golly/Patterns/HashLife/catacryst.mc
share/golly/Patterns/HashLife/gotts-dots.mc
@ -112,6 +109,7 @@ share/golly/Patterns/HashLife/hashlife-oddity2.mc
share/golly/Patterns/HashLife/hexadecimal.mc.gz
share/golly/Patterns/HashLife/jagged.mc
share/golly/Patterns/HashLife/jagged2.mc
share/golly/Patterns/HashLife/loafer-gun-p8388608-linear.mc.gz
share/golly/Patterns/HashLife/logarithmic-width.mc
share/golly/Patterns/HashLife/metacatacryst.mc
share/golly/Patterns/HashLife/metapixel-galaxy.mc.gz
@ -138,6 +136,7 @@ share/golly/Patterns/JvN/codon5-auto-retract.rle
share/golly/Patterns/JvN/construction-arm-demo.rle
share/golly/Patterns/JvN/counter-demo.rle
share/golly/Patterns/JvN/golly-constructor.rle
share/golly/Patterns/JvN/partial-constructor.mc.gz
share/golly/Patterns/JvN/read-arm-demo.rle
share/golly/Patterns/JvN/sphinx-midpoint.mc.gz
share/golly/Patterns/JvN/sphinx-spark.mc.gz
@ -181,6 +180,8 @@ share/golly/Patterns/Life/Guns/7-in-a-row-Cordership-V-gun.rle
share/golly/Patterns/Life/Guns/Cordership-gun-p784.rle
share/golly/Patterns/Life/Guns/golly-ticker.rle
share/golly/Patterns/Life/Guns/gun-p165mwss.rle
share/golly/Patterns/Life/Guns/loafer-gun-p210.rle
share/golly/Patterns/Life/Guns/p59-gun-with-Snark-reflectors.rle
share/golly/Patterns/Life/Guns/p690-PT-Cordership-gun.rle
share/golly/Patterns/Life/Guns/pseudo-p34-gun.rle
share/golly/Patterns/Life/Guns/vacuum-cleaner.rle
@ -354,111 +355,64 @@ share/golly/Patterns/WireWorld/gate-XOR.mcl
share/golly/Patterns/WireWorld/memory-cell.mcl
share/golly/Patterns/WireWorld/primes.mc
share/golly/Patterns/WireWorld/unary-multiplier.mcl
share/golly/Rules/AbsoluteTurmite_0N21S10E00S01W11N2.icons
share/golly/Rules/AbsoluteTurmite_0N21S10E00S01W11N2.tree
share/golly/Rules/AbsoluteTurmite_0S11W11E21S21W00N0.icons
share/golly/Rules/AbsoluteTurmite_0S11W11E21S21W00N0.tree
share/golly/Rules/AbsoluteTurmite_1N10S11S30N21W01N11S20E1.icons
share/golly/Rules/AbsoluteTurmite_1N10S11S30N21W01N11S20E1.tree
share/golly/Rules/BBM-Margolus-emulated.colors
share/golly/Rules/BBM-Margolus-emulated.tree
share/golly/Rules/Banks-I.table
share/golly/Rules/Banks-II.colors
share/golly/Rules/Banks-II.table
share/golly/Rules/Banks-III.table
share/golly/Rules/Banks-IV.table
share/golly/Rules/BriansBrain.tree
share/golly/Rules/Byl-Loop.colors
share/golly/Rules/Byl-Loop.table
share/golly/Rules/Byl-Loop.tree
share/golly/Rules/Caterpillars.tree
share/golly/Rules/Chou-Reggia-1.table
share/golly/Rules/Chou-Reggia-1.tree
share/golly/Rules/Chou-Reggia-2.table
share/golly/Rules/Chou-Reggia-2.tree
share/golly/Rules/Chou-Reggia.colors
share/golly/Rules/Codd.colors
share/golly/Rules/Codd.table
share/golly/Rules/Codd2.colors
share/golly/Rules/Codd2.table
share/golly/Rules/CrittersMargolus_emulated.colors
share/golly/Rules/CrittersMargolus_emulated.tree
share/golly/Rules/DLA-Margolus-emulated.colors
share/golly/Rules/DLA-Margolus-emulated.tree
share/golly/Rules/Devore.colors
share/golly/Rules/Devore.table
share/golly/Rules/Ed-rep.colors
share/golly/Rules/Ed-rep.tree
share/golly/Rules/Evoloop-finite.table
share/golly/Rules/Evoloop.colors
share/golly/Rules/Evoloop.table
share/golly/Rules/Evoloop.tree
share/golly/Rules/HPP.colors
share/golly/Rules/HPP.icons
share/golly/Rules/HPP.table
share/golly/Rules/HPPMargolus_emulated.colors
share/golly/Rules/HPPMargolus_emulated.tree
share/golly/Rules/Langtons-Ant.colors
share/golly/Rules/Langtons-Ant.icons
share/golly/Rules/Langtons-Ant.tree
share/golly/Rules/Langtons-Loops.colors
share/golly/Rules/Langtons-Loops.table
share/golly/Rules/Langtons-Loops.tree
share/golly/Rules/LangtonsAnt_LLRR.icons
share/golly/Rules/LangtonsAnt_LLRR.tree
share/golly/Rules/Life.tree
share/golly/Rules/LifeHistory.colors
share/golly/Rules/LifeHistory.icons
share/golly/Rules/LifeHistory.table
share/golly/Rules/LifeOnTheEdge.icons
share/golly/Rules/LifeOnTheEdge.tree
share/golly/Rules/LifeOnTheSlope.colors
share/golly/Rules/LifeOnTheSlope.icons
share/golly/Rules/LifeOnTheSlope.tree
share/golly/Rules/Perrier.colors
share/golly/Rules/Perrier.table
share/golly/Rules/SDSR-Loop.colors
share/golly/Rules/SDSR-Loop.table
share/golly/Rules/SDSR-Loop.tree
share/golly/Rules/Sand-Margolus-emulated.colors
share/golly/Rules/Sand-Margolus-emulated.tree
share/golly/Rules/Sand-square4cyclic_emulated.colors
share/golly/Rules/Sand-square4cyclic_emulated.tree
share/golly/Rules/StarWars.tree
share/golly/Rules/TMGasMargolus_emulated.colors
share/golly/Rules/TMGasMargolus_emulated.tree
share/golly/Rules/AbsoluteTurmite_0N21S10E00S01W11N2.rule
share/golly/Rules/AbsoluteTurmite_0S11W11E21S21W00N0.rule
share/golly/Rules/AbsoluteTurmite_1N10S11S30N21W01N11S20E1.rule
share/golly/Rules/BBM-Margolus-emulated.rule
share/golly/Rules/Banks-I.rule
share/golly/Rules/Banks-II.rule
share/golly/Rules/Banks-III.rule
share/golly/Rules/Banks-IV.rule
share/golly/Rules/BriansBrain.rule
share/golly/Rules/Byl-Loop.rule
share/golly/Rules/Caterpillars.rule
share/golly/Rules/Chou-Reggia-1.rule
share/golly/Rules/Chou-Reggia-2.rule
share/golly/Rules/Codd.rule
share/golly/Rules/Codd2.rule
share/golly/Rules/CrittersMargolus_emulated.rule
share/golly/Rules/DLA-Margolus-emulated.rule
share/golly/Rules/Devore.rule
share/golly/Rules/Ed-rep.rule
share/golly/Rules/Evoloop-finite.rule
share/golly/Rules/Evoloop.rule
share/golly/Rules/HPP.rule
share/golly/Rules/HPPMargolus_emulated.rule
share/golly/Rules/Langtons-Ant.rule
share/golly/Rules/Langtons-Loops.rule
share/golly/Rules/LangtonsAnt_LLRR.rule
share/golly/Rules/Life.rule
share/golly/Rules/LifeHistory.rule
share/golly/Rules/LifeOnTheEdge.rule
share/golly/Rules/LifeOnTheSlope.rule
share/golly/Rules/Perrier.rule
share/golly/Rules/SDSR-Loop.rule
share/golly/Rules/Sand-Margolus-emulated.rule
share/golly/Rules/Sand-square4cyclic_emulated.rule
share/golly/Rules/StarWars.rule
share/golly/Rules/TMGasMargolus_emulated.rule
share/golly/Rules/TableGenerators/make-ruletable.cpp
share/golly/Rules/Tempesti.colors
share/golly/Rules/Tempesti.table
share/golly/Rules/Tempesti.rule
share/golly/Rules/TreeGenerators/LifeOnTheEdge.cpp
share/golly/Rules/TreeGenerators/LifeOnTheSlope.cpp
share/golly/Rules/TreeGenerators/RuleTreeGen.cpp
share/golly/Rules/TreeGenerators/RuleTreeGen.java
share/golly/Rules/TreeGenerators/RuleTreeGen.pl
share/golly/Rules/TreeGenerators/RuleTreeGen.py
share/golly/Rules/TriTurmite_120010.icons
share/golly/Rules/TriTurmite_120010.tree
share/golly/Rules/TripATronMargolus_emulated.colors
share/golly/Rules/TripATronMargolus_emulated.tree
share/golly/Rules/Turmite_1202822111121111812a0281282.icons
share/golly/Rules/Turmite_1202822111121111812a0281282.tree
share/golly/Rules/Turmite_121181121020.icons
share/golly/Rules/Turmite_121181121020.tree
share/golly/Rules/Turmite_180121020081.icons
share/golly/Rules/Turmite_180121020081.tree
share/golly/Rules/Turmite_181181121010.icons
share/golly/Rules/Turmite_181181121010.tree
share/golly/Rules/WireWorld.colors
share/golly/Rules/WireWorld.icons
share/golly/Rules/WireWorld.table
share/golly/Rules/WireWorld.tree
share/golly/Rules/Worm-1040512.table
share/golly/Rules/Worm-1042015.table
share/golly/Rules/Worm-1042020.table
share/golly/Rules/Worm-1252121.table
share/golly/Rules/Worm-1525115.table
share/golly/Rules/Worm-complement.table
share/golly/Rules/Worm.icons
share/golly/Rules/TriTurmite_120010.rule
share/golly/Rules/TripATronMargolus_emulated.rule
share/golly/Rules/Turmite_1202822111121111812a0281282.rule
share/golly/Rules/Turmite_121181121020.rule
share/golly/Rules/Turmite_180121020081.rule
share/golly/Rules/Turmite_181181121010.rule
share/golly/Rules/WireWorld.rule
share/golly/Rules/Worm-1040512.rule
share/golly/Rules/Worm-1042015.rule
share/golly/Rules/Worm-1042020.rule
share/golly/Rules/Worm-1252121.rule
share/golly/Rules/Worm-1525115.rule
share/golly/Rules/Worm-complement.rule
share/golly/Rules/Worm-shared.rule
share/golly/Scripts/Perl/density.pl
share/golly/Scripts/Perl/envelope.pl
share/golly/Scripts/Perl/giffer.pl
@ -482,12 +436,15 @@ share/golly/Scripts/Python/Rule-Generators/Langtons-Ant-gen.py
share/golly/Scripts/Python/Rule-Generators/RuleTableToTree.py
share/golly/Scripts/Python/Rule-Generators/TriTurmite-gen.py
share/golly/Scripts/Python/Rule-Generators/Turmite-gen.py
share/golly/Scripts/Python/Rule-Generators/icon-exporter.py
share/golly/Scripts/Python/Rule-Generators/icon-importer.py
share/golly/Scripts/Python/Rule-Generators/make-ruletree.py
share/golly/Scripts/Python/bricklayer.py
share/golly/Scripts/Python/density.py
share/golly/Scripts/Python/draw-lines.py
share/golly/Scripts/Python/envelope.py
share/golly/Scripts/Python/flood-fill.py
share/golly/Scripts/Python/glife/BuiltinIcons.py
share/golly/Scripts/Python/glife/EmulateHexagonal.py
share/golly/Scripts/Python/glife/EmulateMargolus.py
share/golly/Scripts/Python/glife/EmulateOneDimensional.py
@ -505,6 +462,7 @@ share/golly/Scripts/Python/glife/gun46.py
share/golly/Scripts/Python/glife/herschel.py
share/golly/Scripts/Python/glife/text.py
share/golly/Scripts/Python/goto.py
share/golly/Scripts/Python/goto_expression.py
share/golly/Scripts/Python/gun-demo.py
share/golly/Scripts/Python/heisenburp.py
share/golly/Scripts/Python/invert.py
@ -524,4 +482,5 @@ share/golly/Scripts/Python/shift.py
share/golly/Scripts/Python/slide-show.py
share/golly/Scripts/Python/tile-with-clip.py
share/golly/Scripts/Python/tile.py
share/golly/golly
share/pixmaps/golly.xpm