Merge "Prevention of Null pointer dereference" into devel/master
[platform/core/uifw/dali-core.git] / packaging / dali.spec
1 Name:       dali
2 Summary:    The OpenGLES Canvas Core Library
3 Version:    1.1.34
4 Release:    1
5 Group:      System/Libraries
6 License:    Apache-2.0 and BSD-2-Clause and MIT
7 URL:        https://review.tizen.org/git/?p=platform/core/uifw/dali-core.git;a=summary
8 Source0:    %{name}-%{version}.tar.gz
9
10 Requires(post): /sbin/ldconfig
11 Requires(postun): /sbin/ldconfig
12 BuildRequires:  pkgconfig
13 BuildRequires:  gawk
14
15 %description
16 The OpenGLES Canvas Core Library provides a 3D scene graph
17
18 ##############################
19 # devel
20 ##############################
21 %package devel
22 Summary:    Development components for the OpenGLES Canvas Core Library
23 Group:      Development/Building
24 Requires:   %{name} = %{version}-%{release}
25 Requires:   %{name}-integration-devel = %{version}-%{release}
26
27 %description devel
28 Development components for the OpenGLES Canvas Core Library - public headers and package config
29
30 ##############################
31 # integration-devel
32 ##############################
33 %package integration-devel
34 Summary:    Integration development package for the OpenGLES Canvas
35 Group:      Development/Building
36 Requires:   %{name} = %{version}-%{release}
37
38 %description integration-devel
39 Integration development package for the OpenGLES Canvas - headers for integrating with an adaptor/platform abstraction library.
40
41 ##############################
42 # Preparation
43 ##############################
44 %prep
45 %setup -q
46 %define dali_data_rw_dir /opt/usr/share/dali/
47 %define dali_data_ro_dir /usr/share/dali/
48 %define dev_include_path %{_includedir}
49
50 ##############################
51 # Build
52 ##############################
53 %build
54 PREFIX="/usr"
55 CXXFLAGS+=" -Wall -g -Os -DNDEBUG -fPIC -fvisibility-inlines-hidden -fdata-sections -ffunction-sections "
56 LDFLAGS+=" -Wl,--rpath=$PREFIX/lib -Wl,--as-needed -Wl,--gc-sections -lgcc_s -lgcc -lpthread -Wl,-Bsymbolic-functions "
57
58 %ifarch %{arm}
59 CXXFLAGS+=" -D_ARCH_ARM_ -mfpu=neon"
60 %endif
61
62 libtoolize --force
63 cd %{_builddir}/%{name}-%{version}/build/tizen
64 autoreconf --install
65 DALI_DATA_RW_DIR="%{dali_data_rw_dir}"
66 DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
67 export DALI_DATA_RW_DIR
68 export DALI_DATA_RO_DIR
69
70 # Default to GLES 2.0 if not specified.
71 %{!?target_gles_version: %define target_gles_version 20}
72
73 CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS;
74 CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS;
75 LDFLAGS="${LDFLAGS:-%optflags}" ; export LDFLAGS;
76 ./configure \
77       --program-prefix=%{?_program_prefix} \
78       --prefix=%{_prefix} \
79       --exec-prefix=%{_exec_prefix} \
80       --bindir=%{_bindir} \
81       --sbindir=%{_sbindir} \
82       --sysconfdir=%{_sysconfdir} \
83       --datadir=%{_datadir} \
84       --includedir=%{_includedir} \
85       --libdir=%{_libdir} \
86       --libexecdir=%{_libexecdir} \
87       --localstatedir=%{_localstatedir} \
88       --sharedstatedir=%{_sharedstatedir} \
89       --mandir=%{_mandir} \
90       --enable-gles=%{target_gles_version} \
91       --infodir=%{_infodir}
92
93 make %{?jobs:-j%jobs}
94
95 ##############################
96 # Installation
97 ##############################
98 %install
99 rm -rf %{buildroot}
100 cd build/tizen
101 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
102
103 # LICENSE
104 mkdir -p %{buildroot}/usr/share/license
105 cp -af %{_builddir}/%{name}-%{version}/LICENSE %{buildroot}/usr/share/license/%{name}
106
107
108 ##############################
109 # Post Install
110 ##############################
111 %post
112 /sbin/ldconfig
113 exit 0
114
115 ##############################
116 # Post Uninstall
117 ##############################
118 %postun
119 /sbin/ldconfig
120 exit 0
121
122 ##############################
123 # Files in Binary Packages
124 ##############################
125
126 %files
127 %if 0%{?enable_dali_smack_rules}
128 %manifest dali.manifest-smack
129 %else
130 %manifest dali.manifest
131 %endif
132 %defattr(-,root,root,-)
133 %{_libdir}/lib%{name}-core.so*
134 %defattr(-,app,app,-)
135 %{_datadir}/license/%{name}
136
137 %files devel
138 %defattr(-,root,root,-)
139 %{_libdir}/pkgconfig/*.pc
140 %{dev_include_path}/%{name}/public-api/*
141 %{dev_include_path}/%{name}/devel-api/*
142 %{dev_include_path}/%{name}/doc/*
143
144 %files integration-devel
145 %defattr(-,root,root,-)
146 %{_includedir}/%{name}/integration-api/*