aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/TODO
diff options
context:
space:
mode:
authorDavid Walter Seikel2014-04-27 16:48:07 +1000
committerDavid Walter Seikel2014-04-27 16:48:07 +1000
commit568c8829db2f886921c7592cadbadbf4241127b6 (patch)
tree0af400526db683fa4ff5fb18a7eb2f685795fd04 /TODO
parentAdded stuff cut and pasted from the new Evas_3d examples, but they are broken... (diff)
downloadSledjHamr-568c8829db2f886921c7592cadbadbf4241127b6.zip
SledjHamr-568c8829db2f886921c7592cadbadbf4241127b6.tar.gz
SledjHamr-568c8829db2f886921c7592cadbadbf4241127b6.tar.bz2
SledjHamr-568c8829db2f886921c7592cadbadbf4241127b6.tar.xz
Centralise the PACKAGE_* stuff, move our libraries to lib, and shuffle stuff to suit.
Diffstat (limited to 'TODO')
-rw-r--r--TODO46
1 files changed, 3 insertions, 43 deletions
diff --git a/TODO b/TODO
index 3fa0c8d..240e63d 100644
--- a/TODO
+++ b/TODO
@@ -3,45 +3,19 @@ FIXES -
3 Project paths 3 Project paths
4 ------------- 4 -------------
5 5
6CFLAGS = CFLAGS .. ' -DPACKAGE_BIN_DIR=\\"' .. baseDir .. '\\"'
7CFLAGS = CFLAGS .. ' -DPACKAGE_LIB_DIR=\\"' .. baseDir .. '\\"'
8CFLAGS = CFLAGS .. ' -DPACKAGE_DATA_DIR=\\"' .. baseDir .. '\\"'
9
10 // There is also a locale variety, but we are not dealing with locale stuff yet.
11 // There is a prefix variety, but you can't set it, only read it later.
12 // These set the fallbacks used by elm_app_info_set(), that are defined at compile time.
13 elm_app_compile_bin_dir_set(PACKAGE_BIN_DIR);
14 elm_app_compile_data_dir_set(PACKAGE_DATA_DIR);
15 elm_app_compile_lib_dir_set(PACKAGE_LIB_DIR);
16 // Do this after the above calls, but before changing the working directory, or screwing with argv[0].
17 // It tries to set up the package paths depending on where the executable is, so things are relocatable.
18 // First argument is the elm_main() function that Elementary starts us from.
19 // Second argument should be a lower case string used as the "domain", which is different from the log domain.
20 // It's used lower case as part of the data directory path.
21 // So, if prefix is /usr/local, then the system data dir is /usr/local/share,
22 // and this apps data dir is /usr/local/share/"domain".
23 // It's used upper case as part of environment variables to override directory paths at run time.
24 // So "DOMAIN"_PREFIX, "DOMAIN"_BIN_DIR, "DOMAIN"_LIB_DIR, "DOMAIN"_DATA_DIR, and "DOMAIN"_LOCALE_DIR
25 // Third argument is the name of a file it can check for to make sure it found the correct path.
26 // This file is looked for in the data dir.
27 elm_app_info_set(elm_main, "GuiLua", "skang.lua");
28 // Once this is all setup, the code can do -
29 elm_app_prefix_dir_get(); // or bin, lib, data, locale.
30
31The executables currently live in ...../SledjHamr. 6The executables currently live in ...../SledjHamr.
32 Test executables stay in the src directory. 7 Test executables stay in the src directory.
33Media and other data in SledjHamr/media (includes the test sim and Irrlicht examples). 8Media and other data in SledjHamr/media (includes the test sim and Irrlicht examples).
34Libraries are in SledjHamr/libraries (including Irrlicht, lemon, and some sources). 9External libraries are in SledjHamr/libraries (Irrlicht and lemon).
35 Should move LumbrJack and Runnr sources to src, and probably lemon to.
36 Irrlicht is statically linked, so except for it's media, we don't need it at run time. 10 Irrlicht is statically linked, so except for it's media, we don't need it at run time.
37 We could probably move the Irrlicht examples we actually use (all test data anyway) to Test sim. 11 We could probably move the Irrlicht examples we actually use (all test data anyway) to Test sim.
12 Lemon is only used at build time.
38 13
39Builders should be able to - 14Builders should be able to -
40 put binaries in /usr/local/bin 15 put binaries in /usr/local/bin
41 put libraries - /usr/local/lib/SledjHamr 16 put libraries - /usr/local/lib/SledjHamr
42 put media in /usr/local/share/SledjHamr 17 put media in /usr/local/share/SledjHamr
43If they don't, those things should be in the build directory, where they are now. 18If they don't, those things should be in the build directory, where they are now.
44 And looked up locally to allow moving it as one thing.
45 19
46User should be able to - 20User should be able to -
47 Run sims from where ever they like. 21 Run sims from where ever they like.
@@ -53,12 +27,6 @@ User should be able to -
53 Write their own skins, using their own media. 27 Write their own skins, using their own media.
54 28
55SOOOO ... 29SOOOO ...
56 build.lua should set -
57 PACKAGE_BIN_DIR = SledjHamr
58 PACKAGE_LIB_DIR = SledjHamr/libraries (should rename this to lib)
59 PACKAGE_DATA_DIR = SledjHamr/media
60 PACKAGE_LOCALE_DIR = SledjHamr/locale (doesn't exist yet)
61
62 install.lua should - (doesn't exist yet) 30 install.lua should - (doesn't exist yet)
63 SledjHamr binaries -> prefix .. '/bin' 31 SledjHamr binaries -> prefix .. '/bin'
64 SledjHamr/libraries -> prefix .. '/lib/SledjHamr' 32 SledjHamr/libraries -> prefix .. '/lib/SledjHamr'
@@ -69,14 +37,6 @@ SOOOO ...
69 For now, we don't care, there's no actual installing going on. 37 For now, we don't care, there's no actual installing going on.
70 SledjHamr/locale -> prefix .. '/share/SledjHamr/locale' 38 SledjHamr/locale -> prefix .. '/share/SledjHamr/locale'
71 39
72 Some library function should call all the elm_app_compile_*_dir_set() functions.
73 They should be set as -D options only for that library.
74 elm_app_info_set() has to be called for each different elm_main(), so that might be tricky.
75 elm_app_*_dir_get() can then be called from anywhere, and will get the same results.
76 NOTE - this is Elm specific, so non GUI stuff like LuaSL can't use it.
77 Seems that non Elm examples all just use the PACKAGE_*_DIR type macros directly in strings.
78
79
80 40
81Irrlicht is flickering like crazy. Hmm, might be Irrlicht's fault, 41Irrlicht is flickering like crazy. Hmm, might be Irrlicht's fault,
82mostly it flickers to black, but I've seen it flicker to the first frame 42mostly it flickers to black, but I've seen it flicker to the first frame
@@ -118,7 +78,7 @@ Write my own, use ePhysics. Hopefully ePhysics has some sort of
118magnetism / attraction thingy. See the forces demo, should be doable. 78magnetism / attraction thingy. See the forces demo, should be doable.
119Collision restraints and impulses? 79Collision restraints and impulses?
120 80
121See if Evas allows detaching stuff from one canvas and adding it to 81See if Evas allows detaching stuff from one canvas and adding it to
122another canvas. This allows things like tearing off tabs from windows, 82another canvas. This allows things like tearing off tabs from windows,
123tearing off sub menus, and switching windows between internal and 83tearing off sub menus, and switching windows between internal and
124external windows, without having to entirely recreate the UI stack 84external windows, without having to entirely recreate the UI stack