diff options
| -rw-r--r-- | meta-multimedia/recipes-multimedia/faac/faac_1.28.bb | 21 | ||||
| -rw-r--r-- | meta-multimedia/recipes-multimedia/faac/files/build-fix.patch | 332 |
2 files changed, 353 insertions, 0 deletions
diff --git a/meta-multimedia/recipes-multimedia/faac/faac_1.28.bb b/meta-multimedia/recipes-multimedia/faac/faac_1.28.bb new file mode 100644 index 0000000000..c7dcdb9cd1 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/faac/faac_1.28.bb | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | SUMMARY = "Freeware Advanced Audio Coder (MPEG2-AAC, MPEG4-AAC)" | ||
| 2 | SECTION = "libs" | ||
| 3 | LICENSE = "LGPLv2+" | ||
| 4 | LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ | ||
| 5 | file://libfaac/coder.h;beginline=5;endline=17;md5=fa1fd6a5fa8cdc877d63a12530d273e0" | ||
| 6 | |||
| 7 | inherit autotools | ||
| 8 | |||
| 9 | SRC_URI = "${SOURCEFORGE_MIRROR}/faac/${BPN}-${PV}.tar.gz \ | ||
| 10 | file://build-fix.patch" | ||
| 11 | |||
| 12 | SRC_URI[md5sum] = "80763728d392c7d789cde25614c878f6" | ||
| 13 | SRC_URI[sha256sum] = "c5141199f4cfb17d749c36ba8cfe4b25f838da67c22f0fec40228b6b9c3d19df" | ||
| 14 | |||
| 15 | PACKAGES =+ "lib${PN} lib${PN}-dev" | ||
| 16 | |||
| 17 | FILES_${PN} = " ${bindir}/faac " | ||
| 18 | FILES_lib${PN} = " ${libdir}/libfaac.so.*" | ||
| 19 | FILES_lib${PN}-dev = "${includedir}/faac.h ${includedir}/faaccfg.h ${libdir}/libfaac.so ${libdir}/libfaac.la" | ||
| 20 | FILES_lib${PN}-staticdev = "${libdir}/libfaac.a" | ||
| 21 | |||
diff --git a/meta-multimedia/recipes-multimedia/faac/files/build-fix.patch b/meta-multimedia/recipes-multimedia/faac/files/build-fix.patch new file mode 100644 index 0000000000..83cff8f89e --- /dev/null +++ b/meta-multimedia/recipes-multimedia/faac/files/build-fix.patch | |||
| @@ -0,0 +1,332 @@ | |||
| 1 | Patch fixing build error and warnings. Error consisted of redefining | ||
| 2 | strcasestr function from string.h. Warnings consisted of deprecated conversions | ||
| 3 | of string constants to char*, using '%llu' for type uint64_t (which on 64 bit | ||
| 4 | systems, is defined as unsigned long int by stdint.h), and using '==' for | ||
| 5 | equality of two strings. | ||
| 6 | |||
| 7 | Patch originally from Debian. | ||
| 8 | |||
| 9 | Upstream-Status: Pending | ||
| 10 | |||
| 11 | ========================================================================== | ||
| 12 | --- a/common/mp4v2/mpeg4ip.h | ||
| 13 | +++ b/common/mp4v2/mpeg4ip.h | ||
| 14 | @@ -120,14 +120,6 @@ | ||
| 15 | #endif | ||
| 16 | #include <sys/param.h> | ||
| 17 | |||
| 18 | -#ifdef __cplusplus | ||
| 19 | -extern "C" { | ||
| 20 | -#endif | ||
| 21 | -char *strcasestr(const char *haystack, const char *needle); | ||
| 22 | -#ifdef __cplusplus | ||
| 23 | -} | ||
| 24 | -#endif | ||
| 25 | - | ||
| 26 | #define OPEN_RDWR O_RDWR | ||
| 27 | #define OPEN_CREAT O_CREAT | ||
| 28 | #define OPEN_RDONLY O_RDONLY | ||
| 29 | @@ -135,7 +127,6 @@ | ||
| 30 | #define closesocket close | ||
| 31 | #define IOSBINARY ios::bin | ||
| 32 | |||
| 33 | -#if SIZEOF_LONG == 8 | ||
| 34 | #define MAX_UINT64 -1LU | ||
| 35 | #define D64F "ld" | ||
| 36 | #define U64F "lu" | ||
| 37 | @@ -143,15 +134,6 @@ | ||
| 38 | |||
| 39 | #define TO_D64(a) (a##L) | ||
| 40 | #define TO_U64(a) (a##LU) | ||
| 41 | -#else | ||
| 42 | -#define MAX_UINT64 -1LLU | ||
| 43 | -#define D64F "lld" | ||
| 44 | -#define U64F "llu" | ||
| 45 | -#define X64F "llx" | ||
| 46 | - | ||
| 47 | -#define TO_D64(a) (a##LL) | ||
| 48 | -#define TO_U64(a) (a##LLU) | ||
| 49 | -#endif | ||
| 50 | |||
| 51 | #ifdef HAVE_FPOS_T___POS | ||
| 52 | #define FPOS_TO_VAR(fpos, typed, var) (var) = (typed)((fpos).__pos) | ||
| 53 | --- a/configure.in | ||
| 54 | +++ b/configure.in | ||
| 55 | @@ -4,6 +4,9 @@ | ||
| 56 | AM_INIT_AUTOMAKE | ||
| 57 | |||
| 58 | AM_CONFIG_HEADER(config.h) | ||
| 59 | +AH_TOP([#ifndef CONFIG_H | ||
| 60 | +#define CONFIG_H]) | ||
| 61 | +AH_BOTTOM([#endif /* CONFIG_H */]) | ||
| 62 | |||
| 63 | AC_ARG_WITH( mp4v2, [ --with-mp4v2 compile libmp4v2],WITHMP4V2=$withval, WITHMP4V2=yes) | ||
| 64 | AC_ARG_ENABLE( drm, [ --enable-drm Digital Radio Mondiale support], enable_drm=$enableval, enable_drm=no) | ||
| 65 | --- a/common/mp4v2/atom_avcC.cpp | ||
| 66 | +++ b/common/mp4v2/atom_avcC.cpp | ||
| 67 | @@ -29,7 +29,7 @@ | ||
| 68 | class SizeTableProperty : public MP4TableProperty | ||
| 69 | { | ||
| 70 | public: | ||
| 71 | - SizeTableProperty(char *name, MP4IntegerProperty *pCountProperty) : | ||
| 72 | + SizeTableProperty(const char *name, MP4IntegerProperty *pCountProperty) : | ||
| 73 | MP4TableProperty(name, pCountProperty) {}; | ||
| 74 | protected: | ||
| 75 | void ReadEntry(MP4File *pFile, u_int32_t index) { | ||
| 76 | --- a/common/mp4v2/atom_ohdr.cpp | ||
| 77 | +++ b/common/mp4v2/atom_ohdr.cpp | ||
| 78 | @@ -21,7 +21,7 @@ | ||
| 79 | \param useCountedFormat counted format flag. | ||
| 80 | \param useUnicode unicode flag. | ||
| 81 | */ | ||
| 82 | - OhdrMP4StringProperty(char* name, bool useCountedFormat = false, | ||
| 83 | + OhdrMP4StringProperty(const char* name, bool useCountedFormat = false, | ||
| 84 | bool useUnicode = false): MP4StringProperty(name, useCountedFormat, | ||
| 85 | useUnicode) { | ||
| 86 | } | ||
| 87 | --- a/common/mp4v2/atom_stz2.cpp | ||
| 88 | +++ b/common/mp4v2/atom_stz2.cpp | ||
| 89 | @@ -30,7 +30,7 @@ | ||
| 90 | class MP4HalfSizeTableProperty : public MP4TableProperty | ||
| 91 | { | ||
| 92 | public: | ||
| 93 | - MP4HalfSizeTableProperty(char *name, MP4IntegerProperty *pCountProperty) : | ||
| 94 | + MP4HalfSizeTableProperty(const char *name, MP4IntegerProperty *pCountProperty) : | ||
| 95 | MP4TableProperty(name, pCountProperty) {}; | ||
| 96 | |||
| 97 | // The count is half the actual size | ||
| 98 | --- a/common/mp4v2/mp4atom.cpp | ||
| 99 | +++ b/common/mp4v2/mp4atom.cpp | ||
| 100 | @@ -806,7 +806,7 @@ | ||
| 101 | AddProperty(new MP4Integer24Property("flags")); | ||
| 102 | } | ||
| 103 | |||
| 104 | -void MP4Atom::AddReserved(char* name, u_int32_t size) | ||
| 105 | +void MP4Atom::AddReserved(const char* name, u_int32_t size) | ||
| 106 | { | ||
| 107 | MP4BytesProperty* pReserved = new MP4BytesProperty(name, size); | ||
| 108 | pReserved->SetReadOnly(); | ||
| 109 | --- a/common/mp4v2/mp4atom.h | ||
| 110 | +++ b/common/mp4v2/mp4atom.h | ||
| 111 | @@ -204,7 +204,7 @@ | ||
| 112 | |||
| 113 | void AddVersionAndFlags(); | ||
| 114 | |||
| 115 | - void AddReserved(char* name, u_int32_t size); | ||
| 116 | + void AddReserved(const char* name, u_int32_t size); | ||
| 117 | |||
| 118 | void ExpectChildAtom(const char* name, | ||
| 119 | bool mandatory, bool onlyOne = true); | ||
| 120 | --- a/common/mp4v2/mp4file.cpp | ||
| 121 | +++ b/common/mp4v2/mp4file.cpp | ||
| 122 | @@ -718,7 +718,7 @@ | ||
| 123 | } | ||
| 124 | } | ||
| 125 | |||
| 126 | -void MP4File::ProtectWriteOperation(char* where) | ||
| 127 | +void MP4File::ProtectWriteOperation(const char* where) | ||
| 128 | { | ||
| 129 | if (m_mode == 'r') { | ||
| 130 | throw new MP4Error("operation not permitted in read mode", where); | ||
| 131 | @@ -1274,7 +1274,7 @@ | ||
| 132 | } | ||
| 133 | |||
| 134 | // NULL terminated list of brands which require the IODS atom | ||
| 135 | -char *brandsWithIods[] = { "mp42", | ||
| 136 | +const char *brandsWithIods[] = { "mp42", | ||
| 137 | "isom", | ||
| 138 | NULL}; | ||
| 139 | |||
| 140 | @@ -2211,11 +2211,11 @@ | ||
| 141 | for (u_int32_t i = 0; i < m_pTracks.Size(); i++) { | ||
| 142 | if (!strcmp(normType, m_pTracks[i]->GetType())) { | ||
| 143 | if (subType) { | ||
| 144 | - if (normType == MP4_AUDIO_TRACK_TYPE) { | ||
| 145 | + if (!strcmp(normType,MP4_AUDIO_TRACK_TYPE)) { | ||
| 146 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
| 147 | continue; | ||
| 148 | } | ||
| 149 | - } else if (normType == MP4_VIDEO_TRACK_TYPE) { | ||
| 150 | + } else if (!strcmp(normType,MP4_VIDEO_TRACK_TYPE)) { | ||
| 151 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
| 152 | continue; | ||
| 153 | } | ||
| 154 | @@ -2278,11 +2278,11 @@ | ||
| 155 | for (u_int32_t i = 0; i < m_pTracks.Size(); i++) { | ||
| 156 | if (!strcmp(normType, m_pTracks[i]->GetType())) { | ||
| 157 | if (subType) { | ||
| 158 | - if (normType == MP4_AUDIO_TRACK_TYPE) { | ||
| 159 | + if (!strcmp(normType,MP4_AUDIO_TRACK_TYPE)) { | ||
| 160 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
| 161 | continue; | ||
| 162 | } | ||
| 163 | - } else if (normType == MP4_VIDEO_TRACK_TYPE) { | ||
| 164 | + } else if (!strcmp(normType,MP4_VIDEO_TRACK_TYPE)) { | ||
| 165 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
| 166 | continue; | ||
| 167 | } | ||
| 168 | --- a/common/mp4v2/mp4file.h | ||
| 169 | +++ b/common/mp4v2/mp4file.h | ||
| 170 | @@ -700,7 +700,7 @@ | ||
| 171 | const char* TempFileName(); | ||
| 172 | void Rename(const char* existingFileName, const char* newFileName); | ||
| 173 | |||
| 174 | - void ProtectWriteOperation(char* where); | ||
| 175 | + void ProtectWriteOperation(const char* where); | ||
| 176 | |||
| 177 | void FindIntegerProperty(const char* name, | ||
| 178 | MP4Property** ppProperty, u_int32_t* pIndex = NULL); | ||
| 179 | --- a/common/mp4v2/mp4property.cpp | ||
| 180 | +++ b/common/mp4v2/mp4property.cpp | ||
| 181 | @@ -313,7 +313,7 @@ | ||
| 182 | |||
| 183 | // MP4StringProperty | ||
| 184 | |||
| 185 | -MP4StringProperty::MP4StringProperty(char* name, | ||
| 186 | +MP4StringProperty::MP4StringProperty(const char* name, | ||
| 187 | bool useCountedFormat, bool useUnicode) | ||
| 188 | : MP4Property(name) | ||
| 189 | { | ||
| 190 | @@ -420,7 +420,7 @@ | ||
| 191 | |||
| 192 | // MP4BytesProperty | ||
| 193 | |||
| 194 | -MP4BytesProperty::MP4BytesProperty(char* name, u_int32_t valueSize, | ||
| 195 | +MP4BytesProperty::MP4BytesProperty(const char* name, u_int32_t valueSize, | ||
| 196 | u_int32_t defaultValueSize) | ||
| 197 | : MP4Property(name) | ||
| 198 | { | ||
| 199 | @@ -549,7 +549,7 @@ | ||
| 200 | |||
| 201 | // MP4TableProperty | ||
| 202 | |||
| 203 | -MP4TableProperty::MP4TableProperty(char* name, MP4IntegerProperty* pCountProperty) | ||
| 204 | +MP4TableProperty::MP4TableProperty(const char* name, MP4IntegerProperty* pCountProperty) | ||
| 205 | : MP4Property(name) | ||
| 206 | { | ||
| 207 | m_pCountProperty = pCountProperty; | ||
| 208 | @@ -725,7 +725,7 @@ | ||
| 209 | |||
| 210 | // MP4DescriptorProperty | ||
| 211 | |||
| 212 | -MP4DescriptorProperty::MP4DescriptorProperty(char* name, | ||
| 213 | +MP4DescriptorProperty::MP4DescriptorProperty(const char* name, | ||
| 214 | u_int8_t tagsStart, u_int8_t tagsEnd, bool mandatory, bool onlyOne) | ||
| 215 | : MP4Property(name) | ||
| 216 | { | ||
| 217 | --- a/common/mp4v2/mp4property.h | ||
| 218 | +++ b/common/mp4v2/mp4property.h | ||
| 219 | @@ -100,7 +100,7 @@ | ||
| 220 | |||
| 221 | class MP4IntegerProperty : public MP4Property { | ||
| 222 | protected: | ||
| 223 | - MP4IntegerProperty(char* name) | ||
| 224 | + MP4IntegerProperty(const char* name) | ||
| 225 | : MP4Property(name) { }; | ||
| 226 | |||
| 227 | public: | ||
| 228 | @@ -118,7 +118,7 @@ | ||
| 229 | #define MP4INTEGER_PROPERTY_DECL2(isize, xsize) \ | ||
| 230 | class MP4Integer##xsize##Property : public MP4IntegerProperty { \ | ||
| 231 | public: \ | ||
| 232 | - MP4Integer##xsize##Property(char* name) \ | ||
| 233 | + MP4Integer##xsize##Property(const char* name) \ | ||
| 234 | : MP4IntegerProperty(name) { \ | ||
| 235 | SetCount(1); \ | ||
| 236 | m_values[0] = 0; \ | ||
| 237 | @@ -188,7 +188,7 @@ | ||
| 238 | |||
| 239 | class MP4BitfieldProperty : public MP4Integer64Property { | ||
| 240 | public: | ||
| 241 | - MP4BitfieldProperty(char* name, u_int8_t numBits) | ||
| 242 | + MP4BitfieldProperty(const char* name, u_int8_t numBits) | ||
| 243 | : MP4Integer64Property(name) { | ||
| 244 | ASSERT(numBits != 0); | ||
| 245 | ASSERT(numBits <= 64); | ||
| 246 | @@ -213,7 +213,7 @@ | ||
| 247 | |||
| 248 | class MP4Float32Property : public MP4Property { | ||
| 249 | public: | ||
| 250 | - MP4Float32Property(char* name) | ||
| 251 | + MP4Float32Property(const char* name) | ||
| 252 | : MP4Property(name) { | ||
| 253 | m_useFixed16Format = false; | ||
| 254 | m_useFixed32Format = false; | ||
| 255 | @@ -280,7 +280,7 @@ | ||
| 256 | |||
| 257 | class MP4StringProperty : public MP4Property { | ||
| 258 | public: | ||
| 259 | - MP4StringProperty(char* name, | ||
| 260 | + MP4StringProperty(const char* name, | ||
| 261 | bool useCountedFormat = false, bool useUnicode = false); | ||
| 262 | |||
| 263 | ~MP4StringProperty(); | ||
| 264 | @@ -355,7 +355,7 @@ | ||
| 265 | |||
| 266 | class MP4BytesProperty : public MP4Property { | ||
| 267 | public: | ||
| 268 | - MP4BytesProperty(char* name, u_int32_t valueSize = 0, | ||
| 269 | + MP4BytesProperty(const char* name, u_int32_t valueSize = 0, | ||
| 270 | u_int32_t defaultValueSize = 0); | ||
| 271 | |||
| 272 | ~MP4BytesProperty(); | ||
| 273 | @@ -419,7 +419,7 @@ | ||
| 274 | |||
| 275 | class MP4TableProperty : public MP4Property { | ||
| 276 | public: | ||
| 277 | - MP4TableProperty(char* name, MP4IntegerProperty* pCountProperty); | ||
| 278 | + MP4TableProperty(const char* name, MP4IntegerProperty* pCountProperty); | ||
| 279 | |||
| 280 | ~MP4TableProperty(); | ||
| 281 | |||
| 282 | @@ -469,7 +469,7 @@ | ||
| 283 | |||
| 284 | class MP4DescriptorProperty : public MP4Property { | ||
| 285 | public: | ||
| 286 | - MP4DescriptorProperty(char* name = NULL, | ||
| 287 | + MP4DescriptorProperty(const char* name = NULL, | ||
| 288 | u_int8_t tagsStart = 0, u_int8_t tagsEnd = 0, | ||
| 289 | bool mandatory = false, bool onlyOne = false); | ||
| 290 | |||
| 291 | @@ -531,7 +531,7 @@ | ||
| 292 | |||
| 293 | class MP4QosQualifierProperty : public MP4DescriptorProperty { | ||
| 294 | public: | ||
| 295 | - MP4QosQualifierProperty(char* name = NULL, | ||
| 296 | + MP4QosQualifierProperty(const char* name = NULL, | ||
| 297 | u_int8_t tagsStart = 0, u_int8_t tagsEnd = 0, | ||
| 298 | bool mandatory = false, bool onlyOne = false) : | ||
| 299 | MP4DescriptorProperty(name, tagsStart, tagsEnd, mandatory, onlyOne) { } | ||
| 300 | --- a/common/mp4v2/mp4track.cpp | ||
| 301 | +++ b/common/mp4v2/mp4track.cpp | ||
| 302 | @@ -1360,7 +1360,7 @@ | ||
| 303 | } | ||
| 304 | } | ||
| 305 | |||
| 306 | -MP4Atom* MP4Track::AddAtom(char* parentName, char* childName) | ||
| 307 | +MP4Atom* MP4Track::AddAtom(const char* parentName, const char* childName) | ||
| 308 | { | ||
| 309 | MP4Atom* pChildAtom = MP4Atom::CreateAtom(childName); | ||
| 310 | |||
| 311 | --- a/common/mp4v2/mp4track.h | ||
| 312 | +++ b/common/mp4v2/mp4track.h | ||
| 313 | @@ -168,7 +168,7 @@ | ||
| 314 | void UpdateSyncSamples(MP4SampleId sampleId, | ||
| 315 | bool isSyncSample); | ||
| 316 | |||
| 317 | - MP4Atom* AddAtom(char* parentName, char* childName); | ||
| 318 | + MP4Atom* AddAtom(const char* parentName, const char* childName); | ||
| 319 | |||
| 320 | void UpdateDurations(MP4Duration duration); | ||
| 321 | MP4Duration ToMovieDuration(MP4Duration trackDuration); | ||
| 322 | --- a/common/mp4v2/ocidescriptors.cpp | ||
| 323 | +++ b/common/mp4v2/ocidescriptors.cpp | ||
| 324 | @@ -171,7 +171,7 @@ | ||
| 325 | |||
| 326 | class MP4CreatorTableProperty : public MP4TableProperty { | ||
| 327 | public: | ||
| 328 | - MP4CreatorTableProperty(char* name, MP4Integer8Property* pCountProperty) : | ||
| 329 | + MP4CreatorTableProperty(const char* name, MP4Integer8Property* pCountProperty) : | ||
| 330 | MP4TableProperty(name, pCountProperty) { | ||
| 331 | }; | ||
| 332 | protected: | ||
