[Tizen] Restore Uploaded signal for BufferImage and ResourceImage
[platform/core/uifw/dali-core.git] / README.md
1 <img src="https://dalihub.github.io/images/DaliLogo320x200.png">
2
3 # Table of Contents
4
5    * [Build Instructions](#build-instructions)
6       * [1. Building for Ubuntu desktop](#1-building-for-ubuntu-desktop)
7          * [Minimum Requirements](#minimum-requirements)
8          * [Creating a DALi Environment](#creating-a-dali-environment)
9          * [Building the Repository](#building-the-repository)
10          * [Build target options](#build-target-options)
11          * [Building and executing test cases](#building-and-executing-test-cases)
12       * [2. GBS Builds](#2-gbs-builds)
13          * [NON-SMACK Targets](#non-smack-targets)
14          * [SMACK enabled Targets](#smack-enabled-targets)
15          * [DEBUG Builds](#debug-builds)
16       * [3. Building DALi as Javascript using Emscripten](#3-building-dali-as-javascript-using-emscripten)
17          * [Environment for Emscripten Javascript builds](#environment-for-emscripten-javascript-builds)
18          * [Building the repository as Javascript using Emscripten](#building-the-repository-as-javascript-using-emscripten)
19
20 # Build Instructions
21
22 ## 1. Building for Ubuntu desktop
23
24 ### Minimum Requirements
25
26  - Ubuntu 14.04 or later
27
28 ### Creating a DALi Environment
29
30 To build for desktop first ensure ALL sources are selected:
31  - Go to Ubuntu Settings and then to "Software & Updates"
32  - In the "Ubuntu Software" tab, ensure ALL software sources are ticked
33
34 (This is required because we install some community-maintained free & open-source software)
35
36 Then you can create a dali-env folder in your home folder with:
37
38          $ dali-core/build/scripts/dali_env -c
39
40 This will also download any dependencies that the dali repositories require.
41
42 You can save the environment variables to a file:
43
44          $ dali-env/opt/bin/dali_env -s > setenv
45
46 This process only needs to be done once.
47
48 Next source these variables:
49
50          $ . setenv
51
52 You will have to source these variables every time you open up a new terminal (or you can add to .bashrc if you prefer).
53
54
55 ### Building the Repository
56
57 To build the repository enter the 'build/tizen' folder:
58
59          $ cd dali-core/build/tizen
60
61 Then run the following commands:
62
63          $ autoreconf --install
64          $ ./configure --prefix=$DESKTOP_PREFIX
65          $ make install -j8
66
67 ### Build target options
68
69 OpenGL ES context:
70
71 When building, the OpenGL ES version of the target should be specified.
72
73 Valid version options are 20, 30, 31
74
75 With configure:
76 Add: *--enable-gles=X*
77
78 With gbs:
79 Add to the gbs build line: *--define "%target_gles_version X"*
80
81
82 ### Building and executing test cases
83
84 See the README.md in dali-core/automated-tests.
85
86 ## 2. GBS Builds
87
88 ### NON-SMACK Targets
89
90          $ gbs build -A [TARGET_ARCH]
91
92 ### SMACK enabled Targets
93
94          $ gbs build -A [TARGET_ARCH] --define "%enable_dali_smack_rules 1"
95
96 ### DEBUG Builds
97
98          $ gbs build -A [TARGET_ARCH] --define "%enable_debug 1"
99
100 ## 3. Building DALi as Javascript using Emscripten
101
102
103 ### Environment for Emscripten Javascript builds
104
105 To build the Javascript version of DALi, the Emscripten SDK is required.
106 Installation of this is built in to the main dali_env script.
107
108 First create a directory for the environment:
109
110          $ mkdir -p ~/dali-env-emscripten
111
112 Now run the dali_env script. This will download and build the Emscripten SDK, which may take several minutes.
113 The script may ask for your password as it will need to install any package prerequisites.
114 Note the "-e" option for Emscripten.
115
116          $ cd ~/dali-env-emscripten
117          $ PATH-TO-DALI-CORE/build/scripts/dali_env -c -e
118
119 Create the setenv script. A new section for Emscripten will be created at the top.
120
121          $ ./dali-env/opt/bin/dali_env -s > setenv
122
123 Run the setenv script to setup environment variables.
124
125          $ . ./setenv
126
127 Warning: As of 19/01/2015 with a userID > 6 digits there was a bug in llvm that caused
128 the build to fail. So I've used the incoming branches of the emscripten sdk and not latest.
129
130 ### Building the repository as Javascript using Emscripten
131
132 Clean the build first:
133
134          $ cd ./dali-core/build/tizen
135          $ git clean -dxf
136          $ autoreconf --install
137
138 Use llvm's drop in replacements for configure & make:
139
140          $ emconfigure ./configure --verbose --prefix=$DESKTOP_PREFIX --enable-emscripten=yes --enable-debug=yes --enable-profile=UBUNTU --enable-gles=20
141          $ emmake make install -j8
142
143