aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
blob: 649d9f2714391e2471342404b105ee342a4a4d64 (plain)
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
##Android SDK

This is the CCNx Distillery software distribution for Android. It is in charge of pulling
together all the necessary modules to build a full CCNx software suite for Android.

## Dependencies ##

Install tools to build libcurl

If Ubuntu:

```
sudo apt-get automake libconf libtool clang
```

If Max Os X

```
brew install automake libconf libtool
```


## Quick Start ##

Clone this distro

```
git clone -b androidsdk/master https://gerrit.fd.io/r/cicn android-sdk
cd android-sdk
```

Export Android Sdk path

```
export SDK_PATH=/Users/angelomantellini/Library/Android/sdk
```

Export Android Ndk path

```
export SDK_PATH=/Users/angelomantellini/Library/Android/sdk/ndk-bundle
```


If the previous variables are not set, Sdk, Ndk and CMake for android will be downloaded

Compile everything (dependencies and CCNx modules)

```
export ANDROID_ARCH="arm"
make all
make android_viper
export ANDROID_ARCH="x86_64"
make all
export ANDROID_ARCH="arm64"
make all
export ANDROID_ARCH="x86"
make all

```

The CCNx software will be installed in androidSdk/usr_{arch}


To compile Metis for android app

```
make android_metis
```

To install the application, run

```
adb install -r MetisForwarderAndroid/app/build/outputs/apk/release/.apk
```

To compile IGet for android app

```
make android_iget
```

To install the application, run

```
adb install -r IGetAndroid/app/build/outputs/apk/debug/iget-debug.apk
```

To compile HttpServer for android app

```
make android_httpserver
```

To install the application, run

```
adb install -r HttpServer/app/build/outputs/apk/release/httpserver-release.apk
```


To compile Viper for android app

```
export ANDROID_ARCH="arm"
make android_viper
```

To install the application, run

```
adb install -r build_armv7-a/viper/viper-armv7/build/outputs/apk/viper-armv7-release-signed.apk 
```


## Platforms ##

- Android



## Getting Started ##

To get simple help run `make`. This will give you a list of possible targets to
execute. You will basically want to download all the sources and compile.

Here's a short summary:

- `make update`         - git pull the different modules to the head of master
- `make all`			- Download sdk, ndk, qt environment and dependencies, configure, compile and install all software in DISTILLERY_INSTALL_DIR
- `make init_depend` 	- Download sdk, ndk and dependencies, compile and install all dependencies in DISTILLERY_INSTALL
- `make init_qt`        - Download qt environnment, compile and install all dependencies in DISTILLERY_ROOT/qt
- `make install-all`    - Configure, compile and install all software in DISTILLERY_INSTALL_DIR
- `curl-clean`			- Clean curl files and libs
- `boost-clean`			- Clean boost files and libs
- `openssl-clean`		- Clean opennssl files and libs
- `crystax-clean`		- Clean crystax files and libs
- `event-clean`			- Clean libevent files and libs
- `crystaxndk-clean`	- Clean crystax ndk files
- `xml2-clean`			- Clean libxml2 files and libs
- `dependencies-clean`	- Clean all dependencies files and libs
- `sdk-clean`			- Clean sdk files
- `ndk-clean`			- Clean ndk files
- `cmake-clean`			- Clean cmake files
- `androidsdk-clean`	- Clean sdk, ndk and cmake files
- `cframework-clean`	- Clean cframework (libparc and longbow) files and libs
- `ccnxlibs-clean`		- Clean ccnxlibs files and libs
- `sb-forwarder-clean`	- Clean sb-forwarder (metis) files and libs
- `libicnet-clean`		- Clean libicnet files and libs
- `libdash-clean`		- Clean libdash files and libs
- `qt-clean`            - Clean qt environment files and libs
- `all-clean`			- Clean	all files and libs
- `android_metis`		- Build metis apk for android
- `android_metis_debug` - Build metis apk for android in debug mode
- `android_iget`		- Build iGet apk for android
- `android_iget_debug`  - Build iGet apk for android in debug mode
- `android_httpserver'		- Build Viper apk for android
- `android_httpserver_debug`  - Build Viper apk for android in debug mode
- `android_viper`		- Build Viper apk for android
- `android_iget_debug`  - Build Viper apk for android in debug mode


## Configuration ##

Distillery can be configured in multiple ways.  Please check the config directory (specifically `config/config.mk`) for more information.