From: Mo Zhou Date: Tue, 25 Feb 2025 05:55:44 +0000 (-0500) Subject: Import opencv_4.10.0+dfsg-3.debian.tar.xz X-Git-Tag: archive/raspbian/4.10.0+dfsg-5+rpi1^2^2~7^3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=08695c781093ee133a966f664c55d12ffbff34b9;p=opencv.git Import opencv_4.10.0+dfsg-3.debian.tar.xz [dgit import tarball opencv 4.10.0+dfsg-3 opencv_4.10.0+dfsg-3.debian.tar.xz] --- 08695c781093ee133a966f664c55d12ffbff34b9 diff --git a/3rdparty-4.10.0/quirc/CMakeLists.txt b/3rdparty-4.10.0/quirc/CMakeLists.txt new file mode 100644 index 0000000..c0464c1 --- /dev/null +++ b/3rdparty-4.10.0/quirc/CMakeLists.txt @@ -0,0 +1,30 @@ +project(quirc) + +set(CURR_INCLUDE_DIR "${CMAKE_CURRENT_LIST_DIR}/include") + +set_property(GLOBAL PROPERTY QUIRC_INCLUDE_DIR ${CURR_INCLUDE_DIR}) +ocv_include_directories(${CURR_INCLUDE_DIR}) + +file(GLOB_RECURSE quirc_headers RELATIVE "${CMAKE_CURRENT_LIST_DIR}" "include/*.h") +file(GLOB_RECURSE quirc_sources RELATIVE "${CMAKE_CURRENT_LIST_DIR}" "src/*.c") + +add_library(${PROJECT_NAME} STATIC ${OPENCV_3RDPARTY_EXCLUDE_FROM_ALL} ${quirc_headers} ${quirc_sources}) +ocv_warnings_disable(CMAKE_C_FLAGS -Wunused-variable -Wshadow) + +set_target_properties(${PROJECT_NAME} + PROPERTIES OUTPUT_NAME ${PROJECT_NAME} + DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}" + COMPILE_PDB_NAME ${PROJECT_NAME} + COMPILE_PDB_NAME_DEBUG "${PROJECT_NAME}${OPENCV_DEBUG_POSTFIX}" + ARCHIVE_OUTPUT_DIRECTORY ${3P_LIBRARY_OUTPUT_PATH} + ) + +if(ENABLE_SOLUTION_FOLDERS) + set_target_properties(${PROJECT_NAME} PROPERTIES FOLDER "3rdparty") +endif() + +if(NOT BUILD_SHARED_LIBS) + ocv_install_target(${PROJECT_NAME} EXPORT OpenCVModules ARCHIVE DESTINATION ${OPENCV_3P_LIB_INSTALL_PATH} COMPONENT dev OPTIONAL) +endif() + +ocv_install_3rdparty_licenses(${PROJECT_NAME} LICENSE) diff --git a/3rdparty-4.10.0/quirc/LICENSE b/3rdparty-4.10.0/quirc/LICENSE new file mode 100644 index 0000000..d47c026 --- /dev/null +++ b/3rdparty-4.10.0/quirc/LICENSE @@ -0,0 +1,16 @@ +quirc -- QR-code recognition library +Copyright (C) 2010-2012 Daniel Beer + +Permission to use, copy, modify, and/or distribute this software for +any purpose with or without fee is hereby granted, provided that the +above copyright notice and this permission notice appear in all +copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL +DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR +PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. diff --git a/3rdparty-4.10.0/quirc/include/quirc.h b/3rdparty-4.10.0/quirc/include/quirc.h new file mode 100644 index 0000000..957ae10 --- /dev/null +++ b/3rdparty-4.10.0/quirc/include/quirc.h @@ -0,0 +1,175 @@ +/* quirc -- QR-code recognition library + * Copyright (C) 2010-2012 Daniel Beer + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef QUIRC_H_ +#define QUIRC_H_ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +struct quirc; + +/* Obtain the library version string. */ +const char *quirc_version(void); + +/* Construct a new QR-code recognizer. This function will return NULL + * if sufficient memory could not be allocated. + */ +struct quirc *quirc_new(void); + +/* Destroy a QR-code recognizer. */ +void quirc_destroy(struct quirc *q); + +/* Resize the QR-code recognizer. The size of an image must be + * specified before codes can be analyzed. + * + * This function returns 0 on success, or -1 if sufficient memory could + * not be allocated. + */ +int quirc_resize(struct quirc *q, int w, int h); + +/* These functions are used to process images for QR-code recognition. + * quirc_begin() must first be called to obtain access to a buffer into + * which the input image should be placed. Optionally, the current + * width and height may be returned. + * + * After filling the buffer, quirc_end() should be called to process + * the image for QR-code recognition. The locations and content of each + * code may be obtained using accessor functions described below. + */ +uint8_t *quirc_begin(struct quirc *q, int *w, int *h); +void quirc_end(struct quirc *q); + +/* This structure describes a location in the input image buffer. */ +struct quirc_point { + int x; + int y; +}; + +/* This enum describes the various decoder errors which may occur. */ +typedef enum { + QUIRC_SUCCESS = 0, + QUIRC_ERROR_INVALID_GRID_SIZE, + QUIRC_ERROR_INVALID_VERSION, + QUIRC_ERROR_FORMAT_ECC, + QUIRC_ERROR_DATA_ECC, + QUIRC_ERROR_UNKNOWN_DATA_TYPE, + QUIRC_ERROR_DATA_OVERFLOW, + QUIRC_ERROR_DATA_UNDERFLOW +} quirc_decode_error_t; + +/* Return a string error message for an error code. */ +const char *quirc_strerror(quirc_decode_error_t err); + +/* Limits on the maximum size of QR-codes and their content. */ +#define QUIRC_MAX_BITMAP 3917 +#define QUIRC_MAX_PAYLOAD 8896 + +/* QR-code ECC types. */ +#define QUIRC_ECC_LEVEL_M 0 +#define QUIRC_ECC_LEVEL_L 1 +#define QUIRC_ECC_LEVEL_H 2 +#define QUIRC_ECC_LEVEL_Q 3 + +/* QR-code data types. */ +#define QUIRC_DATA_TYPE_NUMERIC 1 +#define QUIRC_DATA_TYPE_ALPHA 2 +#define QUIRC_DATA_TYPE_BYTE 4 +#define QUIRC_DATA_TYPE_KANJI 8 + +/* Common character encodings */ +#define QUIRC_ECI_ISO_8859_1 1 +#define QUIRC_ECI_IBM437 2 +#define QUIRC_ECI_ISO_8859_2 4 +#define QUIRC_ECI_ISO_8859_3 5 +#define QUIRC_ECI_ISO_8859_4 6 +#define QUIRC_ECI_ISO_8859_5 7 +#define QUIRC_ECI_ISO_8859_6 8 +#define QUIRC_ECI_ISO_8859_7 9 +#define QUIRC_ECI_ISO_8859_8 10 +#define QUIRC_ECI_ISO_8859_9 11 +#define QUIRC_ECI_WINDOWS_874 13 +#define QUIRC_ECI_ISO_8859_13 15 +#define QUIRC_ECI_ISO_8859_15 17 +#define QUIRC_ECI_SHIFT_JIS 20 +#define QUIRC_ECI_UTF_8 26 + +/* This structure is used to return information about detected QR codes + * in the input image. + */ +struct quirc_code { + /* The four corners of the QR-code, from top left, clockwise */ + struct quirc_point corners[4]; + + /* The number of cells across in the QR-code. The cell bitmap + * is a bitmask giving the actual values of cells. If the cell + * at (x, y) is black, then the following bit is set: + * + * cell_bitmap[i >> 3] & (1 << (i & 7)) + * + * where i = (y * size) + x. + */ + int size; + uint8_t cell_bitmap[QUIRC_MAX_BITMAP]; +}; + +/* This structure holds the decoded QR-code data */ +struct quirc_data { + /* Various parameters of the QR-code. These can mostly be + * ignored if you only care about the data. + */ + int version; + int ecc_level; + int mask; + + /* This field is the highest-valued data type found in the QR + * code. + */ + int data_type; + + /* Data payload. For the Kanji datatype, payload is encoded as + * Shift-JIS. For all other datatypes, payload is ASCII text. + */ + uint8_t payload[QUIRC_MAX_PAYLOAD]; + int payload_len; + + /* ECI assignment number */ + uint32_t eci; +}; + +/* Return the number of QR-codes identified in the last processed + * image. + */ +int quirc_count(const struct quirc *q); + +/* Extract the QR-code specified by the given index. */ +void quirc_extract(const struct quirc *q, int index, + struct quirc_code *code); + +/* Decode a QR-code, returning the payload data. */ +quirc_decode_error_t quirc_decode(const struct quirc_code *code, + struct quirc_data *data); +/* flip the QR code horizontaly (mirror flip) */ +void quirc_flip(struct quirc_code *code); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/3rdparty-4.10.0/quirc/include/quirc_internal.h b/3rdparty-4.10.0/quirc/include/quirc_internal.h new file mode 100644 index 0000000..21cd561 --- /dev/null +++ b/3rdparty-4.10.0/quirc/include/quirc_internal.h @@ -0,0 +1,116 @@ +/* quirc -- QR-code recognition library + * Copyright (C) 2010-2012 Daniel Beer + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef QUIRC_INTERNAL_H_ +#define QUIRC_INTERNAL_H_ + +#include + +#define QUIRC_PIXEL_WHITE 0 +#define QUIRC_PIXEL_BLACK 1 +#define QUIRC_PIXEL_REGION 2 + +#ifndef QUIRC_MAX_REGIONS +#define QUIRC_MAX_REGIONS 254 +#endif +#define QUIRC_MAX_CAPSTONES 32 +#define QUIRC_MAX_GRIDS 8 + +#define QUIRC_PERSPECTIVE_PARAMS 8 + +#if QUIRC_MAX_REGIONS < UINT8_MAX +#define QUIRC_PIXEL_ALIAS_IMAGE 1 +typedef uint8_t quirc_pixel_t; +#elif QUIRC_MAX_REGIONS < UINT16_MAX +#define QUIRC_PIXEL_ALIAS_IMAGE 0 +typedef uint16_t quirc_pixel_t; +#else +#error "QUIRC_MAX_REGIONS > 65534 is not supported" +#endif + +struct quirc_region { + struct quirc_point seed; + int count; + int capstone; +}; + +struct quirc_capstone { + int ring; + int stone; + + struct quirc_point corners[4]; + struct quirc_point center; + double c[QUIRC_PERSPECTIVE_PARAMS]; + + int qr_grid; +}; + +struct quirc_grid { + /* Capstone indices */ + int caps[3]; + + /* Alignment pattern region and corner */ + int align_region; + struct quirc_point align; + + /* Timing pattern endpoints */ + struct quirc_point tpep[3]; + int hscan; + int vscan; + + /* Grid size and perspective transform */ + int grid_size; + double c[QUIRC_PERSPECTIVE_PARAMS]; +}; + +struct quirc { + uint8_t *image; + quirc_pixel_t *pixels; + int w; + int h; + + int num_regions; + struct quirc_region regions[QUIRC_MAX_REGIONS]; + + int num_capstones; + struct quirc_capstone capstones[QUIRC_MAX_CAPSTONES]; + + int num_grids; + struct quirc_grid grids[QUIRC_MAX_GRIDS]; +}; + +/************************************************************************ + * QR-code version information database + */ + +#define QUIRC_MAX_VERSION 40 +#define QUIRC_MAX_ALIGNMENT 7 + +struct quirc_rs_params { + int bs; /* Small block size */ + int dw; /* Small data words */ + int ns; /* Number of small blocks */ +}; + +struct quirc_version_info { + int data_bytes; + int apat[QUIRC_MAX_ALIGNMENT]; + struct quirc_rs_params ecc[4]; +}; + +extern const struct quirc_version_info quirc_version_db[QUIRC_MAX_VERSION + 1]; + +#endif diff --git a/3rdparty-4.10.0/quirc/src/decode.c b/3rdparty-4.10.0/quirc/src/decode.c new file mode 100644 index 0000000..39903fa --- /dev/null +++ b/3rdparty-4.10.0/quirc/src/decode.c @@ -0,0 +1,938 @@ +/* quirc -- QR-code recognition library + * Copyright (C) 2010-2012 Daniel Beer + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include + +#include +#include + +#define MAX_POLY 64 + +/************************************************************************ + * Galois fields + */ + +struct galois_field { + int p; + const uint8_t *log; + const uint8_t *exp; +}; + +static const uint8_t gf16_exp[16] = { + 0x01, 0x02, 0x04, 0x08, 0x03, 0x06, 0x0c, 0x0b, + 0x05, 0x0a, 0x07, 0x0e, 0x0f, 0x0d, 0x09, 0x01 +}; + +static const uint8_t gf16_log[16] = { + 0x00, 0x0f, 0x01, 0x04, 0x02, 0x08, 0x05, 0x0a, + 0x03, 0x0e, 0x09, 0x07, 0x06, 0x0d, 0x0b, 0x0c +}; + +static const struct galois_field gf16 = { + .p = 15, + .log = gf16_log, + .exp = gf16_exp +}; + +static const uint8_t gf256_exp[256] = { + 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, + 0x1d, 0x3a, 0x74, 0xe8, 0xcd, 0x87, 0x13, 0x26, + 0x4c, 0x98, 0x2d, 0x5a, 0xb4, 0x75, 0xea, 0xc9, + 0x8f, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0xc0, + 0x9d, 0x27, 0x4e, 0x9c, 0x25, 0x4a, 0x94, 0x35, + 0x6a, 0xd4, 0xb5, 0x77, 0xee, 0xc1, 0x9f, 0x23, + 0x46, 0x8c, 0x05, 0x0a, 0x14, 0x28, 0x50, 0xa0, + 0x5d, 0xba, 0x69, 0xd2, 0xb9, 0x6f, 0xde, 0xa1, + 0x5f, 0xbe, 0x61, 0xc2, 0x99, 0x2f, 0x5e, 0xbc, + 0x65, 0xca, 0x89, 0x0f, 0x1e, 0x3c, 0x78, 0xf0, + 0xfd, 0xe7, 0xd3, 0xbb, 0x6b, 0xd6, 0xb1, 0x7f, + 0xfe, 0xe1, 0xdf, 0xa3, 0x5b, 0xb6, 0x71, 0xe2, + 0xd9, 0xaf, 0x43, 0x86, 0x11, 0x22, 0x44, 0x88, + 0x0d, 0x1a, 0x34, 0x68, 0xd0, 0xbd, 0x67, 0xce, + 0x81, 0x1f, 0x3e, 0x7c, 0xf8, 0xed, 0xc7, 0x93, + 0x3b, 0x76, 0xec, 0xc5, 0x97, 0x33, 0x66, 0xcc, + 0x85, 0x17, 0x2e, 0x5c, 0xb8, 0x6d, 0xda, 0xa9, + 0x4f, 0x9e, 0x21, 0x42, 0x84, 0x15, 0x2a, 0x54, + 0xa8, 0x4d, 0x9a, 0x29, 0x52, 0xa4, 0x55, 0xaa, + 0x49, 0x92, 0x39, 0x72, 0xe4, 0xd5, 0xb7, 0x73, + 0xe6, 0xd1, 0xbf, 0x63, 0xc6, 0x91, 0x3f, 0x7e, + 0xfc, 0xe5, 0xd7, 0xb3, 0x7b, 0xf6, 0xf1, 0xff, + 0xe3, 0xdb, 0xab, 0x4b, 0x96, 0x31, 0x62, 0xc4, + 0x95, 0x37, 0x6e, 0xdc, 0xa5, 0x57, 0xae, 0x41, + 0x82, 0x19, 0x32, 0x64, 0xc8, 0x8d, 0x07, 0x0e, + 0x1c, 0x38, 0x70, 0xe0, 0xdd, 0xa7, 0x53, 0xa6, + 0x51, 0xa2, 0x59, 0xb2, 0x79, 0xf2, 0xf9, 0xef, + 0xc3, 0x9b, 0x2b, 0x56, 0xac, 0x45, 0x8a, 0x09, + 0x12, 0x24, 0x48, 0x90, 0x3d, 0x7a, 0xf4, 0xf5, + 0xf7, 0xf3, 0xfb, 0xeb, 0xcb, 0x8b, 0x0b, 0x16, + 0x2c, 0x58, 0xb0, 0x7d, 0xfa, 0xe9, 0xcf, 0x83, + 0x1b, 0x36, 0x6c, 0xd8, 0xad, 0x47, 0x8e, 0x01 +}; + +static const uint8_t gf256_log[256] = { + 0x00, 0xff, 0x01, 0x19, 0x02, 0x32, 0x1a, 0xc6, + 0x03, 0xdf, 0x33, 0xee, 0x1b, 0x68, 0xc7, 0x4b, + 0x04, 0x64, 0xe0, 0x0e, 0x34, 0x8d, 0xef, 0x81, + 0x1c, 0xc1, 0x69, 0xf8, 0xc8, 0x08, 0x4c, 0x71, + 0x05, 0x8a, 0x65, 0x2f, 0xe1, 0x24, 0x0f, 0x21, + 0x35, 0x93, 0x8e, 0xda, 0xf0, 0x12, 0x82, 0x45, + 0x1d, 0xb5, 0xc2, 0x7d, 0x6a, 0x27, 0xf9, 0xb9, + 0xc9, 0x9a, 0x09, 0x78, 0x4d, 0xe4, 0x72, 0xa6, + 0x06, 0xbf, 0x8b, 0x62, 0x66, 0xdd, 0x30, 0xfd, + 0xe2, 0x98, 0x25, 0xb3, 0x10, 0x91, 0x22, 0x88, + 0x36, 0xd0, 0x94, 0xce, 0x8f, 0x96, 0xdb, 0xbd, + 0xf1, 0xd2, 0x13, 0x5c, 0x83, 0x38, 0x46, 0x40, + 0x1e, 0x42, 0xb6, 0xa3, 0xc3, 0x48, 0x7e, 0x6e, + 0x6b, 0x3a, 0x28, 0x54, 0xfa, 0x85, 0xba, 0x3d, + 0xca, 0x5e, 0x9b, 0x9f, 0x0a, 0x15, 0x79, 0x2b, + 0x4e, 0xd4, 0xe5, 0xac, 0x73, 0xf3, 0xa7, 0x57, + 0x07, 0x70, 0xc0, 0xf7, 0x8c, 0x80, 0x63, 0x0d, + 0x67, 0x4a, 0xde, 0xed, 0x31, 0xc5, 0xfe, 0x18, + 0xe3, 0xa5, 0x99, 0x77, 0x26, 0xb8, 0xb4, 0x7c, + 0x11, 0x44, 0x92, 0xd9, 0x23, 0x20, 0x89, 0x2e, + 0x37, 0x3f, 0xd1, 0x5b, 0x95, 0xbc, 0xcf, 0xcd, + 0x90, 0x87, 0x97, 0xb2, 0xdc, 0xfc, 0xbe, 0x61, + 0xf2, 0x56, 0xd3, 0xab, 0x14, 0x2a, 0x5d, 0x9e, + 0x84, 0x3c, 0x39, 0x53, 0x47, 0x6d, 0x41, 0xa2, + 0x1f, 0x2d, 0x43, 0xd8, 0xb7, 0x7b, 0xa4, 0x76, + 0xc4, 0x17, 0x49, 0xec, 0x7f, 0x0c, 0x6f, 0xf6, + 0x6c, 0xa1, 0x3b, 0x52, 0x29, 0x9d, 0x55, 0xaa, + 0xfb, 0x60, 0x86, 0xb1, 0xbb, 0xcc, 0x3e, 0x5a, + 0xcb, 0x59, 0x5f, 0xb0, 0x9c, 0xa9, 0xa0, 0x51, + 0x0b, 0xf5, 0x16, 0xeb, 0x7a, 0x75, 0x2c, 0xd7, + 0x4f, 0xae, 0xd5, 0xe9, 0xe6, 0xe7, 0xad, 0xe8, + 0x74, 0xd6, 0xf4, 0xea, 0xa8, 0x50, 0x58, 0xaf +}; + +static const struct galois_field gf256 = { + .p = 255, + .log = gf256_log, + .exp = gf256_exp +}; + +/************************************************************************ + * Polynomial operations + */ + +static void poly_add(uint8_t *dst, const uint8_t *src, uint8_t c, + int shift, const struct galois_field *gf) +{ + int i; + int log_c = gf->log[c]; + + if (!c) + return; + + for (i = 0; i < MAX_POLY; i++) { + int p = i + shift; + uint8_t v = src[i]; + + if (p < 0 || p >= MAX_POLY) + continue; + if (!v) + continue; + + dst[p] ^= gf->exp[(gf->log[v] + log_c) % gf->p]; + } +} + +static uint8_t poly_eval(const uint8_t *s, uint8_t x, + const struct galois_field *gf) +{ + int i; + uint8_t sum = 0; + uint8_t log_x = gf->log[x]; + + if (!x) + return s[0]; + + for (i = 0; i < MAX_POLY; i++) { + uint8_t c = s[i]; + + if (!c) + continue; + + sum ^= gf->exp[(gf->log[c] + log_x * i) % gf->p]; + } + + return sum; +} + +/************************************************************************ + * Berlekamp-Massey algorithm for finding error locator polynomials. + */ + +static void berlekamp_massey(const uint8_t *s, int N, + const struct galois_field *gf, + uint8_t *sigma) +{ + uint8_t C[MAX_POLY]; + uint8_t B[MAX_POLY]; + int L = 0; + int m = 1; + uint8_t b = 1; + int n; + + memset(B, 0, sizeof(B)); + memset(C, 0, sizeof(C)); + B[0] = 1; + C[0] = 1; + + for (n = 0; n < N; n++) { + uint8_t d = s[n]; + uint8_t mult; + int i; + + for (i = 1; i <= L; i++) { + if (!(C[i] && s[n - i])) + continue; + + d ^= gf->exp[(gf->log[C[i]] + + gf->log[s[n - i]]) % + gf->p]; + } + + mult = gf->exp[(gf->p - gf->log[b] + gf->log[d]) % gf->p]; + + if (!d) { + m++; + } else if (L * 2 <= n) { + uint8_t T[MAX_POLY]; + + memcpy(T, C, sizeof(T)); + poly_add(C, B, mult, m, gf); + memcpy(B, T, sizeof(B)); + L = n + 1 - L; + b = d; + m = 1; + } else { + poly_add(C, B, mult, m, gf); + m++; + } + } + + memcpy(sigma, C, MAX_POLY); +} + +/************************************************************************ + * Code stream error correction + * + * Generator polynomial for GF(2^8) is x^8 + x^4 + x^3 + x^2 + 1 + */ + +static int block_syndromes(const uint8_t *data, int bs, int npar, uint8_t *s) +{ + int nonzero = 0; + int i; + + memset(s, 0, MAX_POLY); + + for (i = 0; i < npar; i++) { + int j; + + for (j = 0; j < bs; j++) { + uint8_t c = data[bs - j - 1]; + + if (!c) + continue; + + s[i] ^= gf256_exp[((int)gf256_log[c] + + i * j) % 255]; + } + + if (s[i]) + nonzero = 1; + } + + return nonzero; +} + +static void eloc_poly(uint8_t *omega, + const uint8_t *s, const uint8_t *sigma, + int npar) +{ + int i; + + memset(omega, 0, MAX_POLY); + + for (i = 0; i < npar; i++) { + const uint8_t a = sigma[i]; + const uint8_t log_a = gf256_log[a]; + int j; + + if (!a) + continue; + + for (j = 0; j + 1 < MAX_POLY; j++) { + const uint8_t b = s[j + 1]; + + if (i + j >= npar) + break; + + if (!b) + continue; + + omega[i + j] ^= + gf256_exp[(log_a + gf256_log[b]) % 255]; + } + } +} + +static quirc_decode_error_t correct_block(uint8_t *data, + const struct quirc_rs_params *ecc) +{ + int npar = ecc->bs - ecc->dw; + uint8_t s[MAX_POLY]; + uint8_t sigma[MAX_POLY]; + uint8_t sigma_deriv[MAX_POLY]; + uint8_t omega[MAX_POLY]; + int i; + + /* Compute syndrome vector */ + if (!block_syndromes(data, ecc->bs, npar, s)) + return QUIRC_SUCCESS; + + berlekamp_massey(s, npar, &gf256, sigma); + + /* Compute derivative of sigma */ + memset(sigma_deriv, 0, MAX_POLY); + for (i = 0; i + 1 < MAX_POLY; i += 2) + sigma_deriv[i] = sigma[i + 1]; + + /* Compute error evaluator polynomial */ + eloc_poly(omega, s, sigma, npar - 1); + + /* Find error locations and magnitudes */ + for (i = 0; i < ecc->bs; i++) { + uint8_t xinv = gf256_exp[255 - i]; + + if (!poly_eval(sigma, xinv, &gf256)) { + uint8_t sd_x = poly_eval(sigma_deriv, xinv, &gf256); + uint8_t omega_x = poly_eval(omega, xinv, &gf256); + uint8_t error = gf256_exp[(255 - gf256_log[sd_x] + + gf256_log[omega_x]) % 255]; + + data[ecc->bs - i - 1] ^= error; + } + } + + if (block_syndromes(data, ecc->bs, npar, s)) + return QUIRC_ERROR_DATA_ECC; + + return QUIRC_SUCCESS; +} + +/************************************************************************ + * Format value error correction + * + * Generator polynomial for GF(2^4) is x^4 + x + 1 + */ + +#define FORMAT_MAX_ERROR 3 +#define FORMAT_SYNDROMES (FORMAT_MAX_ERROR * 2) +#define FORMAT_BITS 15 + +static int format_syndromes(uint16_t u, uint8_t *s) +{ + int i; + int nonzero = 0; + + memset(s, 0, MAX_POLY); + + for (i = 0; i < FORMAT_SYNDROMES; i++) { + int j; + + s[i] = 0; + for (j = 0; j < FORMAT_BITS; j++) + if (u & (1 << j)) + s[i] ^= gf16_exp[((i + 1) * j) % 15]; + + if (s[i]) + nonzero = 1; + } + + return nonzero; +} + +static quirc_decode_error_t correct_format(uint16_t *f_ret) +{ + uint16_t u = *f_ret; + int i; + uint8_t s[MAX_POLY]; + uint8_t sigma[MAX_POLY]; + + /* Evaluate U (received codeword) at each of alpha_1 .. alpha_6 + * to get S_1 .. S_6 (but we index them from 0). + */ + if (!format_syndromes(u, s)) + return QUIRC_SUCCESS; + + berlekamp_massey(s, FORMAT_SYNDROMES, &gf16, sigma); + + /* Now, find the roots of the polynomial */ + for (i = 0; i < 15; i++) + if (!poly_eval(sigma, gf16_exp[15 - i], &gf16)) + u ^= (1 << i); + + if (format_syndromes(u, s)) + return QUIRC_ERROR_FORMAT_ECC; + + *f_ret = u; + return QUIRC_SUCCESS; +} + +/************************************************************************ + * Decoder algorithm + */ + +struct datastream { + uint8_t raw[QUIRC_MAX_PAYLOAD]; + int data_bits; + int ptr; + + uint8_t data[QUIRC_MAX_PAYLOAD]; +}; + +static inline int grid_bit(const struct quirc_code *code, int x, int y) +{ + int p = y * code->size + x; + + return (code->cell_bitmap[p >> 3] >> (p & 7)) & 1; +} + +static quirc_decode_error_t read_format(const struct quirc_code *code, + struct quirc_data *data, int which) +{ + int i; + uint16_t format = 0; + uint16_t fdata; + quirc_decode_error_t err; + + if (which) { + for (i = 0; i < 7; i++) + format = (format << 1) | + grid_bit(code, 8, code->size - 1 - i); + for (i = 0; i < 8; i++) + format = (format << 1) | + grid_bit(code, code->size - 8 + i, 8); + } else { + static const int xs[15] = { + 8, 8, 8, 8, 8, 8, 8, 8, 7, 5, 4, 3, 2, 1, 0 + }; + static const int ys[15] = { + 0, 1, 2, 3, 4, 5, 7, 8, 8, 8, 8, 8, 8, 8, 8 + }; + + for (i = 14; i >= 0; i--) + format = (format << 1) | grid_bit(code, xs[i], ys[i]); + } + + format ^= 0x5412; + + err = correct_format(&format); + if (err) + return err; + + fdata = format >> 10; + data->ecc_level = fdata >> 3; + data->mask = fdata & 7; + + return QUIRC_SUCCESS; +} + +static int mask_bit(int mask, int i, int j) +{ + switch (mask) { + case 0: return !((i + j) % 2); + case 1: return !(i % 2); + case 2: return !(j % 3); + case 3: return !((i + j) % 3); + case 4: return !(((i / 2) + (j / 3)) % 2); + case 5: return !((i * j) % 2 + (i * j) % 3); + case 6: return !(((i * j) % 2 + (i * j) % 3) % 2); + case 7: return !(((i * j) % 3 + (i + j) % 2) % 2); + } + + return 0; +} + +static int reserved_cell(int version, int i, int j) +{ + const struct quirc_version_info *ver = &quirc_version_db[version]; + int size = version * 4 + 17; + int ai = -1, aj = -1, a; + + /* Finder + format: top left */ + if (i < 9 && j < 9) + return 1; + + /* Finder + format: bottom left */ + if (i + 8 >= size && j < 9) + return 1; + + /* Finder + format: top right */ + if (i < 9 && j + 8 >= size) + return 1; + + /* Exclude timing patterns */ + if (i == 6 || j == 6) + return 1; + + /* Exclude version info, if it exists. Version info sits adjacent to + * the top-right and bottom-left finders in three rows, bounded by + * the timing pattern. + */ + if (version >= 7) { + if (i < 6 && j + 11 >= size) + return 1; + if (i + 11 >= size && j < 6) + return 1; + } + + /* Exclude alignment patterns */ + for (a = 0; a < QUIRC_MAX_ALIGNMENT && ver->apat[a]; a++) { + int p = ver->apat[a]; + + if (abs(p - i) < 3) + ai = a; + if (abs(p - j) < 3) + aj = a; + } + + if (ai >= 0 && aj >= 0) { + a--; + if (ai > 0 && ai < a) + return 1; + if (aj > 0 && aj < a) + return 1; + if (aj == a && ai == a) + return 1; + } + + return 0; +} + +static void read_bit(const struct quirc_code *code, + struct quirc_data *data, + struct datastream *ds, int i, int j) +{ + int bitpos = ds->data_bits & 7; + int bytepos = ds->data_bits >> 3; + int v = grid_bit(code, j, i); + + if (mask_bit(data->mask, i, j)) + v ^= 1; + + if (v) + ds->raw[bytepos] |= (0x80 >> bitpos); + + ds->data_bits++; +} + +static void read_data(const struct quirc_code *code, + struct quirc_data *data, + struct datastream *ds) +{ + int y = code->size - 1; + int x = code->size - 1; + int dir = -1; + + while (x > 0) { + if (x == 6) + x--; + + if (!reserved_cell(data->version, y, x)) + read_bit(code, data, ds, y, x); + + if (!reserved_cell(data->version, y, x - 1)) + read_bit(code, data, ds, y, x - 1); + + y += dir; + if (y < 0 || y >= code->size) { + dir = -dir; + x -= 2; + y += dir; + } + } +} + +static quirc_decode_error_t codestream_ecc(struct quirc_data *data, + struct datastream *ds) +{ + const struct quirc_version_info *ver = + &quirc_version_db[data->version]; + const struct quirc_rs_params *sb_ecc = &ver->ecc[data->ecc_level]; + struct quirc_rs_params lb_ecc; + const int lb_count = + (ver->data_bytes - sb_ecc->bs * sb_ecc->ns) / (sb_ecc->bs + 1); + const int bc = lb_count + sb_ecc->ns; + const int ecc_offset = sb_ecc->dw * bc + lb_count; + int dst_offset = 0; + int i; + + memcpy(&lb_ecc, sb_ecc, sizeof(lb_ecc)); + lb_ecc.dw++; + lb_ecc.bs++; + + for (i = 0; i < bc; i++) { + uint8_t *dst = ds->data + dst_offset; + const struct quirc_rs_params *ecc = + (i < sb_ecc->ns) ? sb_ecc : &lb_ecc; + const int num_ec = ecc->bs - ecc->dw; + quirc_decode_error_t err; + int j; + + for (j = 0; j < ecc->dw; j++) + dst[j] = ds->raw[j * bc + i]; + for (j = 0; j < num_ec; j++) + dst[ecc->dw + j] = ds->raw[ecc_offset + j * bc + i]; + + err = correct_block(dst, ecc); + if (err) + return err; + + dst_offset += ecc->dw; + } + + ds->data_bits = dst_offset * 8; + + return QUIRC_SUCCESS; +} + +static inline int bits_remaining(const struct datastream *ds) +{ + return ds->data_bits - ds->ptr; +} + +static int take_bits(struct datastream *ds, int len) +{ + int ret = 0; + + while (len && (ds->ptr < ds->data_bits)) { + uint8_t b = ds->data[ds->ptr >> 3]; + int bitpos = ds->ptr & 7; + + ret <<= 1; + if ((b << bitpos) & 0x80) + ret |= 1; + + ds->ptr++; + len--; + } + + return ret; +} + +static int numeric_tuple(struct quirc_data *data, + struct datastream *ds, + int bits, int digits) +{ + int tuple; + int i; + + if (bits_remaining(ds) < bits) + return -1; + + tuple = take_bits(ds, bits); + + for (i = digits - 1; i >= 0; i--) { + data->payload[data->payload_len + i] = tuple % 10 + '0'; + tuple /= 10; + } + + data->payload_len += digits; + return 0; +} + +static quirc_decode_error_t decode_numeric(struct quirc_data *data, + struct datastream *ds) +{ + int bits = 14; + int count; + + if (data->version < 10) + bits = 10; + else if (data->version < 27) + bits = 12; + + count = take_bits(ds, bits); + if (data->payload_len + count + 1 > QUIRC_MAX_PAYLOAD) + return QUIRC_ERROR_DATA_OVERFLOW; + + while (count >= 3) { + if (numeric_tuple(data, ds, 10, 3) < 0) + return QUIRC_ERROR_DATA_UNDERFLOW; + count -= 3; + } + + if (count >= 2) { + if (numeric_tuple(data, ds, 7, 2) < 0) + return QUIRC_ERROR_DATA_UNDERFLOW; + count -= 2; + } + + if (count) { + if (numeric_tuple(data, ds, 4, 1) < 0) + return QUIRC_ERROR_DATA_UNDERFLOW; + count--; + } + + return QUIRC_SUCCESS; +} + +static int alpha_tuple(struct quirc_data *data, + struct datastream *ds, + int bits, int digits) +{ + int tuple; + int i; + + if (bits_remaining(ds) < bits) + return -1; + + tuple = take_bits(ds, bits); + + for (i = 0; i < digits; i++) { + static const char *alpha_map = + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:"; + + data->payload[data->payload_len + digits - i - 1] = + alpha_map[tuple % 45]; + tuple /= 45; + } + + data->payload_len += digits; + return 0; +} + +static quirc_decode_error_t decode_alpha(struct quirc_data *data, + struct datastream *ds) +{ + int bits = 13; + int count; + + if (data->version < 10) + bits = 9; + else if (data->version < 27) + bits = 11; + + count = take_bits(ds, bits); + if (data->payload_len + count + 1 > QUIRC_MAX_PAYLOAD) + return QUIRC_ERROR_DATA_OVERFLOW; + + while (count >= 2) { + if (alpha_tuple(data, ds, 11, 2) < 0) + return QUIRC_ERROR_DATA_UNDERFLOW; + count -= 2; + } + + if (count) { + if (alpha_tuple(data, ds, 6, 1) < 0) + return QUIRC_ERROR_DATA_UNDERFLOW; + count--; + } + + return QUIRC_SUCCESS; +} + +static quirc_decode_error_t decode_byte(struct quirc_data *data, + struct datastream *ds) +{ + int bits = 16; + int count; + int i; + + if (data->version < 10) + bits = 8; + + count = take_bits(ds, bits); + if (data->payload_len + count + 1 > QUIRC_MAX_PAYLOAD) + return QUIRC_ERROR_DATA_OVERFLOW; + if (bits_remaining(ds) < count * 8) + return QUIRC_ERROR_DATA_UNDERFLOW; + + for (i = 0; i < count; i++) + data->payload[data->payload_len++] = take_bits(ds, 8); + + return QUIRC_SUCCESS; +} + +static quirc_decode_error_t decode_kanji(struct quirc_data *data, + struct datastream *ds) +{ + int bits = 12; + int count; + int i; + + if (data->version < 10) + bits = 8; + else if (data->version < 27) + bits = 10; + + count = take_bits(ds, bits); + if (data->payload_len + count * 2 + 1 > QUIRC_MAX_PAYLOAD) + return QUIRC_ERROR_DATA_OVERFLOW; + if (bits_remaining(ds) < count * 13) + return QUIRC_ERROR_DATA_UNDERFLOW; + + for (i = 0; i < count; i++) { + int d = take_bits(ds, 13); + int msB = d / 0xc0; + int lsB = d % 0xc0; + int intermediate = (msB << 8) | lsB; + uint16_t sjw; + + if (intermediate + 0x8140 <= 0x9ffc) { + /* bytes are in the range 0x8140 to 0x9FFC */ + sjw = intermediate + 0x8140; + } else { + /* bytes are in the range 0xE040 to 0xEBBF */ + sjw = intermediate + 0xc140; + } + + data->payload[data->payload_len++] = sjw >> 8; + data->payload[data->payload_len++] = sjw & 0xff; + } + + return QUIRC_SUCCESS; +} + +static quirc_decode_error_t decode_eci(struct quirc_data *data, + struct datastream *ds) +{ + if (bits_remaining(ds) < 8) + return QUIRC_ERROR_DATA_UNDERFLOW; + + data->eci = take_bits(ds, 8); + + if ((data->eci & 0xc0) == 0x80) { + if (bits_remaining(ds) < 8) + return QUIRC_ERROR_DATA_UNDERFLOW; + + data->eci = (data->eci << 8) | take_bits(ds, 8); + } else if ((data->eci & 0xe0) == 0xc0) { + if (bits_remaining(ds) < 16) + return QUIRC_ERROR_DATA_UNDERFLOW; + + data->eci = (data->eci << 16) | take_bits(ds, 16); + } + + return QUIRC_SUCCESS; +} + +static quirc_decode_error_t decode_payload(struct quirc_data *data, + struct datastream *ds) +{ + while (bits_remaining(ds) >= 4) { + quirc_decode_error_t err = QUIRC_SUCCESS; + int type = take_bits(ds, 4); + + switch (type) { + case QUIRC_DATA_TYPE_NUMERIC: + err = decode_numeric(data, ds); + break; + + case QUIRC_DATA_TYPE_ALPHA: + err = decode_alpha(data, ds); + break; + + case QUIRC_DATA_TYPE_BYTE: + err = decode_byte(data, ds); + break; + + case QUIRC_DATA_TYPE_KANJI: + err = decode_kanji(data, ds); + break; + + case 7: + err = decode_eci(data, ds); + break; + + default: + goto done; + } + + if (err) + return err; + + if (!(type & (type - 1)) && (type > data->data_type)) + data->data_type = type; + } +done: + + /* Add nul terminator to all payloads */ + if (data->payload_len >= (int) sizeof(data->payload)) + data->payload_len--; + data->payload[data->payload_len] = 0; + + return QUIRC_SUCCESS; +} + +quirc_decode_error_t quirc_decode(const struct quirc_code *code, + struct quirc_data *data) +{ + quirc_decode_error_t err; + struct datastream ds; + + if ((code->size - 17) % 4) + return QUIRC_ERROR_INVALID_GRID_SIZE; + + memset(data, 0, sizeof(*data)); + memset(&ds, 0, sizeof(ds)); + + data->version = (code->size - 17) / 4; + + if (data->version < 1 || + data->version > QUIRC_MAX_VERSION) + return QUIRC_ERROR_INVALID_VERSION; + + /* Read format information -- try both locations */ + err = read_format(code, data, 0); + if (err) + err = read_format(code, data, 1); + if (err) + return err; + + read_data(code, data, &ds); + err = codestream_ecc(data, &ds); + if (err) + return err; + + err = decode_payload(data, &ds); + if (err) + return err; + + return QUIRC_SUCCESS; +} + +void quirc_flip(struct quirc_code *code) +{ + struct quirc_code flipped; + unsigned int offset = 0; + int y; + int x; + + memset(&flipped, 0, sizeof(flipped)); + for (y = 0; y < code->size; y++) { + for (x = 0; x < code->size; x++) { + if (grid_bit(code, y, x)) { + flipped.cell_bitmap[offset >> 3u] |= (1u << (offset & 7u)); + } + offset++; + } + } + memcpy(&code->cell_bitmap, &flipped.cell_bitmap, sizeof(flipped.cell_bitmap)); +} diff --git a/3rdparty-4.10.0/quirc/src/quirc.c b/3rdparty-4.10.0/quirc/src/quirc.c new file mode 100644 index 0000000..2499f8d --- /dev/null +++ b/3rdparty-4.10.0/quirc/src/quirc.c @@ -0,0 +1,129 @@ +/* quirc -- QR-code recognition library + * Copyright (C) 2010-2012 Daniel Beer + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include +#include +#include + +const char *quirc_version(void) +{ + return "1.0"; +} + +struct quirc *quirc_new(void) +{ + struct quirc *q = malloc(sizeof(*q)); + + memset(q, 0, sizeof(*q)); + return q; +} + +void quirc_destroy(struct quirc *q) +{ + free(q->image); + /* q->pixels may alias q->image when their type representation is of the + same size, so we need to be careful here to avoid a double free */ + if (!QUIRC_PIXEL_ALIAS_IMAGE) + free(q->pixels); + free(q); +} + +int quirc_resize(struct quirc *q, int w, int h) +{ + uint8_t *image = NULL; + quirc_pixel_t *pixels = NULL; + + /* + * XXX: w and h should be size_t (or at least unsigned) as negatives + * values would not make much sense. The downside is that it would break + * both the API and ABI. Thus, at the moment, let's just do a sanity + * check. + */ + if (w < 0 || h < 0) + goto fail; + + /* + * alloc a new buffer for q->image. We avoid realloc(3) because we want + * on failure to be leave `q` in a consistant, unmodified state. + */ + image = calloc(w, h); + if (!image) + goto fail; + + /* compute the "old" (i.e. currently allocated) and the "new" + (i.e. requested) image dimensions */ + size_t olddim = q->w * q->h; + size_t newdim = w * h; + size_t min = (olddim < newdim ? olddim : newdim); + + /* + * copy the data into the new buffer, avoiding (a) to read beyond the + * old buffer when the new size is greater and (b) to write beyond the + * new buffer when the new size is smaller, hence the min computation. + */ + (void)memcpy(image, q->image, min); + + /* alloc a new buffer for q->pixels if needed */ + if (!QUIRC_PIXEL_ALIAS_IMAGE) { + pixels = calloc(newdim, sizeof(quirc_pixel_t)); + if (!pixels) + goto fail; + } + + /* alloc succeeded, update `q` with the new size and buffers */ + q->w = w; + q->h = h; + free(q->image); + q->image = image; + if (!QUIRC_PIXEL_ALIAS_IMAGE) { + free(q->pixels); + q->pixels = pixels; + } + + return 0; + /* NOTREACHED */ +fail: + free(image); + free(pixels); + + return -1; +} + +int quirc_count(const struct quirc *q) +{ + return q->num_grids; +} + +static const char *const error_table[] = { + [QUIRC_SUCCESS] = "Success", + [QUIRC_ERROR_INVALID_GRID_SIZE] = "Invalid grid size", + [QUIRC_ERROR_INVALID_VERSION] = "Invalid version", + [QUIRC_ERROR_FORMAT_ECC] = "Format data ECC failure", + [QUIRC_ERROR_DATA_ECC] = "ECC failure", + [QUIRC_ERROR_UNKNOWN_DATA_TYPE] = "Unknown data type", + [QUIRC_ERROR_DATA_OVERFLOW] = "Data overflow", + [QUIRC_ERROR_DATA_UNDERFLOW] = "Data underflow" +}; + +const char *quirc_strerror(quirc_decode_error_t err) +{ + if ((int) err >= 0) { + if ((unsigned long) err < (unsigned long) (sizeof(error_table) / sizeof(error_table[0]))) + return error_table[err]; + } + + return "Unknown error"; +} diff --git a/3rdparty-4.10.0/quirc/src/version_db.c b/3rdparty-4.10.0/quirc/src/version_db.c new file mode 100644 index 0000000..4242aee --- /dev/null +++ b/3rdparty-4.10.0/quirc/src/version_db.c @@ -0,0 +1,421 @@ +/* quirc -- QR-code recognition library + * Copyright (C) 2010-2012 Daniel Beer + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include + +const struct quirc_version_info quirc_version_db[QUIRC_MAX_VERSION + 1] = { + {0}, + { /* Version 1 */ + .data_bytes = 26, + .apat = {0}, + .ecc = { + {.bs = 26, .dw = 16, .ns = 1}, + {.bs = 26, .dw = 19, .ns = 1}, + {.bs = 26, .dw = 9, .ns = 1}, + {.bs = 26, .dw = 13, .ns = 1} + } + }, + { /* Version 2 */ + .data_bytes = 44, + .apat = {6, 18, 0}, + .ecc = { + {.bs = 44, .dw = 28, .ns = 1}, + {.bs = 44, .dw = 34, .ns = 1}, + {.bs = 44, .dw = 16, .ns = 1}, + {.bs = 44, .dw = 22, .ns = 1} + } + }, + { /* Version 3 */ + .data_bytes = 70, + .apat = {6, 22, 0}, + .ecc = { + {.bs = 70, .dw = 44, .ns = 1}, + {.bs = 70, .dw = 55, .ns = 1}, + {.bs = 35, .dw = 13, .ns = 2}, + {.bs = 35, .dw = 17, .ns = 2} + } + }, + { /* Version 4 */ + .data_bytes = 100, + .apat = {6, 26, 0}, + .ecc = { + {.bs = 50, .dw = 32, .ns = 2}, + {.bs = 100, .dw = 80, .ns = 1}, + {.bs = 25, .dw = 9, .ns = 4}, + {.bs = 50, .dw = 24, .ns = 2} + } + }, + { /* Version 5 */ + .data_bytes = 134, + .apat = {6, 30, 0}, + .ecc = { + {.bs = 67, .dw = 43, .ns = 2}, + {.bs = 134, .dw = 108, .ns = 1}, + {.bs = 33, .dw = 11, .ns = 2}, + {.bs = 33, .dw = 15, .ns = 2} + } + }, + { /* Version 6 */ + .data_bytes = 172, + .apat = {6, 34, 0}, + .ecc = { + {.bs = 43, .dw = 27, .ns = 4}, + {.bs = 86, .dw = 68, .ns = 2}, + {.bs = 43, .dw = 15, .ns = 4}, + {.bs = 43, .dw = 19, .ns = 4} + } + }, + { /* Version 7 */ + .data_bytes = 196, + .apat = {6, 22, 38, 0}, + .ecc = { + {.bs = 49, .dw = 31, .ns = 4}, + {.bs = 98, .dw = 78, .ns = 2}, + {.bs = 39, .dw = 13, .ns = 4}, + {.bs = 32, .dw = 14, .ns = 2} + } + }, + { /* Version 8 */ + .data_bytes = 242, + .apat = {6, 24, 42, 0}, + .ecc = { + {.bs = 60, .dw = 38, .ns = 2}, + {.bs = 121, .dw = 97, .ns = 2}, + {.bs = 40, .dw = 14, .ns = 4}, + {.bs = 40, .dw = 18, .ns = 4} + } + }, + { /* Version 9 */ + .data_bytes = 292, + .apat = {6, 26, 46, 0}, + .ecc = { + {.bs = 58, .dw = 36, .ns = 3}, + {.bs = 146, .dw = 116, .ns = 2}, + {.bs = 36, .dw = 12, .ns = 4}, + {.bs = 36, .dw = 16, .ns = 4} + } + }, + { /* Version 10 */ + .data_bytes = 346, + .apat = {6, 28, 50, 0}, + .ecc = { + {.bs = 69, .dw = 43, .ns = 4}, + {.bs = 86, .dw = 68, .ns = 2}, + {.bs = 43, .dw = 15, .ns = 6}, + {.bs = 43, .dw = 19, .ns = 6} + } + }, + { /* Version 11 */ + .data_bytes = 404, + .apat = {6, 30, 54, 0}, + .ecc = { + {.bs = 80, .dw = 50, .ns = 1}, + {.bs = 101, .dw = 81, .ns = 4}, + {.bs = 36, .dw = 12, .ns = 3}, + {.bs = 50, .dw = 22, .ns = 4} + } + }, + { /* Version 12 */ + .data_bytes = 466, + .apat = {6, 32, 58, 0}, + .ecc = { + {.bs = 58, .dw = 36, .ns = 6}, + {.bs = 116, .dw = 92, .ns = 2}, + {.bs = 42, .dw = 14, .ns = 7}, + {.bs = 46, .dw = 20, .ns = 4} + } + }, + { /* Version 13 */ + .data_bytes = 532, + .apat = {6, 34, 62, 0}, + .ecc = { + {.bs = 59, .dw = 37, .ns = 8}, + {.bs = 133, .dw = 107, .ns = 4}, + {.bs = 33, .dw = 11, .ns = 12}, + {.bs = 44, .dw = 20, .ns = 8} + } + }, + { /* Version 14 */ + .data_bytes = 581, + .apat = {6, 26, 46, 66, 0}, + .ecc = { + {.bs = 64, .dw = 40, .ns = 4}, + {.bs = 145, .dw = 115, .ns = 3}, + {.bs = 36, .dw = 12, .ns = 11}, + {.bs = 36, .dw = 16, .ns = 11} + } + }, + { /* Version 15 */ + .data_bytes = 655, + .apat = {6, 26, 48, 70, 0}, + .ecc = { + {.bs = 65, .dw = 41, .ns = 5}, + {.bs = 109, .dw = 87, .ns = 5}, + {.bs = 36, .dw = 12, .ns = 11}, + {.bs = 54, .dw = 24, .ns = 5} + } + }, + { /* Version 16 */ + .data_bytes = 733, + .apat = {6, 26, 50, 74, 0}, + .ecc = { + {.bs = 73, .dw = 45, .ns = 7}, + {.bs = 122, .dw = 98, .ns = 5}, + {.bs = 45, .dw = 15, .ns = 3}, + {.bs = 43, .dw = 19, .ns = 15} + } + }, + { /* Version 17 */ + .data_bytes = 815, + .apat = {6, 30, 54, 78, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 10}, + {.bs = 135, .dw = 107, .ns = 1}, + {.bs = 42, .dw = 14, .ns = 2}, + {.bs = 50, .dw = 22, .ns = 1} + } + }, + { /* Version 18 */ + .data_bytes = 901, + .apat = {6, 30, 56, 82, 0}, + .ecc = { + {.bs = 69, .dw = 43, .ns = 9}, + {.bs = 150, .dw = 120, .ns = 5}, + {.bs = 42, .dw = 14, .ns = 2}, + {.bs = 50, .dw = 22, .ns = 17} + } + }, + { /* Version 19 */ + .data_bytes = 991, + .apat = {6, 30, 58, 86, 0}, + .ecc = { + {.bs = 70, .dw = 44, .ns = 3}, + {.bs = 141, .dw = 113, .ns = 3}, + {.bs = 39, .dw = 13, .ns = 9}, + {.bs = 47, .dw = 21, .ns = 17} + } + }, + { /* Version 20 */ + .data_bytes = 1085, + .apat = {6, 34, 62, 90, 0}, + .ecc = { + {.bs = 67, .dw = 41, .ns = 3}, + {.bs = 135, .dw = 107, .ns = 3}, + {.bs = 43, .dw = 15, .ns = 15}, + {.bs = 54, .dw = 24, .ns = 15} + } + }, + { /* Version 21 */ + .data_bytes = 1156, + .apat = {6, 28, 50, 72, 92, 0}, + .ecc = { + {.bs = 68, .dw = 42, .ns = 17}, + {.bs = 144, .dw = 116, .ns = 4}, + {.bs = 46, .dw = 16, .ns = 19}, + {.bs = 50, .dw = 22, .ns = 17} + } + }, + { /* Version 22 */ + .data_bytes = 1258, + .apat = {6, 26, 50, 74, 98, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 17}, + {.bs = 139, .dw = 111, .ns = 2}, + {.bs = 37, .dw = 13, .ns = 34}, + {.bs = 54, .dw = 24, .ns = 7} + } + }, + { /* Version 23 */ + .data_bytes = 1364, + .apat = {6, 30, 54, 78, 102, 0}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 4}, + {.bs = 151, .dw = 121, .ns = 4}, + {.bs = 45, .dw = 15, .ns = 16}, + {.bs = 54, .dw = 24, .ns = 11} + } + }, + { /* Version 24 */ + .data_bytes = 1474, + .apat = {6, 28, 54, 80, 106, 0}, + .ecc = { + {.bs = 73, .dw = 45, .ns = 6}, + {.bs = 147, .dw = 117, .ns = 6}, + {.bs = 46, .dw = 16, .ns = 30}, + {.bs = 54, .dw = 24, .ns = 11} + } + }, + { /* Version 25 */ + .data_bytes = 1588, + .apat = {6, 32, 58, 84, 110, 0}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 8}, + {.bs = 132, .dw = 106, .ns = 8}, + {.bs = 45, .dw = 15, .ns = 22}, + {.bs = 54, .dw = 24, .ns = 7} + } + }, + { /* Version 26 */ + .data_bytes = 1706, + .apat = {6, 30, 58, 86, 114, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 19}, + {.bs = 142, .dw = 114, .ns = 10}, + {.bs = 46, .dw = 16, .ns = 33}, + {.bs = 50, .dw = 22, .ns = 28} + } + }, + { /* Version 27 */ + .data_bytes = 1828, + .apat = {6, 34, 62, 90, 118, 0}, + .ecc = { + {.bs = 73, .dw = 45, .ns = 22}, + {.bs = 152, .dw = 122, .ns = 8}, + {.bs = 45, .dw = 15, .ns = 12}, + {.bs = 53, .dw = 23, .ns = 8} + } + }, + { /* Version 28 */ + .data_bytes = 1921, + .apat = {6, 26, 50, 74, 98, 122, 0}, + .ecc = { + {.bs = 73, .dw = 45, .ns = 3}, + {.bs = 147, .dw = 117, .ns = 3}, + {.bs = 45, .dw = 15, .ns = 11}, + {.bs = 54, .dw = 24, .ns = 4} + } + }, + { /* Version 29 */ + .data_bytes = 2051, + .apat = {6, 30, 54, 78, 102, 126, 0}, + .ecc = { + {.bs = 73, .dw = 45, .ns = 21}, + {.bs = 146, .dw = 116, .ns = 7}, + {.bs = 45, .dw = 15, .ns = 19}, + {.bs = 53, .dw = 23, .ns = 1} + } + }, + { /* Version 30 */ + .data_bytes = 2185, + .apat = {6, 26, 52, 78, 104, 130, 0}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 19}, + {.bs = 145, .dw = 115, .ns = 5}, + {.bs = 45, .dw = 15, .ns = 23}, + {.bs = 54, .dw = 24, .ns = 15} + } + }, + { /* Version 31 */ + .data_bytes = 2323, + .apat = {6, 30, 56, 82, 108, 134, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 2}, + {.bs = 145, .dw = 115, .ns = 13}, + {.bs = 45, .dw = 15, .ns = 23}, + {.bs = 54, .dw = 24, .ns = 42} + } + }, + { /* Version 32 */ + .data_bytes = 2465, + .apat = {6, 34, 60, 86, 112, 138, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 10}, + {.bs = 145, .dw = 115, .ns = 17}, + {.bs = 45, .dw = 15, .ns = 19}, + {.bs = 54, .dw = 24, .ns = 10} + } + }, + { /* Version 33 */ + .data_bytes = 2611, + .apat = {6, 30, 58, 86, 114, 142, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 14}, + {.bs = 145, .dw = 115, .ns = 17}, + {.bs = 45, .dw = 15, .ns = 11}, + {.bs = 54, .dw = 24, .ns = 29} + } + }, + { /* Version 34 */ + .data_bytes = 2761, + .apat = {6, 34, 62, 90, 118, 146, 0}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 14}, + {.bs = 145, .dw = 115, .ns = 13}, + {.bs = 46, .dw = 16, .ns = 59}, + {.bs = 54, .dw = 24, .ns = 44} + } + }, + { /* Version 35 */ + .data_bytes = 2876, + .apat = {6, 30, 54, 78, 102, 126, 150}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 12}, + {.bs = 151, .dw = 121, .ns = 12}, + {.bs = 45, .dw = 15, .ns = 22}, + {.bs = 54, .dw = 24, .ns = 39} + } + }, + { /* Version 36 */ + .data_bytes = 3034, + .apat = {6, 24, 50, 76, 102, 128, 154}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 6}, + {.bs = 151, .dw = 121, .ns = 6}, + {.bs = 45, .dw = 15, .ns = 2}, + {.bs = 54, .dw = 24, .ns = 46} + } + }, + { /* Version 37 */ + .data_bytes = 3196, + .apat = {6, 28, 54, 80, 106, 132, 158}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 29}, + {.bs = 152, .dw = 122, .ns = 17}, + {.bs = 45, .dw = 15, .ns = 24}, + {.bs = 54, .dw = 24, .ns = 49} + } + }, + { /* Version 38 */ + .data_bytes = 3362, + .apat = {6, 32, 58, 84, 110, 136, 162}, + .ecc = { + {.bs = 74, .dw = 46, .ns = 13}, + {.bs = 152, .dw = 122, .ns = 4}, + {.bs = 45, .dw = 15, .ns = 42}, + {.bs = 54, .dw = 24, .ns = 48} + } + }, + { /* Version 39 */ + .data_bytes = 3532, + .apat = {6, 26, 54, 82, 110, 138, 166}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 40}, + {.bs = 147, .dw = 117, .ns = 20}, + {.bs = 45, .dw = 15, .ns = 10}, + {.bs = 54, .dw = 24, .ns = 43} + } + }, + { /* Version 40 */ + .data_bytes = 3706, + .apat = {6, 30, 58, 86, 114, 142, 170}, + .ecc = { + {.bs = 75, .dw = 47, .ns = 18}, + {.bs = 148, .dw = 118, .ns = 19}, + {.bs = 45, .dw = 15, .ns = 20}, + {.bs = 54, .dw = 24, .ns = 34} + } + } +}; diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000..dc73617 --- /dev/null +++ b/README.Debian @@ -0,0 +1,41 @@ +Notes for the Debian OpenCV packages +-------------------------------------- + +The opencv package of Debian is divided every function. +This is because a user does not install an unnecessary +unction. For example, the libopencv_video library is not +necessary when Video function is not necessary. + + - libopencv-core* + - libopencv-imgproc* + - libopencv-flann* + - libopencv-features2d* + - libopencv-calib3d* + - libopencv-objdetect* + - libopencv-legacy* + - libopencv-video* + - libopencv-ml* + - libopencv-gpu* + - libopencv-superres* + - libopencv-imgproc* + - libopencv-highgui* + - libopencv-contrib* + - python-opencv + - and transition packages. + +Please install the package including a necessary library +when you want to make a package using opencv. + +And, opencv provides pkg-config file and cmake config file. +It is necessary you build it, and to Build-Depneds on +libopencv-dev package if the package which you want to use +pkg-config or cmake config file. + +When you build it and do not Build-Depends, please be careful +because it becomes the build error. + +We ask an up stream to divide opencv.pc into every function.[0] + + [0]: https://code.ros.org/trac/opencv/ticket/332 + +-- Nobuhiro Iwamatsu Thu, 02 Feb 2012 04:18:49 +0900 diff --git a/README.java b/README.java new file mode 100644 index 0000000..67400b6 --- /dev/null +++ b/README.java @@ -0,0 +1,7 @@ +How to use the Debian OpenCV java packages +---- + +Please see + http://docs.opencv.org/doc/tutorials/introduction/desktop_java/java_dev_intro.html + + ant -DocvJarDir=/usr/share/java/ -DocvLibDir=/usr/lib/ diff --git a/bump-sover.sh b/bump-sover.sh new file mode 100755 index 0000000..c727280 --- /dev/null +++ b/bump-sover.sh @@ -0,0 +1,27 @@ +#!/bin/bash +set -e +debian_dir="$(dirname "$0")" +[ -z "$debian_dir" ] || cd "$debian_dir" +old_sover="$(grep "^Package: libopencv-core[0-9]" control | cut -c24-)" +new_sover="${1:?need new soversion as parameter}" +[[ "$new_sover" = [0-9]* ]] || (echo>&2 "soversion must start with a digit"; exit 1) +if [[ "$old_sover" = "$new_sover" ]] +then + echo nothing to be done: $old_sover == $new_sover + exit 0 +fi +packages=( + $(grep "^Package: lib" control | grep -F "${old_sover}" | cut -c10-) +) +for old_pkg in "${packages[@]}" +do + new_pkg="${old_pkg/${old_sover}/${new_sover}}" + sed_args+=("-e" "s/${old_pkg/./\\.}/${new_pkg}/") + for old_f in ${old_pkg}.* + do + new_f="${old_f/${old_sover}/${new_sover}}" + mv -v "$old_f" "$new_f" + done +done +sed -i "${sed_args[@]}" control + diff --git a/changelog b/changelog new file mode 100644 index 0000000..b68efff --- /dev/null +++ b/changelog @@ -0,0 +1,1903 @@ +opencv (4.10.0+dfsg-3) unstable; urgency=medium + + * No need to install duplicate license information. (Closes: #1041650) + * Properly clean up embedded 3rdparty source code. (Closes: #1046728) + * Explicitly add numpy in the dependency field of python3-opencv. + * Add autopkgtest for cv::boundingRect. (Closes: #1017348) + * Add libtbb-dev to Build-Depends for alpha architecture. (Closes: #1084865) + + -- Mo Zhou Tue, 25 Feb 2025 00:55:44 -0500 + +opencv (4.10.0+dfsg-2) unstable; urgency=medium + + * Upload to unstable and start transition. + + -- Mo Zhou Fri, 14 Feb 2025 13:19:39 -0500 + +opencv (4.10.0+dfsg-1) experimental; urgency=medium + + * New upstream version 4.10.0+dfsg + * copyright: execlude one more lena image from 4.10.0 release. + * Sync the 3rdparty quirc library to 4.10.0 version. + * Bump SOVERSION to 410. + * Rebase existing patches, refresh existing ones and remove merged ones. + * d/rules: Specify WITH_FLATBUFFERS=OFF. + * rules: Delete code for mipsel architecture. + * Update install files: `barcode` module was merged into objdetect. + * Install the new signal module from contrib. + * Remove the Breaks+Replaces introduced during the t64 transition -- + They are no longer needed. + * Bump version in Java package control files. + * Update lintian overrides and copyright file. + * Upload to experimental. + + -- Mo Zhou Tue, 10 Dec 2024 23:40:09 -0500 + +opencv (4.6.0+dfsg-14) unstable; urgency=medium + + * Team upload. + [ Gilles Filippini ] + * New patch python3.12.patch to fix FTBFS with Python 3.12. + Closes: #1076901. + [ Mo Zhou ] + * Fix depends-on-obsolete-package Depends: pkg-config => pkgconf. + + -- Santiago Vila Thu, 15 Aug 2024 19:00:00 +0200 + +opencv (4.6.0+dfsg-13.1) unstable; urgency=medium + + * Non-maintainer upload. + * Rename libraries for 64-bit time_t transition. Closes: #1062839 + + -- Benjamin Drung Thu, 29 Feb 2024 03:07:04 +0000 + +opencv (4.6.0+dfsg-13) unstable; urgency=medium + + * Embed and enable the 3rdparty source for QUIRC as per user request. + * Add several missing build dependencies for libopenjp, libva and imath. + * Patch: remove the downloading function from cmake files. + * Fix obsolete B-D libgl1-mesa-dev => libgl-dev. + * Update copyright and lintian overrides. It's lintian-clean now. + + -- Mo Zhou Sun, 16 Jul 2023 19:20:35 -0700 + +opencv (4.6.0+dfsg-12) unstable; urgency=medium + + * Team upload. + + [ Andreas Beckmann ] + * libopencv-core406: Add Breaks: libopencv-core4.5 for smoother upgrades + from bullseye (Closes: #1035886) + + [ Jochen Sprickerhof ] + * Add upstream patches for CVE-2023-2617 and CVE-2023-2618 (Closes: #1035954) + + -- Jochen Sprickerhof Fri, 12 May 2023 11:40:38 +0200 + +opencv (4.6.0+dfsg-11) unstable; urgency=medium + + * Update d/rules. + Use -DCMAKE_SKIP_RPATH=ON instead of -DCMAKE_BUILD_RPATH_USE_ORIGIN=ON. + (Closes: #1024638) + + -- Nobuhiro Iwamatsu Wed, 01 Mar 2023 10:21:45 +0900 + +opencv (4.6.0+dfsg-10) unstable; urgency=medium + + * Update d/rules. + Add -DCMAKE_BUILD_RPATH_USE_ORIGIN=ON to configure of python extension + (Closes: #1024638) + + -- Nobuhiro Iwamatsu Mon, 16 Jan 2023 11:23:50 +0900 + +opencv (4.6.0+dfsg-9) unstable; urgency=medium + + * Team upload. + * Fix FTBFS on arch any (Closes: #1024507) + + -- Jochen Sprickerhof Sun, 20 Nov 2022 22:22:15 +0100 + +opencv (4.6.0+dfsg-8) unstable; urgency=medium + + * Team upload. + + [ Victor Westerhuis ] + * Build Python extension for all supported versions (Closes: 972566) + * Make binaries build reproducibly + * Make documentation build reproducibly (Closes: #1024482) + + [ Jochen Sprickerhof ] + * Update build dependency + + -- Jochen Sprickerhof Sun, 20 Nov 2022 16:12:59 +0100 + +opencv (4.6.0+dfsg-7) unstable; urgency=medium + + [ Victor Westerhuis ] + * Do not try to download any files while building (Closes: 1019519) + * Support building by directly calling d/rules + * Fix Java architecture test in d/build + * Do not build unused statically linked apps and Java bindings + * Delete useless Build-Depends on libswresample + * Fix building with LAPACK + * Build highgui module with QT support (Closes: 958028) + + [ Mo Zhou ] + * Fix broken symlink for .jar file. (Closes: #1019863) + + -- Mo Zhou Wed, 21 Sep 2022 20:51:42 -0400 + +opencv (4.6.0+dfsg-6) unstable; urgency=medium + + * Team upload. + * Revert "Package ovis module" + Needs libogre-1.12-dev which is not available on mipsel + + -- Jochen Sprickerhof Tue, 09 Aug 2022 09:38:18 +0200 + +opencv (4.6.0+dfsg-5) unstable; urgency=medium + + * Team upload. + * Add patches to fix build (Closes: #1016684) + * Package ovis module + + -- Jochen Sprickerhof Tue, 09 Aug 2022 07:02:57 +0200 + +opencv (4.6.0+dfsg-4) unstable; urgency=medium + + * Team upload. + * Upload to unstable + + -- Jochen Sprickerhof Fri, 01 Jul 2022 22:22:48 +0200 + +opencv (4.6.0+dfsg-3) experimental; urgency=medium + + * Team upload. + * Don't build static Python 3 module + + -- Jochen Sprickerhof Thu, 30 Jun 2022 13:13:22 +0200 + +opencv (4.6.0+dfsg-2) experimental; urgency=medium + + [ Adrian Bunk ] + * Team upload. + * Link with libatomic on architectures that might need it + + [ Jochen Sprickerhof ] + * Clean up old Breaks/Conflicts/Replaces + * Drop versioned dependency (in oldoldstable) + + -- Jochen Sprickerhof Tue, 28 Jun 2022 07:39:59 +0200 + +opencv (4.6.0+dfsg-1) experimental; urgency=medium + + * Team upload. + * Update d/copyright + * Use oversionmangle in d/watch + * Add d/gbp.conf to import component as well + * New upstream version 4.6.0+dfsg (Closes: #1004718) + * Drop patch for debian-specific SOVERSION + * Drop salsa-ci.yml + * Rename packages due to Soname change + * Make libopencv-java unversioned + * Drop old manpages + * Bump policy version (no changes) + * Use dh-sequences + * Remove old files in d/ + + -- Jochen Sprickerhof Fri, 24 Jun 2022 10:06:16 +0200 + +opencv (4.5.4+dfsg-9) unstable; urgency=medium + + * Fix broken symlink + * Apply MA hint + + -- Timo Röhling Tue, 30 Nov 2021 23:32:18 +0100 + +opencv (4.5.4+dfsg-8) unstable; urgency=medium + + * Resolve file conflict with libopencv4.5-jni (Closes: #999760) + + -- Timo Röhling Tue, 30 Nov 2021 13:24:59 +0100 + +opencv (4.5.4+dfsg-7) unstable; urgency=medium + + * Team upload. + * Add patch for Debian Soname in pkg-config (Closes: #1000625) + + -- Jochen Sprickerhof Fri, 26 Nov 2021 09:52:16 +0100 + +opencv (4.5.4+dfsg-6) unstable; urgency=medium + + * Upload to unstable. + + -- Timo Röhling Thu, 25 Nov 2021 22:21:16 +0100 + +opencv (4.5.4+dfsg-5) experimental; urgency=medium + + * Keep package name libopencv4.5-java + + -- Timo Röhling Thu, 25 Nov 2021 20:56:30 +0100 + +opencv (4.5.4+dfsg-4) experimental; urgency=medium + + * Also add -d suffix to jar files (Closes: #999760) + + -- Timo Röhling Fri, 19 Nov 2021 18:43:14 +0100 + +opencv (4.5.4+dfsg-3) experimental; urgency=medium + + * Also add -d suffix to shared library filenames (Closes: #999760) + + -- Timo Röhling Tue, 16 Nov 2021 15:09:55 +0100 + +opencv (4.5.4+dfsg-2) experimental; urgency=medium + + * Team upload. + * Bump SOVERSION to 4.5d after upstream ABI breakage (Closes: #998141) + + -- Timo Röhling Sat, 13 Nov 2021 12:49:30 +0100 + +opencv (4.5.4+dfsg-1) unstable; urgency=medium + + * New upstream version 4.5.4+dfsg. + * Update d/control + - Add dh-sequence-python3 to B-D + + -- Nobuhiro Iwamatsu Mon, 18 Oct 2021 11:54:56 +0900 + +opencv (4.5.3+dfsg-1) unstable; urgency=medium + + * New upstream version 4.5.3+dfsg. + * Add barcode and wechat-qrcode libraries to libopencv-contrib package. + * Add opencv_model_diagnostics to libopencv-dev. + + -- Nobuhiro Iwamatsu Mon, 23 Aug 2021 15:46:54 +0900 + +opencv (4.5.1+dfsg-5) unstable; urgency=medium + + * Team upload. + * Drop depends between library packages (Closes: #979809) + * Drop ${java:Depends}/${java:Recommends} (undefined) + * Update libgdcm-dev arch list (Closes: #987621) + + -- Jochen Sprickerhof Wed, 16 Jun 2021 14:09:47 +0200 + +opencv (4.5.1+dfsg-4) unstable; urgency=medium + + * Team upload. + * Revert "Fix debian-rules-sets-DEB_BUILD_OPTIONS" + * Add more Breaks for old ros-vision-opencv packages + + -- Jochen Sprickerhof Thu, 31 Dec 2020 12:01:15 +0100 + +opencv (4.5.1+dfsg-3) unstable; urgency=medium + + * Team upload. + * Add Breaks for packages encoding old library names + * Fix debian-rules-sets-DEB_BUILD_OPTIONS + * Remove wrong lintian-overrides + * bump policy and debhelper versions + * Add MA hints + + -- Jochen Sprickerhof Wed, 30 Dec 2020 17:24:43 +0100 + +opencv (4.5.1+dfsg-2) unstable; urgency=medium + + [ Mo Zhou ] + * Bump B-D from VTK-7 to VTK-9. + * Add runtime Deps libcharls2 for python3-opencv. (Closes: #978452) + + [ Pino Toscano ] + * Fix FTBFS on architectures without java. (Closes: #978028) + + -- Mo Zhou Tue, 29 Dec 2020 14:45:26 +0800 + +opencv (4.5.1+dfsg-1) unstable; urgency=medium + + * New upstream version 4.5.1+dfsg + * Refresh installation paths for upstream 4.5.1 release. + * Mark libopencv*-{java,jni} as Multi-Arch: no. (Closes: #969957) + * Correct bogus build dependencies on gdcm packages (Closes: #977991) + * Demote libopencv*-java to Recommends for libopencv-dev. (Closes: #969960) + + -- Mo Zhou Thu, 24 Dec 2020 14:03:53 +0800 + +opencv (4.5.0+dfsg-2) unstable; urgency=medium + + * Upload to unstable. + + -- Mo Zhou Tue, 22 Dec 2020 14:47:25 +0800 + +opencv (4.5.0+dfsg-1) experimental; urgency=medium + + * New upstream version 4.5.0+dfsg (Closes: #959526) + * Bump VERSION from 4.4.0->4.5.0 for all control files. + * Install the newly added "mcc" module to libopencv-contrib{4.5,-dev}. + * d/copyright: Global license has been changed into Apache-2.0 + * Deprecate libavresample in favor of libswresample. (Closes: #971330) + * Replace B-D libdc1394-22-dev with libdc1394-dev. (Closes: #970842) + * Bump VTK dep from libvtk6-dev to libvtk7-dev. + * Refresh d/copyright for opencv 4.5.0. + * Update lintian overrides. + + -- Mo Zhou Wed, 02 Dec 2020 17:01:26 +0800 + +opencv (4.4.0+dfsg2-1) experimental; urgency=medium + + * New upstream version 4.4.0+dfsg2 (Closes: #959526) + * Refresh existing patches. + * Bump VERSION from 4.3->4.4 for all control files. + * rules: Add a comment on WITH_QT=OFF. + * rules: Toggle cmake option -DWITH_GPHOTO2=ON. (Closes: #963143) + * d/copyright: Filter out one more lena image. + + -- Mo Zhou Sat, 05 Sep 2020 14:08:36 +0800 + +opencv (4.3.0+dfsg-1) experimental; urgency=medium + + * New upstream version 4.3.0+dfsg + * Bump SOVER from 4.2 to 4.3 for control files. + + -- Mo Zhou Thu, 23 Apr 2020 14:51:13 +0800 + +opencv (4.2.0+dfsg-6) unstable; urgency=medium + + [ Samuel Thibault ] + * Really drop statically linked tests (Closes: #943706) + + [ Andreas Tille ] + * cme fix dpkg-control + * Respect DEB_BUILD_OPTIONS in override_dh_auto_test target (routine-update) + * Remove trailing whitespace in debian/copyright (routine-update) + * Add salsa-ci file (routine-update) + * Use correct machine-readable copyright file URI. + * Add debian/upstream/metadata + * Re-add riscv64 which is not known yet to cme and thus was removed to run cme successfully + + [ Mo Zhou ] + * Really disable building test code and remove bin:libopencv-ts-dev. + * Mark libopencv4.2-java as M-A: foreign. (Closes: #942016) + + -- Mo Zhou Thu, 02 Apr 2020 21:35:38 +0800 + +opencv (4.2.0+dfsg-5) unstable; urgency=medium + + [ Mo Zhou ] + * Enable building with gstreamer as per user request. + * Bump Standards-Version to 4.5.0 (no change). + * Specify Rules-Requires-Root: no. + + [ Aurelien Jarno ] + * Re-enable features disabled on riscv64. (Closes: #951464) + + -- Mo Zhou Tue, 18 Feb 2020 11:31:25 +0800 + +opencv (4.2.0+dfsg-4) unstable; urgency=medium + + * Skip dh_dwz on mipsel architecture. + + -- Mo Zhou Mon, 03 Feb 2020 09:14:53 +0800 + +opencv (4.2.0+dfsg-3) unstable; urgency=medium + + * Upload to unstable. + + -- Mo Zhou Sat, 01 Feb 2020 11:14:25 +0800 + +opencv (4.2.0+dfsg-2) experimental; urgency=medium + + * Remove unnecessary CPU baseline/dispatch flags and use upstream default. + * Stop building examples (-DBUILD_EXAMPLES=OFF) (Closes: #943706) + * Build without Java on several port architectures. + (Thanks Samuel Thibault) (Closes: #948248) + * Initialize autopkgtest: read image via python interface. + * No longer build tests for the shared object build. + * Remove get-orig-source target as uscan is already useful enough. + * Override lintian warnings for libopencv-dev::opencv4.pc . + * Bump debhelper compat level to 12 and deprecate d/compat. + * Update lintian overrides. + + -- Mo Zhou Fri, 10 Jan 2020 16:58:15 +0800 + +opencv (4.2.0+dfsg-1) experimental; urgency=medium + + * New upstream version 4.2.0+dfsg + * control: bump SOVERSION from 4.1 to 4.2 + * Let libopencv4.2-java breaks&replaces libopencv4.1-java. + * Bump SOVERSION for install control files and pom.xml. + * Remove obsolete patch workaround-javadoc-failure.patch . + * Remove obsolete patch cmake-mips-no-msa.patch. + * Add the missing B-D libilmbase-dev. + * Add patch cmake-revert-openexr.patch to prevent FTBFS. + * Add missing B-D python3-bs4. + Make this package buildtable for RISCV64. + * Remove SSE3 and AVX from dynamic dispatching list for amd64. + * Explicitly set WITH_LAPACK and WITH_PROTOBUF to ON, and WITH_QT to OFF. + * Add WITH_NGRAPH=OFF to cmake options. + * Update my email address. + + -- Mo Zhou Tue, 31 Dec 2019 12:33:06 +0800 + +opencv (4.1.2+dfsg-5) unstable; urgency=medium + + [ Bas Couwenberg ] + * Replace libgdbm2-dev with libgdbm-dev, + and libvtkgdcm2-dev with libvtkgdcm-dev. (closes: #944341) + + [ Mo Zhou ] + * Add AVX512_COMMON to amd64 dispatch list, and VFPV3,NEON to arm64 list. + * Exclude gdcm development packages from B-D on non-release architectures. + + [ Gianfranco Costamagna ] + * Remove builddir-static to save some space (Closes: #943706) + + -- Mo Zhou Sun, 24 Nov 2019 16:08:26 +0800 + +opencv (4.1.2+dfsg-4) unstable; urgency=medium + + * Disable MSA (MIPS* arch) to avoid ISA violation. (Closes: #942561) + * Re-enable pkg-config file generation. (Closes: #942562) + * Install the opencv4.pc file to libopencv-dev + + -- Mo Zhou Fri, 18 Oct 2019 14:39:01 +0000 + +opencv (4.1.2+dfsg-3) unstable; urgency=medium + + * Upload to unstable and start transition. + + -- Mo Zhou Wed, 16 Oct 2019 16:46:08 +0800 + +opencv (4.1.2+dfsg-2) experimental; urgency=medium + + * Deprecate the Python2 package: python-opencv. (Closes: #937199) + * Don't run unit tests on mipsel at all. + * Revert "Bump VTK B-D from libvtk6-dev to libvtk7-dev." for portability. + * Rebuild in experimental (Closes: #940483) + + -- Mo Zhou Tue, 15 Oct 2019 11:42:43 +0800 + +opencv (4.1.2+dfsg-1) experimental; urgency=medium + + * New upstream version 4.1.2+dfsg + * Files-Excluded: exclude more Lena images from the source. + * Drop patches for "fixing the atomic linkage". + * Bump version numbers for java files from 4.1.1 to 4.1.2. + * Install the new contrib module dnn_superres. + * Use "noopt" and "-gsplit-dwarf" on mipsel. + + -- Mo Zhou Sun, 13 Oct 2019 16:51:16 +0800 + +opencv (4.1.1+dfsg-3) experimental; urgency=medium + + * Disable parallel build for mips* architectures due to OOM issue. + + -- Mo Zhou Sat, 28 Sep 2019 14:35:37 +0800 + +opencv (4.1.1+dfsg-2) experimental; urgency=medium + + * Enable code path dispatch for SIMD optimization. + * Prevent dh_numpy from generating depends field for every package. + * Copyright: mention different 3rd clauses in BSD-3 licenses. + * Fixup armel FTBFS: + * Cherry-pick 4649728 to fix atomic linkage. + * Cherry-pick c657c6c to fix minor issue in the atomic fix. + * RISCV64: disable gdcm2 support and enable tbb support. (Closes: #924713) + + -- Mo Zhou Fri, 20 Sep 2019 05:22:17 +0000 + +opencv (4.1.1+dfsg-1) experimental; urgency=medium + + * New upstream version 4.1.1+dfsg + * Re-enable dh_auto_tests and keep performance tests disabled. + + Allow some tests to fail. + * Bump OpenCV version number for Java related control files. + * Fix disordered output when building the package: + * Use ninja (-GNinja & B-D) build. + * Avoid parallel d/rules build steps. + * Avoid parallel d/rules configure steps. + * Patch a XML file to circumvent the javadoc build failure. + * Install additional YML files to opencv-data. + + -- Mo Zhou Tue, 27 Aug 2019 06:12:54 +0000 + +opencv (4.1.0+dfsg-1) experimental; urgency=medium + + * New upstream version 4.1.0+dfsg + * Bump SOVERSION from 4.0 to 4.1, and update installation files as well. + * Update OpenCV version to 4.1.0 in pom.xml. + * libopencv4.1-java Breaks&Replaces libopencv4.0-java. + * Patch cmake to prevent it from installing excluded files. + * New "quality" module in contrib. + * Override several lintian warnings. + + -- Mo Zhou Tue, 16 Apr 2019 07:37:32 +0000 + +opencv (4.0.1+dfsg-1~exp1) experimental; urgency=medium + + * New upstream version 4.0.1+dfsg + + Bump package names: 3.4 => 4.0 + + Bump version number for java package installation files. + + libopencv4.0-java breaks & replaces libopencv3.4-java. + * New place-holder packages for "gapi" module (Graph API). + + libopencv-gapi4.0, libopencv-gapi-dev + - Append CMake option WITH_ADE=OFF to disable building gapi, + because WITH_ADE=ON triggers 3rdparty tarball download. + * Remove unused "modules/dnn/3rdparty" exclusion from copyright. + * Bump VTK B-D from libvtk6-dev to libvtk7-dev. + * Remove sed-patch for installed CMake files and update install target. + * Add WITH_OPENCL=on and WITH_OPENGL=on to CMake options. + * Reflect changes of upstream installation layout. + + /usr/include/opencv/ has been completely removed. + + Headers have been moved to /usr/include/opencv4/opencv2/* + * Remove debian/not-installed + * Replace dh_install --fail-missing with override_dh_missing target. + * Fix typo for the -DOPENCV_SKIP_PYTHON_LOADER=ON argument. + * Pkg-config file (deprecated) is no longer provided by libopencv-dev. + * Append myself to copyright holders of debian directory. + * Bump Standards-Version to 4.3.0 (no change). + + -- Mo Zhou Mon, 04 Feb 2019 02:13:51 +0000 + +opencv (3.4.5+dfsg-1~exp1) experimental; urgency=medium + + * New upstream version 3.4.5+dfsg + * Reference bugs forgot to close in changelog of previous revision. + * Add Depends: libilmbase-dev to libopencv-dev to fix missing shlib + deps for binary executables shipped in libopencv-dev. + * Update the list of closed CVEs in the previous changelog section. + Synced with Gianfranco Costamagna's Ubuntu delta (3.2.0+dfsg-5ubuntu1). + * RM README.source, move Files-Excluded to d/copyright (Closes: #862796) + * Breaks+Replaces libopencv3.3-java. (Closes: #880212) + * Bump version string from 344 to 345 for Java stuff and pom.xml + * Amend installation of python files. + * Define OPENCV_SKIP_PYTHON_LOADER=ON. + + -- Mo Zhou Sun, 30 Dec 2018 10:18:57 +0000 + +opencv (3.4.4+dfsg-1~exp1) experimental; urgency=medium + + [ Mattia Rizzolo ] + * d/control: + + Use unversioned Conflicts in libopencv-dev, to force the removal + of some old packages. Closes: #880921 + + Remove dbus-x11 work around now that #878878 is fixed. + + [ Nobuhiro Iwamatsu ] + * Add libvtkgdcm2-dev, libgdcm-tools to Build-Depends. + * Set -DBUILD_PROTOBUF=OFF in CMake options + * Remove patches: + - fix_ftbfs_on_non_linux, support_multiarch, mathjax + - disable_dnn_modern, fix_java_build.patch + * Update module list of contrib, add hfs module to contrib. + * Install usr/share/OpenCV/licenses/SoftFloat-COPYING.txt to libopencv-dev + * Update debhelper compatibility to 11 + * Bump Standards-Version to 4.1.5 + * Change Vcs-Git and Vcs-Browser to salsa + * Update patches/disable_opengl_test_build + * Update patches/change_jquery.js_path + + [ Mo Zhou ] + * New upstream version 3.4.4+dfsg (Closes: #913330) + * Append myself to Uploaders. + * Remove patch disable_opengl_test_build, not useful anymore. + * Sort CMake options in rules. + * Explicitly enable the dnn and face modules in CMake options. + (Closes: #909179) + * Prevent CMake from downloading pre-trained model for face module. (patch) + * Update jar Version in d/pom.xml + * Fix java build/installation by explicitly specifying ANT_EXECUTABLE. + (Ref: #914748) + * Compile then install the text module to the -contrib package. + * New binary package libopencv-dnn3.4, and it's corresponding dev package. + * New shared object libopencv_dnn_objdetect.so in the -contrib package. + * Update d/copyright. + * Misc cleanup: fix metadata syntax error. + * Define PROTOBUF_UPDATE_FILES=ON in cmake options in order to refresh + protobuf related files for the dnn module. + + [ Vulnerabilities Fixed in Upstream 3.4.4 Release ] + * CVE-2016-1516, CVE-2016-1517 (Ref: #872043) + * CVE-2017-12597, CVE-2017-12598, CVE-2017-12599, CVE-2017-12601, + CVE-2017-12603, CVE-2017-12604, CVE-2017-12605, CVE-2017-12606 + (Ref: 872044) + * CVE-2017-12600, CVE-2017-12602 (Ref: #872045) + * CVE-2017-12862 (Ref: #875342) + * CVE-2017-12863 (Ref: #875344) + * CVE-2017-12864 (Ref: #875345) + * CVE-2017-14136 + * CVE-2017-17760 (Ref: #885843) + * CVE-2017-18009 + * CVE-2017-1000450 (Ref: #886282) + * CVE-2018-5268 (Closes: #886674) + * CVE-2018-5269 (Closes: #886675) + + -- Mo Zhou Tue, 27 Nov 2018 14:13:09 +0000 + +opencv (3.3.0+dfsg-1~exp0) experimental; urgency=medium + + * Team upload. + + [ Nobuhiro Iwamatsu ] + * Update to OpenCV 3.3.0. + * Refresh patches. + + Remove fix_VFP_asm patch, applied upstream. + * Disable ITT. + * Disable the dnn module through a CMake option instead of a patch. + * Disable the dnn_modern module. + * Add img_hasn and traking modules to libopencv-contrib. + * Remove valgrind.supp and valgrind_3rdparty.supp. + + [ Mattia Rizzolo ] + * d/patches: + + Drop unused Don-t-check-sphinx-build-version.patch patch file. + + Forward fix_ftbfs_on_non_linux. + * d/rules: + + Handle CPU optimization the way OpenCV 3.3 expects us to. + * Bump debhelper compat level to 10. + + Drop dh --parallel option, now default. + * Drop unused lintian override debian-watch-file-should-mangle-version + * d/patches/fix_java_build.patch: add to fix FTBFS in certain conditions. + * d/control: place libopencv3.3-jni in section java. + * Install maven artifacts with maven-repo-helper so reverse dependencies can + automatically pick the dependency by using ${maven:Depends}. + Thanks to Gilles Filippini for the patch. Closes: #878949 + + -- Mattia Rizzolo Sun, 29 Oct 2017 15:59:18 +0100 + +opencv (3.2.0+dfsg-4.1) unstable; urgency=medium + + * Non-maintainer upload. + * debian/patches: Fix building with ffmpeg 4.0. (Closes: #888386) + + -- Sebastian Ramacher Wed, 11 Jul 2018 22:59:18 +0200 + +opencv (3.2.0+dfsg-4) unstable; urgency=medium + + * Team upload. + * Install maven artifacts with maven-repo-helper so reverse dependencies can + automatically pick the dependency by using ${maven:Depends}. + Thanks to Gilles Filippini for the patch. Closes: #878949 + * d/control: + + Use unversioned Conflicts in libopencv-dev, to force the removal + of some old packages. Closes: #880921 + + Remove dbus-x11 work around now that #878878 is fixed. + + -- Mattia Rizzolo Sat, 11 Nov 2017 13:46:48 +0100 + +opencv (3.2.0+dfsg-3) unstable; urgency=medium + + * Team upload. + * d/p/support_multiarch: forward the patch after a small edit. + * d/p/mathjax: make the MATHJAX_RELPATH option configurable at build time + through cmake, and then forward the patch. + * Despite tbb being available in all linux architectures, we need it in a + version that is not available everywhere, so revert back to enabling it + only on a hand-picked list of architectures. Closes: #878830 + * d/control: work around #878878 in dbus by explictly adding dbus-x11 to + build-deps for !linux. + + -- Mattia Rizzolo Tue, 17 Oct 2017 16:27:02 +0200 + +opencv (3.2.0+dfsg-2) unstable; urgency=medium + + * Team upload. + * d/patches: + + support_x32 patch: drop, it actually did nothing useful. + + fix_ftbfs_on_non_linux: simplify patch, by removing several hunks no + longer needed. + Incidentally, this fixes the FTBFS in x32. Closes: #878705 + * d/rules: + + Enable DICOM support. Closes: #843513 + + tbb is now available in all linux archs, so enable it for all linux-any. + + Enable SSE and SSE2 on all architectures based on a amd64 cpu, not just + amd64 itself + + Use /usr/share/dpkg/architecture.mk instead of calling dpkg-architecture. + + -- Mattia Rizzolo Mon, 16 Oct 2017 23:44:22 +0200 + +opencv (3.2.0+dfsg-1) unstable; urgency=medium + + * Team upload. + * Upload to unstable. + * Bump Standards-Version to 4.1.1: + + Use HTTPS in debian/copyright's Format field. + * Use HTTPS for the Homepage URL. + + -- Mattia Rizzolo Fri, 13 Oct 2017 19:32:01 +0200 + +opencv (3.2.0+dfsg-1~exp2) experimental; urgency=medium + + * Team upload. + * Explicitly disable carotene support to fix FTBFS on arm*. + * Drop conditional enabling of OpenGL, it can't be enabled with GTK+3 + anyway. Closes: #869975 + * Changelog for 3.2.0+dfsg-1~exp2 + + -- Mattia Rizzolo Mon, 31 Jul 2017 10:50:25 +0200 + +opencv (3.2.0+dfsg-1~exp1) experimental; urgency=medium + + * Update to 3.2.0. + - Add freetype and phase_unwrapping modules into libopencv-contrib. + - Disable DNN and tracking module (temporary). + * Add patches/fix_VFP_asm.patch. + * Update Standards-Version to 4.0.0. + + -- Nobuhiro Iwamatsu Thu, 29 Jun 2017 09:42:02 +0900 + +opencv (3.1.0+dfsg1-1~exp1) experimental; urgency=medium + + * Team upload. + + [ Mattia Rizzolo ] + * Rewrite d/copyright using copyright-format 1.0. + * Add Files-Excluded listing the removed files. + * Update watch file, pointing to github. + * Add the contrib modules as a multiple upstream tarball. + * Add new build-dependencies needed by contrib modules. + * Override lintian tag debian-watch-file-should-mangle-version (see #505857). + * override lintian warning package-name-doesnt-match-sonames for + libopencv-contrib. + * Add some DEP-3 descriptions to two patches. + + [ Nobuhiro Iwamatsu ] + * Remove obsolete files of libopencv-legacy. + * Build the opencv_contrib libraries. Closes: #861194 + * Fix Build with HDF5. Add patches/moudles_hdf5.patch + + -- Mattia Rizzolo Wed, 26 Apr 2017 18:17:33 +0200 + +opencv (3.1.0+dfsg-1~exp5) experimental; urgency=medium + + * Team upload. + * wrap-and-sort -ast. + * Add (Build-)Depends on libavresample-dev. + * Add (Build-)Depends on libgphoto2-dev. + * Install usr/include/opencv2/cvconfig.h in libopencv-core-dev. LP: #1315418 + * d/rules: use --fail-missing instead of --list-missing, to be really sure + nothing is left out. + + -- Mattia Rizzolo Mon, 24 Apr 2017 01:35:03 +0200 + +opencv (3.1.0+dfsg-1~exp4) experimental; urgency=medium + + * Team upload. + * debian/rules cleanup: + + Remove rm(1)s that do not seem to do anything (anymore). + + DRY up the BUILDDIR variable. + + Do not mangle BUILDDIR on i386, there should be no need for it. + + Add an override to dh_auto_install to pass the correct BUILDDIR (should + fix FTBFS for kfreebsd-i386 (and probably this is what the original + BUILDDIR mangling is about)). + + Proper calls to clean cmake build products. + + The build system is recognized by debhelper, no need to tell it. + + Use a single cp call to copy the static libs. + + -- Mattia Rizzolo Sun, 23 Apr 2017 22:12:08 +0200 + +opencv (3.1.0+dfsg-1~exp3) experimental; urgency=medium + + * Team upload. + * debian/rules: + + Do not forcefully disable PIE anymore, -pie changed meaning. + Also remove +fortify, as that's on by default anyway. Closes: #859440 + + Drop empty override_dh_fixperms. + + Remove empty directories from the installed tree. + * debian/control: + + Make libopencv-dev suggest opencv-doc. Closes: #806703 + + Drop not needed libgtk2.0-dev dependency of libopencv-highgui-dev. + Closes: #817017 + + Fix installability problem in case of binNMUs. Closes: #844067 + Mark libopencv3.1-java as Breaking/Replacing the 2.4 version. + Closes: #810516 + + Avoid duplicate long descriptions. + * Build a python3 package. Closes: #799262; LP: #1556156 + Thanks to Kota Kato for the initial patch. + * Use dh_numpy instead of hardconding the numpy ABI number. + * Build with GTK+ 3 (instead of GTK+ 2). (Closes: #822607) + * Remove disabled patches + * Refresh patches. + * Remove obsolete lintian override. + + -- Mattia Rizzolo Mon, 03 Apr 2017 22:25:01 +0200 + +opencv (3.1.0+dfsg-1~exp2) experimental; urgency=medium + + * Fix Depends of libopencv-shape3.1 and libopencv-shape-dev. + + -- Nobuhiro Iwamatsu Wed, 19 Oct 2016 09:17:57 +0900 + +opencv (3.1.0+dfsg-1~exp1) experimental; urgency=medium + + * Add old header files into libopencv-dev. + * Update debian/control. + - Add Replaces and Conflicts to libopencv-dev. + - Fix version of libopencv3.1-jni for libopencv3.1-java. + - Fix Depends of libopencv-dev. Add libopencv3.1-java. (Closes: #833616) + - Add libopencv-shape-dev to Depends of libopencv-dev. (Closes: #818738) + - Add libtbb-dev to Depends of libopencv-core-dev. (Closes: #838916) + + -- Nobuhiro Iwamatsu Tue, 18 Oct 2016 06:22:32 +0900 + +opencv (3.1.0+dfsg-1~exp0) experimental; urgency=medium + + * Update to 3.1.0. + * Add patches/disable_opengl_test_build. + * Add libjs-mathjax to Depends of opencv-doc and debian/patches/mathjax. + * Add libjs-jquery to Depends of opencv-doc and add + debian/patches/change_jquery.js_path. + * Update Standards-Version to 3.9.8. + + -- Nobuhiro Iwamatsu Sat, 25 Jun 2016 06:15:45 +0900 + +opencv (3.0.0+dfsg-1~exp7) experimental; urgency=medium + + * Fix libopencv_shape dependencies. + + -- Gianfranco Costamagna Wed, 27 Jul 2016 15:07:29 +0200 + +opencv (3.0.0+dfsg-1~exp6) experimental; urgency=medium + + [ Nobuhiro Iwamatsu ] + * Fix missing install of opencv2/core.hpp + + -- Gianfranco Costamagna Tue, 26 Jul 2016 08:39:25 +0200 + +opencv (3.0.0+dfsg-1~exp5) experimental; urgency=medium + + * Fix libvtk6.3 runtime dependency + + -- Gianfranco Costamagna Sun, 17 Jul 2016 10:08:15 +0200 + +opencv (3.0.0+dfsg-1~exp4) experimental; urgency=medium + + * Upload again on experimental, to build against new gdal 2.1.1 + + -- Gianfranco Costamagna Sat, 16 Jul 2016 10:07:18 +0200 + +opencv (3.0.0+dfsg-1~exp3) experimental; urgency=medium + + [ Andreas Cadhalpun ] + * Fix build with ffmpeg 3.0. (Closes: #803847) + + [ Gianfranco Costamagna ] + * Team upload + * merge unstable NMUs + * rebase ffmpeg patch + * Disable optimize i586 patch, now Debian has i686 + + [ Tobias Frost ] + * Do not use precompiled headers (Closes: #818450) + + [ Mattia Rizzolo ] + * Use HTTPS in Vcs-* fields. + * Disable opengl when building in armhf (in Ubuntu only) + * Don't build with jasper. Closes: #818207 + - This causes libopencv-highgui to lose symbols, but we don't rename the + package because the breakage is in experimental only. + * Fix typo in README.Debian. + * Remove unused lintian override python-script-but-no-python-dep. + + -- Gianfranco Costamagna Fri, 08 Jul 2016 15:43:15 +0200 + +opencv (3.0.0+dfsg-1~exp2) experimental; urgency=medium + + * Fix FTBFS on i386. + * Build with -march=i586 instead of -march=i686 on i386. + Add debian/patches/optimize_i586.patch. + * Fix FTBFS on x32. (Closes: #792264) + Add debian/patches/support_x32. Thanks to Thorsten Glaser . + + -- Nobuhiro Iwamatsu Thu, 07 Jan 2016 23:48:01 +0900 + +opencv (3.0.0+dfsg-1~exp1) experimental; urgency=medium + + * Update to 3.0.0 (Closes: #792677, #805099; LP: #1516985). + * Remove libopencv-legacy and libopencv-contrib. + These features are not provided from the new version. + * Remove old packages (libcv*, libhighgui*, libcvaux*). + * Add support gdal and vtk. + * Enable parallel building. + * Remove image files of Lena (Closes: #794856). + * Add debug packages (Closes: #803404). + + -- Nobuhiro Iwamatsu Thu, 10 Dec 2015 00:07:44 +0900 + +opencv (2.4.11+dfsg-1) unstable; urgency=medium + + * Update to 2.4.11. + * Update debian/control. + - Bumped standards-version to 3.9.6. + * Remove image files of Lena (Closes: #794856) + + -- Nobuhiro Iwamatsu Wed, 09 Dec 2015 00:36:05 +0900 + +opencv (2.4.9.1+dfsg-2.1) unstable; urgency=medium + + * Non-maintainer upload. + * debian/patches: + - Add fix_ftbfs_with_gcc6 to fix FTBFS with gcc-6. (Closes: #828928) + + -- John Paul Adrian Glaubitz Tue, 04 Oct 2016 17:07:49 +0200 + +opencv (2.4.9.1+dfsg-2) unstable; urgency=medium + + * Team upload. + * Use HTTPS in Vcs-* fields. + * Disable opengl when building in armhf (in Ubuntu only) + * Don't build with jasper. Closes: #818207 + This causes libopencv-highgui to lose symbols, so we need to rename the + package and do a transition. + * Fix typo in README.Debian. + * Remove unused lintian override python-script-but-no-python-dep. + * Add missing dependency on libopencv-gpu2.4v5 to libopencv-gpu-dev. + Closes: #825583 + + -- Mattia Rizzolo Mon, 27 Jun 2016 05:08:42 +0000 + +opencv (2.4.9.1+dfsg-1.5) unstable; urgency=medium + + * Non-maintainer upload. + * Do not use precompiled headers (Closes: #818450) + + -- Tobias Frost Thu, 07 Apr 2016 16:43:31 +0200 + +opencv (2.4.9.1+dfsg-1.4) unstable; urgency=medium + + * Non-maintainer upload. + + [ Andreas Cadhalpun ] + * Fix build with ffmpeg 3.0. (Closes: #803847) + + -- Sebastian Ramacher Sun, 06 Mar 2016 23:57:30 +0100 + +opencv (2.4.9.1+dfsg-1.3) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Refresh debian/patches: + - Update change_type_from_int_to_Atomic_word to fix + FTBFS on sparc64. (Closes: #714923) + - Re-add fix_without_sysctl.patch to fix FTBFS on x32. (Closes: #792264) + + -- John Paul Adrian Glaubitz Mon, 08 Feb 2016 10:51:45 +0100 + +opencv (2.4.9.1+dfsg-1.2) unstable; urgency=medium + + * Non-maintainer upload. + * Rename library packages for g++5 ABI transition. + Patch provided by Matthias Klose. (Closes: #791226) + * Remove Lintian overrides from Matthias' patch, current Lintian accepts + v5 package names as-is. + * Build-depend on the version of openexr that started its transition. + * Add patch to stop checking the version of sphinx-build (which makes + no difference anyway), fixing arch-indep build (#792715; not closing + that bug here because it is unclear whether it is considered to be a + sphinx bug). + * Deliberately not addressing #794856 in this upload, since it requires + repacking the orig.tar and is not a regression. + + -- Simon McVittie Wed, 19 Aug 2015 22:36:43 +0100 + +opencv (2.4.9.1+dfsg-1.1) unstable; urgency=medium + + * Non-maintainer upload. + + [ Bernhard Übelacker ] + * Build with -march=i586 instead of -march=i686 on i386. (Closes: #784647) + + -- Sebastian Ramacher Fri, 15 May 2015 21:34:12 +0200 + +opencv (2.4.9.1+dfsg-1) unstable; urgency=medium + + * New upstream release. + * Add support ppc64el. (Closes: #754094) + + -- Nobuhiro Iwamatsu Fri, 19 Sep 2014 11:04:13 +0900 + +opencv (2.4.9+dfsg-1) unstable; urgency=medium + + * New upstream release. (Closes:#753689) + + -- Nobuhiro Iwamatsu Tue, 01 Jul 2014 07:58:34 +0900 + +opencv (2.4.8+dfsg1-2.2) unstable; urgency=medium + + * Non-maintainer upload. + * Fix version in symbolic links for libopencv2.4-java (closes: #747500) + + -- Gilles Filippini Wed, 21 May 2014 07:52:52 +0200 + +opencv (2.4.8+dfsg1-2.1) unstable; urgency=medium + + * Non-maintainer upload. + * Add libav10.patch by Anton Khirnov to allow compilation against + Libav10 (Closes: #739440) + + -- Reinhard Tartler Sun, 11 May 2014 09:57:31 -0400 + +opencv (2.4.8+dfsg1-2) unstable; urgency=medium + + * Update debian/control. + - Add libopencv-java and libopencv-jni to Depends of libopencv-dev. + - Update depends of libopencv-jni, libopencv-java and libopencv-dev. + * Update debian/libopencv2.4-jni.install. + Fix install path of libopencv_java248.so + * Update debian/rules. + Fix install path of jni library. + + -- Nobuhiro Iwamatsu Tue, 18 Feb 2014 06:16:59 +0900 + +opencv (2.4.8+dfsg1-1) unstable; urgency=low + + * Update to new source. + Remove Milky directory in modules/highgui/src/files_Qt/. + * Update debian/control. + Add libopencv-ocl-dev to Depends of libopencv-dev. (Closes: #737584) + * Update libopencv-dev.install. + Install OpenCVModules-release.cmake and OpenCVModules.cmake. + (Closes: #737153) + + -- Nobuhiro Iwamatsu Wed, 12 Feb 2014 16:37:21 +0900 + +opencv (2.4.8+dfsg-1) unstable; urgency=low + + * New upstream release. + + -- Nobuhiro Iwamatsu Tue, 14 Jan 2014 12:28:02 +0900 + +opencv (2.4.7+dfsg-1) unstable; urgency=low + + * New upstream release. (Closes: #732063) + * Add patches/revert-Make-ts-always-static. + * Add ocl library. (Closes: #732028, #720092) + * Add java library. (Closes: #728221) + * Update debian/control. + - Remove Vcs-Svn field and add Vcs-Git field. + - Update Vcs-Browser field. + - Update Homepage field. + - Bumped standards-version to 3.9.5. + + -- Nobuhiro Iwamatsu Tue, 03 Dec 2013 08:17:57 +0900 + +opencv (2.4.6.1+dfsg-2) unstable; urgency=low + + [ Anton Gladky ] + * Replace libeigen2-dev by libeigen3-dev. (Closes: #726155) + + [ Nobuhiro Iwamatsu ] + * FTBFS on sparc64. (Closes: #714923) + Add patches/change_type_from_int_to_Atomic_word. + + -- Nobuhiro Iwamatsu Sat, 23 Nov 2013 11:31:08 +0900 + +opencv (2.4.6.1+dfsg-1) unstable; urgency=low + + * Upload to unstable. (Closes: #719998, #716811) + + -- Nobuhiro Iwamatsu Mon, 23 Sep 2013 06:28:00 +0900 + +opencv (2.4.6.1+dfsg-0exp4) experimental; urgency=low + + * Update debian/control. + - Fix fails to upgrade from testing by opencv-data. (Closes: #722927) + - Change Vcs host to anonscm.debian.org. + + -- Nobuhiro Iwamatsu Fri, 20 Sep 2013 08:16:39 +0900 + +opencv (2.4.6.1+dfsg-0exp3) experimental; urgency=low + + * Update patches/pkg-config. (Closes: #678222, #721894) + Fix broken pkg-config file. + + -- Nobuhiro Iwamatsu Fri, 06 Sep 2013 13:51:39 +0900 + +opencv (2.4.6.1+dfsg-0exp2) unstable; urgency=low + + * Update debian/rules. + - Move configuration for 1394 and V4L to CMAKE_ARCH_FLAGS. + Thanks to Pino Toscano. + - Change from target name from override_dh_fixperms to + override_dh_fixperms-indep. + * Add fix_ftbfs_on_non_linux.patch. + Fix FTBFS on non linux. (Closes: #719741) + + -- Nobuhiro Iwamatsu Wed, 04 Sep 2013 10:22:46 +0900 + +opencv (2.4.6.1+dfsg-0exp1) experimental; urgency=low + + * New upstream release. + * Update debian/control. + - Add libgtkglext1-dev, libgl1-mesa-dev and libglu1-mesa-dev + to Build-Depends. + - Remove swig from Build-Depends. + * Update debian/rules. + - Enable OpenGL. + * Update patches. + + -- Nobuhiro Iwamatsu Wed, 07 Aug 2013 12:37:41 +0900 + +opencv (2.4.5+dfsg-0exp1) experimental; urgency=low + + * New upstream release. (Closes: #716811) + * Update debian/control. + - Add support all arch with TBB support. (Closes: 701195) + - Add opencv-data. Move haarcascades and lbpcascades's data to this. + (Closes: #711385) + * Update debian/rules. + - Add python2 to dh of sequence. + + -- Nobuhiro Iwamatsu Fri, 12 Jul 2013 13:00:43 +0900 + +opencv (2.4.3+dfsg-1) experimental; urgency=low + + * New upstream release. + + -- Nobuhiro Iwamatsu Mon, 10 Dec 2012 01:01:14 +0900 + +opencv (2.4.2+dfsg-0exp2) experimental; urgency=low + + * Update debian/control. + - Dump cmake version to 2.8.7. + When old cmake is used, building failed. + * Update libopencv-core-dev.install. + - Add opencv2/opencv_modules.hpp. + + -- Nobuhiro Iwamatsu Tue, 24 Jul 2012 12:22:11 +0900 + +opencv (2.4.2+dfsg-0exp1) experimental; urgency=low + + * New upstream release. + * Update debian/control. + - Changed Depends from libtiff4-dev to libtiff-dev. (Closes: #682238) + - Support eigen2. Add libeigen2-dev to Build-Depends. + * Update install file. + Change path of samples and add python2. + * Update debian/rules. + - Remove chmod line. Removed build_all.sh. + - Add -r for option of rm command. + * Update patches/build-static-libs.patch + + -- Nobuhiro Iwamatsu Mon, 16 Jul 2012 04:03:56 +0900 + +opencv (2.4.1+dfsg-0exp2) experimental; urgency=low + + * Update package description. + * Add patches/pkg-config.patch. + This changed library specification method in pkgconfig. + + -- Nobuhiro Iwamatsu Tue, 26 Jun 2012 16:19:21 +0900 + +opencv (2.4.1+dfsg-0exp1) experimental; urgency=low + + * New upstream release. + * Update debian/rules. + - Enable hardening option. + * Update debian/control. + - Fix wrong package name. + - Add python-numpy-abi9 and python-numpy (>= 1:1.6.1) to python-opencv. + Fix lintian error for missing-dependency-on-numpy-abi. + + -- Nobuhiro Iwamatsu Thu, 07 Jun 2012 08:54:31 +0900 + +opencv (2.4.0+dfsg-0exp1) experimental; urgency=low + + * New upstream release. (Closes: 671377) + - Add stitching, ts, videostab and photo packages. + - Remove gpu package. + * Update debian/control. + - Bumped Standards-Version to 3.9.3. No changes needed. + - Update Homepage field. + * Update debian/rules. + - Remove unnecessary option of build config. + * Update patches. + - 0005-build-static-libs.patch + - 0007-typos-in-strings-docs.patch + - 0013_drop_asm_types_h_kfreebsd.patch + + -- Nobuhiro Iwamatsu Wed, 23 May 2012 12:42:17 +0900 + +opencv (2.3.1-10) unstable; urgency=high + + * Update debian/control. + - Add Replaces and Breaks of libopencv-core-dev to libopencv-dev. + (Closes: #674242) + - Cleanup Depends of packages. + + -- Nobuhiro Iwamatsu Tue, 29 May 2012 08:43:39 +0900 + +opencv (2.3.1-9) unstable; urgency=low + + * Update debian/control. + - pkg-config and binarys move from libopencv-core-dev to libopencv-dev. + (Closes: #671376, #658197) + - Drop Replaces and Breaks from libopencv-core-dev. (Closes: #668708) + + -- Nobuhiro Iwamatsu Tue, 22 May 2012 12:17:09 +0900 + +opencv (2.3.1-8) unstable; urgency=low + + * Add support TBB. + * Fix getting value of dpkg-architecture. + + -- Nobuhiro Iwamatsu Thu, 02 Feb 2012 12:40:01 +0900 + +opencv (2.3.1-7) unstable; urgency=low + + * Update debian/libopencv-core-dev.install. + - Change install path of OpenCVConfig.cmake from usr/share/opencv/ + to usr/share/OpenCV. (Closes: #658196) + - usr/share/OpenCV/OpenCVConfig-version.cmake was added to the + installation file of libopencv-core-dev. + * Add debian/*-dev.docs. + This provides README.Debian with *-dev packages. + + -- Nobuhiro Iwamatsu Thu, 02 Feb 2012 02:39:05 +0900 + +opencv (2.3.1-6) unstable; urgency=low + + * Fix installation of usr/include/opencv2/opencv.hpp. (Closes: #656860) + Update debian/libopencv-core-dev.install. + * Remove old build flags and add optimize flag for amd64. + + -- Nobuhiro Iwamatsu Tue, 31 Jan 2012 08:08:00 +0900 + +opencv (2.3.1-5) unstable; urgency=low + + * Fix FTBFS with libav 0.8. (Closes: #654220) + Add patches/0014_fix_ftbfs_libav0.8.patch. + * Update debian/control. + Add python-sphinx to Build-Depends. + + -- Nobuhiro Iwamatsu Fri, 27 Jan 2012 05:36:29 +0900 + +opencv (2.3.1-4) unstable; urgency=low + + * Update patches/0013_drop_asm_types_h_kfreebsd.patch. + Drop , not . + + -- Nobuhiro Iwamatsu Wed, 21 Dec 2011 17:01:12 +0900 + +opencv (2.3.1-3) unstable; urgency=low + + * Update debian/README.Debian. + * Update debian/control. + - Update Depends package for libopencv-dev. + * Fix build on kfreeBSD. (Closes: #651872) + Update patches/0013_drop_asm_types_h_kfreebsd.patch. + Thanks to Julien Cristau. + + -- Nobuhiro Iwamatsu Wed, 21 Dec 2011 12:02:10 +0900 + +opencv (2.3.1-2) unstable; urgency=low + + * Update debian/control. + - Adjusted version for Replaces and Breaks of libopencv-core-dev. + (Closes: #651988). Thanks to Ansgar Burchardt. + * Fix build on kfreeBSD. (Closes: #651872) + Add patches/0013_drop_asm_types_h_kfreebsd.patch. + Thanks to Julien Cristau. + + -- Nobuhiro Iwamatsu Tue, 20 Dec 2011 17:10:11 +0900 + +opencv (2.3.1-1) unstable; urgency=low + + * Upload to unstable. + * Update debian/control. + Switch Build-Depends from libong62-dev to libpng-dev. + + -- Nobuhiro Iwamatsu Mon, 12 Dec 2011 12:06:57 +0900 + +opencv (2.3.1-0exp1) experimental; urgency=low + + * New upstream release. + * Update debian/control. + - Fix uses hardcoded list of non-Linux architectures in debian/control. + (Closes: #634365) + * Add lintian overrides files. + * Update install files. + * Update and remove some patches. + - Update patches/0005-build-static-libs.patch. + - Update patches/0007-typos-in-strings-docs.patch. + - Update patches/0011_optimize_i486.patch. + - Remove patches/0001-fix_3rdparty_build.patch. + - Remove patches/0006-typos-in-license.patch. + - Remove patches/0012_cvcap_ffmpeg_fix_compile_against_libav0.7.patch. + + -- Nobuhiro Iwamatsu Thu, 25 Aug 2011 12:04:49 +0900 + +opencv (2.3.0-0exp4) experimental; urgency=low + + * Fix FTBFS with libav 0.7. (Closes: #634818) + Add patches/vcap_ffmpeg_fix_compile_against_libav0.7.patch. + + -- Nobuhiro Iwamatsu Wed, 27 Jul 2011 01:51:25 +0900 + +opencv (2.3.0-0exp3) experimental; urgency=low + + * Add libopencv-dev package. + This is a meta package providing development package necessary for + development of OpenCV (Open Computer Vision). + + -- Nobuhiro Iwamatsu Fri, 15 Jul 2011 02:46:05 +0900 + +opencv (2.3.0-0exp2) experimental; urgency=low + + * Update debian/control + - Switch Build-Depends from libjpeg62-dev to libjpeg-dev for libjpeg8 + transition. + - Add zlib1g-dev Build-Depends of libopencv-core-dev. + - Add some development package to Build-Depends of libopencv-highgui-dev. + + -- Nobuhiro Iwamatsu Tue, 12 Jul 2011 08:54:37 +0900 + +opencv (2.3.0-0exp1) experimental; urgency=low + + * New upstream release. + - Update install files. + - Update some patches for 2.3. + patches/0005-build-static-libs.patch + patches/0001-fix_3rdparty_build.patch + patches/0011_optimize_i486.patch + - Remove some patches revised in upstream. + patches/0002-fix_build_pdf.patch patches/0003-hurd.patch + patches/0004-fix_stdint_gcc45.patch patches/0009_support_v4lv2_only.patch + patches/0008_fix_ftbfs_with_gcc-4.6.patch patches/0010_fix_ftbs_png15.patch + * Update debian/control. + - Update depends of packages. + * Update debian/rules. + - Update path of hdr_parser.pyc from modules/python to + modules/python/src2. + + -- Nobuhiro Iwamatsu Wed, 06 Jul 2011 09:47:09 +0900 + +opencv (2.2.0-0exp2) experimental; urgency=low + + * Add libopencv-contrib-dev to Depends of libcvaux-dev (Closes: #632439). + Thanks to Mark Purcell. + * Arranged the dependence. + + -- Nobuhiro Iwamatsu Tue, 05 Jul 2011 13:30:06 +0900 + +opencv (2.2.0-0exp1) experimental; urgency=low + + * New upstream release. (Closes: #623532, #563428, #604642) + - Update, refresh and prune debian/patches. + - Account for upstream splitting/renaming libs: + + generate N dynamic library packages. + + name all library package as libopencv-*. + - Update debian/copyright. + - Remove debian/README.source. + - Update debian/*.install scripts. + - Update lintian overrides. + - Add libv4l-dev to Build-Depends. + * Bump to dh 8. + * Switch to source format 3.0 (quilt). + * Patch minor upstream typos. + * Fix formatting in debian/man/opencv_traincascade.1. + * Bumped standards-version to 3.9.2. No changes needed. + * Update debian repository pointers for new alioth hosts. + * Add support openexr. + * Move usr/share/opencv/haarcascades and usr/share/opencv/lbpcascades + to libopencv-core-dev (Closes: #598356). + * Fix build using gcc-4.6 (Closes: #624917). + - Add patches/0008_fix_ftbfs_with_gcc-4.6.patch. + * Fix build without v4l1 (Closes: #623418). + - Add patches/0009_support_v4lv2_only.patch. + * Fix build with libpng15. + - Add patch/0010_fix_ftbs_png15.patch. + * Fix optimize of i386 (Closes: 629414). + - Opencv was optimized to i686. This chenged optimization to i486. + - Add patch/0011_optimize_i486.patch. + * If build architecture is amd64, enable SSE2 option. + + -- Nobuhiro Iwamatsu Mon, 27 Jun 2011 11:51:39 +0900 + +opencv (2.1.0-4) unstable; urgency=low + + * Fix install path of opencv-doc (Closes: #610803). + * Fix FTBFS on gcc-4.5(Closes: #607086, #618045). + - Add patches/fix_stdint_gcc45.patch + + -- Nobuhiro Iwamatsu Wed, 16 Mar 2011 01:55:22 +0900 + +opencv (2.1.0-3) unstable; urgency=low + + * Fix set opencv minor version on Python (Closes: #600836). + + -- Nobuhiro Iwamatsu Tue, 02 Nov 2010 19:55:47 +0900 + +opencv (2.1.0-2) unstable; urgency=low + + * Update debian/control. + - Bumped standards-version to 3.9.1. No changes needed. + - Add python-numpy to Build-depends (Closes: #593310) + * Add hurd support patch (Closes: #589586). + + -- Nobuhiro Iwamatsu Wed, 25 Aug 2010 01:49:14 +0900 + +opencv (2.1.0-1) unstable; urgency=low + + * New upstream release. (Closes: #577594, #587232, #563717) + * Update debian/rules. + - Update build-system to debhelper v7. + * Update debian/control. + - Bumped standards-version to 3.9.0. No changes needed. + - library package name update. + Soname of opencv library changed from 4 to 2.1. + - Add cmake, liblapack-dev, texlive-fonts-extra, texlive-latex-extra, + texlive-latex-recommended, latex-xcolor and texlive-fonts-recommended + to Build-depends. + - Add arch depends to libraw1394-dev and libdc1394-22-dev. + Thanks to Pino Toscano. (Closes: #581210) + * Add opencv-doc.lintian-overrides. + opencv-doc has some sample program of python. + * Update man files. + * Update patches + - Update and rename 500_remove_bashism.patch. + And rename to remove_bashism.patch. + * Add new patches. + - Enable build static library. + enable_static.patch + - Disable build 3rd party library. + Use zlib and lapack in debian package. + fix_3rdparty_build.patch + - Fix build pdf. + fix_build_pdf.patch + - Remove cvconfig.h + remove_cvconfig.h.patch + * Remove some patches. + + -- Nobuhiro Iwamatsu Fri, 16 Jul 2010 13:12:28 +0900 + +opencv (2.0.0-4) unstable; urgency=low + + * Update debian/control. + - Bumped standards-version to 3.8.4. No changes needed. + * Change install path of python-opencv. (Closes: #565121) + + -- Nobuhiro Iwamatsu Sun, 14 Mar 2010 13:19:00 +0900 + +opencv (2.0.0-3) unstable; urgency=low + + * Remove libcv1, libhighgui1 and libcvaux1 from Conflicts and Replaces. + (Closes: #560283) + * Remove cvconfig.h from libcv-dev package. (Closes: #559857) + Update libcv-dev.install and backport r2242 of commit from upstream. + Thanks to Filippo Giunchedi. + debian/patches/110_backport_r2242.diff + * Fix FTBFS with GCC 4.4. (Closes: #562742) + Backport r2255 of commit from upstream. Thanks to Filippo Giunchedi. + debian/patches/110_backport_r2255.diff + + -- Nobuhiro Iwamatsu Thu, 07 Jan 2010 20:48:47 +0900 + +opencv (2.0.0-2) unstable; urgency=low + + * Add cvconfig.h to libcv-dev. (Closes: #559857) + + -- Nobuhiro Iwamatsu Tue, 08 Dec 2009 10:00:14 +0900 + +opencv (2.0.0-1) unstable; urgency=low + + * New upstream release. (Closes: #507588, #549997, #492445) + * Update Standards-Version to 3.8.3 + * Add debian/README.source + * Add libdc1394-22-dev to Build-Depends. (Closes: #507584, #516794) + * Remove libcvaux-dev and libhighgui-dev from Depends of libcv-dev. + (Closes: #525023) + * Remove all .la files. + * Update debian/watch file. (Closes: #557140) + * Update debian/rules file. + Add --disable-sse and --disable-optimization to configure. + * Remove bashism. (Closes: #530153) + 500_remove_bashism.patch + * Update debian/patches + 010_m4_syntax.diff + 010_fix_optimisations.diff + 010_makefile_syntax.diff + 010_python_cspec.diff + 020_python_linking.diff + 100_static_inline.diff + 100_amd64.diff + 120_header_warnings.diff + * Remove debian/patches + - Merge to upstream + 030_install_hook.diff + 100_ffmpeg_updates.diff + 210_openmp_compilation.diff + 300_fix_segfault_in_window_gtk.diff + 400_ffmpeg_splitting_autofoo.diff + 410_ffmpeg_use_swscale.diff + 420_typedef_longint.diff + 430_highgui_jpeg_camera.diff + - Don't need new version + 010_ffmpeg_linking.diff + 050_rebootstrap.diff + 200_documentation.diff + 500_ftbfs_gcc44.diff + + -- Nobuhiro Iwamatsu Tue, 01 Dec 2009 01:13:18 +0900 + +opencv (1.0.0-6.3) unstable; urgency=low + + * Non-maintainer upload. + * Rebuild against new libraw1394 (Closes: #516646, #516920) + * Add libhighgui-dev dependency on libswscale-dev thanks Giel van Schijndel + (Closes: #547729) + * debian/patches/420_typedef_longint.diff: define int64/uint64 as int64_t + and uint64_t respectively, patch pulled from upstream r2163 + (Closes: #543546) + * debian/patches/410_ffmpeg_use_swscale.diff: move + #define __STDC_CONSTANT_MACROS before #include into + debian/patches/420_typedef_longint.diff + * debian/patches/500_ftbfs_gcc44.diff: fix FTBFS with gcc-4.4 + thanks to Martin Michlmayr (Closes: #504831) + * debian/patches/430_highgui_jpeg_camera.diff: recognize JPEG cameras + (Closes: #536041) + + -- Filippo Giunchedi Sat, 14 Nov 2009 17:04:41 +0100 + +opencv (1.0.0-6.2) unstable; urgency=low + + * Non-maintainer upload. + * Port to newer ffmpeg. Closes: #487638, #490700, #493915 + Loosely based on patch Gijs Molenaar, thanks. + + -- Thomas Viehmann Thu, 09 Jul 2009 21:43:02 +0200 + +opencv (1.0.0-6.1) unstable; urgency=low + + * Non-maintainer upload. + * debian/control: + + Dropped build dependency on libdc1394-22-dev (Closes: #497689) + + Added ${misc:Depends} where missing + + -- Raphael Geissert Thu, 11 Sep 2008 14:36:06 -0500 + +opencv (1.0.0-6) unstable; urgency=low + + * debian/patches/120_header_warnings.diff: + + Fix more warnings in shipped headers. + + -- Sam Hocevar (Debian packages) Thu, 28 Aug 2008 22:53:43 +0000 + +opencv (1.0.0-5) unstable; urgency=high + + [ Daniel Leidert ] + + * debian/control: Added Homepage field. + (Vcs-Svn): Fixed. + (Depends, Build-Depends): Added libjasper-dev (closes: #428474). + * debian/dirs: Removed (useless). Avoids empty directories. + * debian/libcv-dev.install: Small cosmetic fix. + * debian/libcv-dev.manpages: Added for haartraining utilities. + * debian/opencv-createsamples.1: Initially added. + * debian/opencv-haartraining.1: Ditto. + * debian/opencv-performance.1: Ditto. + * debian/opencv-doc.install: Install Makefile.debian here. + * debian/rules (install, binary-arch, binary-indep): Removed most of the + unused debhelper calls. Let dh_install exclude files we don't want. Don't + install examples twice. Removed installation of opencv-config.1 (closes: + #407946). + * debian/watch: Added. + * debian/patches/300_fix_segfault_in_window_gtk.diff: Added. Merged from + Ubuntu. + * debian/patches/series: Adjusted. + + [ Sam Hocevar ] + + * High urgency to ease testing propagations. + * debian/patches/100_ffmpeg_updates.diff: + + Updated patch to latest ffmpeg version (Closes: #482217). + * debian/patches/020_python_linking.diff: + + Link python bindings with required libraries. + * debian/patches/030_install_hook.diff: + + Use install-exec-hook instead of install-hook. + + * debian/control: + + Build-depend on more recent libavcodec-dev. + + -- Sam Hocevar (Debian packages) Sun, 08 Jun 2008 15:01:18 +0000 + +opencv (1.0.0-4) unstable; urgency=low + + * debian/rules: + + Support CONCURRENCY_LEVEL. + + Don't ignore make distclean errors. + + * debian/control: + + Add ${shlibs:Depends} to -dev packages, to get a proper dependency + when these packages ship binaries. + + Use ${binary:Version} instead of ${Source-Version} (Closes: 430726). + + Set policy to 3.7.3. + + Use Vcs-Svn: instead of XS-Vcs-Svn: fields. + + * debian/patches/100_ffmpeg_updates.diff: + + Updated patch. Getting and setting framerate in FFmpeg streams now + works properly again. Thanks to Eric Beets for half the fix. + + -- Sam Hocevar (Debian packages) Mon, 10 Mar 2008 16:41:56 +0000 + +opencv (1.0.0-3) unstable; urgency=low + + * debian/control: + + Set maintainer to the pkg-scicomp team. + + Updated Vcs fields. + * debian/compat: + + Set compat version to 5. + + -- Sam Hocevar (Debian packages) Sun, 1 Apr 2007 15:19:15 +0200 + +opencv (1.0.0-2) unstable; urgency=low + + * Upload to unstable. + * debian/patches/120_header_warnings.diff: + + New patch. Fix warnings in shipped headers. + + -- Sam Hocevar (Debian packages) Wed, 28 Mar 2007 19:02:18 +0200 + +opencv (1.0.0-1) experimental; urgency=low + + * New upstream release. + * debian/control: + + Depend on pkg-config now that opencv-config is deprecated. + * debian/rules: + + Do not remove haartraining files (Closes: #368568). + + * debian/patches/010_python_cspec.diff: + + New patch. Add -fno-strict-aliasing because of numerous aliasing + issues in the code (Closes: #388129). + + * debian/patches/110_dc1394.diff: + + Fix a few bugs in the dc1394 code. + + -- Sam Hocevar (Debian packages) Tue, 14 Nov 2006 17:12:26 +0100 + +opencv (0.9.7-4) unstable; urgency=low + + * Migrate package to the new python policy (Closes: #373469), thanks to + Pierre Habouzit. + * debian/control: add XS-Vcs-Svn information. + + -- Sam Hocevar (Debian packages) Thu, 12 Oct 2006 09:21:14 +0200 + +opencv (0.9.7-3) unstable; urgency=low + + * debian/patches/110_dereferencement.diff: + + Fix compilation warnings due to type-punned pointer dereferencement. + + -- Sam Hocevar (Debian packages) Mon, 12 Jun 2006 12:14:44 +0200 + +opencv (0.9.7-2) unstable; urgency=low + + * Switched patch system from dpatch to quilt. + * debian/control: + + Set policy to 3.7.2. + + Build-depend on newer versions of libavcodec-dev so that we can get + dynamically linked with it. + + Build-depend on quilt instead of dpatch. + + * debian/patches/010_enable_static.diff: + + Old patch -- enable static libraries. + + * debian/patches/010_ffmpeg_linking.diff: + + Old patch -- correct ffmpeg linking. + + * debian/patches/010_fix_optimisations.diff: + + Old patch -- fix optimisation flags for GCC bug workarounds. + + * debian/patches/010_m4_syntax.diff: + + Old patch -- fix m4 syntax. + + * debian/patches/010_makefile_syntax.diff: + + Old patch -- fix Makefile.am syntax. + + * debian/patches/010_proper_sonames.diff: + + Old patch -- fix library sonames. + + * debian/patches/020_rebootstrap.diff: + + Old patch -- rebootstrap package. + + * debian/patches/100_amd64.diff: + + Fix inclusion of on AMD64 (Closes: #365752, #366105). + + * debian/patches/100_ffmpeg_updates.diff: + + Old patch -- update ffmpeg code to get in sync with newer API. + + * debian/patches/100_python_files.diff: + + Old patch -- remove shebang from non-executable python files. + + * debian/patches/100_static_inline.diff: + + Old patch -- replace inline with static inline in public headers. + + * debian/patches/200_documentation.diff: + + Old patch -- get documentation in sync with the API. + + * debian/patches/200_examples_makefile.diff: + + Old patch -- add a Makefile to the examples directory. + + -- Sam Hocevar (Debian packages) Sun, 14 May 2006 05:40:42 +0200 + +opencv (0.9.7-1) unstable; urgency=low + + * New upstream release. + * Maintainer upload. + * Acknowledging previous NMU (Closes: #339240). Thanks to Steve Langasek. + * debian/control: + + Build-depend on swig because of the Python bindings. + + Renamed 0.9-0c2 packages to 0.9.7-0 due to API changes. + + Depend and build-depend on libavformat-dev. + * debian/rules: + + Activated Python wrappers. + + Build example apps. + * cxtypes.h highgui.h: Replace "static" with "static inline" for inline + functions declared in the public headers. + + -- Sam Hocevar (Debian packages) Wed, 19 Apr 2006 09:37:55 +0200 + +opencv (0.9.6-4.1) unstable; urgency=medium + + * Non-maintainer upload. + * Medium-urgency upload for RC bugfix. + * Rename libcvaux0.9-0c2 to libcvaux0.9-0c2a for the C++ mt allocator ABI + transition, and conflict/replace libcvaux0.9-0c2 accordingly + (closes: #339240). + + -- Steve Langasek Sat, 3 Dec 2005 21:27:40 -0800 + +opencv (0.9.6-4) unstable; urgency=low + + * tests/cv/src/asobel.cpp: + + Fixed an illegal int/void* cast. + + -- Sam Hocevar (Debian packages) Mon, 26 Sep 2005 19:39:52 +0200 + +opencv (0.9.6-3) unstable; urgency=low + + * debian/control: + + Build-depend on a newer libavcodec-dev. + + Make libhighgui-dev depend on all required -dev packages such as + libtheora-dev (Closes: #319018). + * debian/rules: + + Hint --build and --host to configure. + * configure.in: + + Use -O2 on m68k instead of -O3 to bypass gcc ICEs (Closes: #321106). + * tests/cv/src/apyramids.cpp: fixed 64 bits compilation (Closes: #318791). + + -- Sam Hocevar (Debian packages) Fri, 16 Sep 2005 11:53:13 +0200 + +opencv (0.9.6-2) unstable; urgency=low + + * The great g++ transition upload. + * debian/control: + + Renamed 0.9-0 packages to 0.9-0c2. + + Set policy to 3.6.2.1. + + Build-depend on a newer libavcodec-dev. + * docs/index.htm: + + Encoded invalid HTML characters. + + Fixed links to the reference manual (Closes: #306922). + * docs/ref/opencvref_cv.htm: + + Encoded invalid HTML characters. + + Fixed the definition of CvHistogram (Closes: #307269). + * otherlibs/highgui/cvcap.cpp: + + Hardcoded the capture framerate because ffmpeg no longer easily provides + the information. + + -- Sam Hocevar (Debian packages) Thu, 14 Jul 2005 15:48:31 +0200 + +opencv (0.9.6-1) unstable; urgency=low + + * New upstream release (Closes: #267825). + * Major upstream changes: + + This release merged most Debian-specific patches upstream. + + This version now uses pkg-config instead of opencv-config. + + This version uses GTK+ instead of Motif widgets. + + Example programs were fixed (Closes: #254150). + * debian/control: + + Build-depend on libdc1394 and libavcodec. As a result, build no longer + fails if libavcodec-dev is installed (Closes: #270345). + * debian/copyright: + + Fixed upstream URL (Closes: #270344). + * cvaux/src/cvvideo.cpp: the code portion causing an FTBFS on amd64 is no + longer there (Closes: #297625). + + -- Sam Hocevar (Debian packages) Fri, 1 Apr 2005 19:30:58 +0200 + +opencv (0.9.5-10) unstable; urgency=high + + * debian/patches/30_delete.dpatch: + + Fixed a crash at program exit (Closes: #269799). + + -- Sam Hocevar (Debian packages) Fri, 3 Sep 2004 21:59:26 +0200 + +opencv (0.9.5-9) unstable; urgency=high + + * debian/control: + + Build-depend on lesstif2-dev to take advantage of new Motif 2 features. + + libhighgui-dev depends on lesstif2-dev as well. + * debian/patches/20_old.dpatch: + + No longer patch/unpatch the Makefiles to avoid clock skew issues + (Closes: #266622). + * debian/patches/30_delete.dpatch: + + Fixed delete[] / delete mismatches. + * debian/patches/30_window_lnx.cpp.setTrackbarPos_crash.dpatch: + + Fix a crash in cvSetTrackbarPos() for closed windows, courtesy of + micha137 at users.sourceforge.net. + * debian/patches/40_linux_trackbar.dpatch + debian/patches/30_linux_mouse.dpatch: + + Add arrows to trackbars, courtesy of Filip Sadlo. + + Fixed position of mouse button events, courtesy of Filip Sadlo. + * debian/patches/30_render.dpatch: + + Fixed pointer casts, courtesy of buddha_pht at users.sourceforge.net. + * debian/patches/30_xshm.dpatch: + + Don't use XShm over network connections. + + -- Sam Hocevar (Debian packages) Tue, 17 Aug 2004 18:01:23 +0200 + +opencv (0.9.5-8) unstable; urgency=low + + * debian/control: + + Added missing build dependency on dpatch (Closes: #262209). + * debian/rules: + + Call unpatch before make clean. + + -- Sam Hocevar (Debian packages) Fri, 30 Jul 2004 08:34:59 +0200 + +opencv (0.9.5-7) unstable; urgency=low + + * Rebuilt against libtiff4 due to an ABI change. + * Fixed numerous compilation warning due to pointer/int size assumptions and + char signedness assumption. + * debian/control: + + Set policy to 3.6.1.1. + + Switched packaging method to dpatch. + + -- Sam Hocevar (Debian packages) Sun, 25 Jul 2004 21:54:33 +0200 + +opencv (0.9.5-6) unstable; urgency=low + + * cv/include/cvcompat.h cv/include/cvtypes.h: + + Fixed more C preprocessor warnings. + + -- Sam Hocevar (Debian packages) Wed, 30 Jun 2004 14:04:12 +0200 + +opencv (0.9.5-5) unstable; urgency=low + + * cv/include/cv.h: + + Fixed C preprocessor warnings. + + -- Sam Hocevar (Debian packages) Wed, 30 Jun 2004 11:59:36 +0200 + +opencv (0.9.5-4) unstable; urgency=low + + * debian/control: + + Added missing lesstif-dev build dependency to the libhighgui-dev + package (Closes: #252304). + * debian/README.Debian: + + Minor updates. + + -- Sam Hocevar (Debian packages) Wed, 2 Jun 2004 13:27:07 -0300 + +opencv (0.9.5-3) unstable; urgency=low + + * debian/rules: + + Enabled static libraries in the build (Closes: #249471). + + -- Sam Hocevar (Debian packages) Wed, 19 May 2004 21:48:47 +0200 + +opencv (0.9.5-2) unstable; urgency=low + + * debian/control: + + Added libxaw7-dev to the build dependencies. + + Added libxaw7-dev to the libcvcam-dev dependencies. + * debian/copyright: + + Removed a duplicate copyright entry. + + -- Sam Hocevar (Debian packages) Wed, 28 Apr 2004 10:25:56 +0200 + +opencv (0.9.5-1) unstable; urgency=low + + * Initial release. + + -- Sam Hocevar (Debian packages) Thu, 22 Apr 2004 14:55:19 +0200 diff --git a/clean b/clean new file mode 100644 index 0000000..961ffa8 --- /dev/null +++ b/clean @@ -0,0 +1,5 @@ +modules/python/src2/hdr_parser.pyc +modules/java/generator/rst_parser.pyc +modules/refman.rst +modules/python/src2/__pycache__/ +.cache/ diff --git a/control b/control new file mode 100644 index 0000000..170d948 --- /dev/null +++ b/control @@ -0,0 +1,1151 @@ +Source: opencv +Maintainer: Debian Science Team +Uploaders: Sam Hocevar (Debian packages) , + Nobuhiro Iwamatsu , + Mo Zhou +Section: devel +Priority: optional +Build-Depends: dpkg-dev (>= 1.22.5), ant [!hppa !hurd-any !kfreebsd-any], + cmake, + debhelper-compat (= 13), + default-jdk [!hppa !hurd-any !kfreebsd-any], + dh-sequence-python3, + doxygen, + dh-sequence-javahelper, + ninja-build, + libavcodec-dev, + libavformat-dev, + libdc1394-dev [linux-any], + libeigen3-dev, + libgdal-dev, + libgdcm-dev [!alpha !hppa !ia64 !kfreebsd-amd64 !kfreebsd-i386 !m68k !powerpcspe !sh4 !x32], + libvtkgdcm-dev [!alpha !hppa !ia64 !kfreebsd-amd64 !kfreebsd-i386 !m68k !powerpcspe !sh4 !x32], + libgdcm-tools [!alpha !hppa !ia64 !kfreebsd-amd64 !kfreebsd-i386 !m68k !powerpcspe !sh4 !x32], + libgl-dev, + libglu1-mesa-dev, + libgoogle-glog-dev, + libgphoto2-dev, + libharfbuzz-dev, + libjpeg-dev, + liblapack-dev, + liblapacke-dev, + libleptonica-dev, + libopenexr-dev, + libopenjp2-7-dev, + libopenjpip-dec-server, + libopenjpip-server, + libopenjp2-tools, + libimath-dev, + libpng-dev, + libprotobuf-dev, + libqt5opengl5-dev, + libraw1394-dev [linux-any], + libswscale-dev, + libtbb-dev [amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x powerpc powerpcspe ppc64 riscv64 sh4 sparc64 alpha], + libtesseract-dev, + libtiff-dev, + libv4l-dev [linux-any], + libva-dev, + libvtk9-dev, + libgstreamer1.0-dev, + libgstreamer-plugins-base1.0-dev, + dh-sequence-maven-repo-helper [!hppa !hurd-any !kfreebsd-any], + ocl-icd-opencl-dev, + protobuf-compiler, + python3-all-dev, + dh-sequence-numpy3, + python3-bs4, + python3-imath, + qtbase5-dev, + zlib1g-dev +Standards-Version: 4.6.1 +Vcs-Browser: https://salsa.debian.org/science-team/opencv +Vcs-Git: https://salsa.debian.org/science-team/opencv.git +Homepage: https://opencv.org +Rules-Requires-Root: no + +Package: opencv-doc +Architecture: all +Multi-Arch: foreign +Section: doc +Depends: libjs-jquery, + libjs-mathjax, + ${misc:Depends} +Description: OpenCV documentation and examples + This package contains the OpenCV documentation and example programs. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-dev +Architecture: any +Section: libdevel +Depends: libopencv-calib3d-dev (= ${binary:Version}), + libopencv-contrib-dev (= ${binary:Version}), + libopencv-core-dev (= ${binary:Version}), + libopencv-dnn-dev (= ${binary:Version}), + libopencv-features2d-dev (= ${binary:Version}), + libopencv-flann-dev (= ${binary:Version}), + libopencv-highgui-dev (= ${binary:Version}), + libopencv-imgcodecs-dev (= ${binary:Version}), + libopencv-imgproc-dev (= ${binary:Version}), + libopencv-ml-dev (= ${binary:Version}), + libopencv-objdetect-dev (= ${binary:Version}), + libopencv-photo-dev (= ${binary:Version}), + libopencv-shape-dev (= ${binary:Version}), + libopencv-stitching-dev (= ${binary:Version}), + libopencv-superres-dev (= ${binary:Version}), + libopencv-video-dev (= ${binary:Version}), + libopencv-videoio-dev (= ${binary:Version}), + libopencv-videostab-dev (= ${binary:Version}), + libopencv-viz-dev (= ${binary:Version}), + pkgconf, + ${misc:Depends}, + ${shlibs:Depends}, + libilmbase-dev +Recommends: opencv-data, libopencv-java (= ${binary:Version}), +Suggests: opencv-doc +Description: development files for opencv + This is a metapackage providing development package necessary for + development of OpenCV (Open Computer Vision). + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: opencv-data +Architecture: all +Multi-Arch: foreign +Section: libdevel +Depends: ${misc:Depends} +Description: development data for opencv + This package contains some architecture independent files useful for + development with OpenCV. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-core-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-core410 (= ${binary:Version}), + libtbb-dev [amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x powerpc powerpcspe ppc64 riscv64 sh4 sparc64], + zlib1g-dev, + ${misc:Depends} +Description: development files for libopencv-core410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) core. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-core410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Breaks: libopencv-core4.5 (<< 4.6), +Description: computer vision core library + This package contains the OpenCV (Open Computer Vision) core runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-ml-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-core-dev (= ${binary:Version}), + libopencv-ml410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-ml410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Machine Learning library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-ml410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Machine Learning library + This package contains the OpenCV (Open Computer Vision) Machine Learning + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-imgproc-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-core-dev (= ${binary:Version}), + libopencv-imgproc410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-imgproc410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Image Processing library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-imgproc410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Image Processing library + This package contains the OpenCV (Open Computer Vision) Image Processing + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-imgcodecs-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libgdcm-dev [!alpha !hppa !ia64 !kfreebsd-amd64 !kfreebsd-i386 !m68k !powerpcspe !sh4 !x32], + libopencv-imgcodecs410 (= ${binary:Version}), + libopencv-imgproc-dev (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-imgcodecs410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Image Codecs library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-imgcodecs410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Image Codecs library + This package contains the OpenCV (Open Computer Vision) Image Codecs + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-video-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-imgproc-dev (= ${binary:Version}), + libopencv-video410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-video410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Video analysis library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-video410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Video analysis library + This package contains the OpenCV (Open Computer Vision) Video analysis + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-videoio-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libgphoto2-dev, + libopencv-imgcodecs-dev (= ${binary:Version}), + libopencv-videoio410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-videoio410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Video I/O library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-videoio410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Video I/O library + This package contains the OpenCV (Open Computer Vision) Video I/O + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-objdetect-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-highgui-dev (= ${binary:Version}), + libopencv-ml-dev (= ${binary:Version}), + libopencv-objdetect410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-objdetect410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Object Detection library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-objdetect410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Object Detection library + This package contains the OpenCV (Open Computer Vision) Object Detection + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-highgui-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libavcodec-dev, + libavformat-dev, + libdc1394-dev [!kfreebsd-amd64 !kfreebsd-i386 !hurd-i386], + libgphoto2-dev, + libjpeg-dev, + libopencv-highgui410 (= ${binary:Version}), + libopencv-videoio-dev (= ${binary:Version}), + libopenexr-dev, + libpng-dev, + libraw1394-dev [!kfreebsd-amd64 !kfreebsd-i386 !hurd-i386], + libswscale-dev, + libtiff-dev, + ${misc:Depends} +Description: development files for libopencv-highgui410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) High-level GUI and + Media I/O library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-highgui410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision High-level GUI and Media I/O library + This package contains the OpenCV (Open Computer Vision) High-level GUI + and Media I/O runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-calib3d-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-calib3d410 (= ${binary:Version}), + libopencv-features2d-dev (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-calib3d410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Camera Calibration library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-calib3d410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Camera Calibration library + This package contains the OpenCV (Open Computer Vision) Camera Calibration + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-flann-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-core-dev (= ${binary:Version}), + libopencv-flann410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-flann410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Clustering and Search + in Multi-Dimensional spaces library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-flann410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Clustering and Search in Multi-Dimensional spaces library + This package contains the OpenCV (Open Computer Vision) clustering and + search in Multi-Dimensional spaces runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-dnn-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-core-dev (= ${binary:Version}), + libopencv-dnn410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-dnn410 + This package contains the header files and static library needed to compile + in deep neural network module. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-dnn410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Deep neural network module + This package contains the OpenCV (Open Computer Vision) deep neural network + module. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-features2d-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-features2d410 (= ${binary:Version}), + libopencv-flann-dev (= ${binary:Version}), + libopencv-highgui-dev (= ${binary:Version}), + libopencv-ml-dev (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-features2d410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Feature Detection and + Descriptor Extraction library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-features2d410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Feature Detection and Descriptor Extraction library + This package contains the OpenCV (Open Computer Vision) Feature Detection + and Descriptor Extraction runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-photo-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-imgproc-dev (= ${binary:Version}), + libopencv-photo410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-photo410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) computational photography + library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-photo410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision computational photography library + This package contains the OpenCV (Open Computer Vision) computational + photography runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-videostab-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-calib3d-dev (= ${binary:Version}), + libopencv-photo-dev (= ${binary:Version}), + libopencv-video-dev (= ${binary:Version}), + libopencv-videostab410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-videostab410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) video stabilization + library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-videostab410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision video stabilization library + This package contains the OpenCV (Open Computer Vision) video stabilization + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-stitching-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-calib3d-dev (= ${binary:Version}), + libopencv-objdetect-dev (= ${binary:Version}), + libopencv-stitching410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-stitching410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) image stitching library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-stitching410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision image stitching library + This package contains the OpenCV (Open Computer Vision) image stitching + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-shape-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-shape410 (= ${binary:Version}), + libopencv-video-dev (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-shape410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) shape descriptors and + matchers library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-shape410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision shape descriptors and matchers library + This package contains the OpenCV (Open Computer Vision) shape descriptors + and matchers runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-superres-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-superres410 (= ${binary:Version}), + libopencv-video-dev (= ${binary:Version}), + libopencv-videoio-dev (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-superres410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) Super Resolution library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-superres410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision Super Resolution library + This package contains the OpenCV (Open Computer Vision) Super Resolution + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-viz-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-core-dev (= ${binary:Version}), + libopencv-viz410 (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-viz410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) 3D data visualization + library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-viz410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision 3D data visualization library + This package contains the OpenCV (Open Computer Vision) 3D data visualization + runtime libraries. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +#Package: libopencv-gapi-dev +#Section: libdevel +#Architecture: any +#Multi-Arch: same +#Depends: +# libopencv-core-dev (= ${binary:Version}), +# libopencv-gapi4.5 (= ${binary:Version}), +# ${misc:Depends}, +#Description: development files for libopencv-gapi4.5 +# This package contains the header files and static library needed to compile +# applications that use OpenCV (Open Computer Vision) Graph API library. +# . +# The Open Computer Vision Library is a collection of algorithms and sample +# code for various computer vision problems. The library is compatible with +# IPL (Intel's Image Processing Library) and, if available, can use IPP +# (Intel's Integrated Performance Primitives) for better performance. +# . +# OpenCV provides low level portable data types and operators, and a set +# of high level functionalities for video acquisition, image processing and +# analysis, structural analysis, motion analysis and object tracking, object +# recognition, camera calibration and 3D reconstruction. +# +#Package: libopencv-gapi4.5 +#Section: libs +#Architecture: any +#Multi-Arch: same +#Pre-Depends: +# ${misc:Pre-Depends}, +#Depends: +# libopencv-core410 (= ${binary:Version}), +# ${misc:Depends}, +# ${shlibs:Depends}, +#Description: computer vision Graph API library +# This package contains the OpenCV (Open Computer Vision) Graph API +# runtime libraries. +# . +# The Open Computer Vision Library is a collection of algorithms and sample +# code for various computer vision problems. The library is compatible with +# IPL (Intel's Image Processing Library) and, if available, can use IPP +# (Intel's Integrated Performance Primitives) for better performance. +# . +# OpenCV provides low level portable data types and operators, and a set +# of high level functionalities for video acquisition, image processing and +# analysis, structural analysis, motion analysis and object tracking, object +# recognition, camera calibration and 3D reconstruction. + +Package: libopencv-contrib-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libopencv-calib3d-dev (= ${binary:Version}), + libopencv-contrib410 (= ${binary:Version}), + libopencv-core-dev (= ${binary:Version}), + libopencv-dnn-dev (= ${binary:Version}), + libopencv-features2d-dev (= ${binary:Version}), + libopencv-flann-dev (= ${binary:Version}), + libopencv-highgui-dev (= ${binary:Version}), + libopencv-imgcodecs-dev (= ${binary:Version}), + libopencv-imgproc-dev (= ${binary:Version}), + libopencv-ml-dev (= ${binary:Version}), + libopencv-objdetect-dev (= ${binary:Version}), + libopencv-photo-dev (= ${binary:Version}), + libopencv-shape-dev (= ${binary:Version}), + libopencv-stitching-dev (= ${binary:Version}), + libopencv-superres-dev (= ${binary:Version}), + libopencv-video-dev (= ${binary:Version}), + libopencv-videoio-dev (= ${binary:Version}), + libopencv-videostab-dev (= ${binary:Version}), + libopencv-viz-dev (= ${binary:Version}), + ${misc:Depends} +Description: development files for libopencv-contrib410 + This package contains the header files and static library needed to compile + applications that use OpenCV (Open Computer Vision) contrib library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-contrib410 +Provides: ${t64:Provides} +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends} +Description: computer vision contrlib library + This package contains the OpenCV (Open Computer Vision) opencv_contrib runtime + libraries. This package contain following contrlib libraries: + . + - aruco + - barcode + - bgsegm + - bioinspired + - ccalib + - cnn_3dobj + - cvv + - datasets + - dpm + - face + - freetype + - fuzzy + - hdf + - hfs + - img_hash + - line_descriptor + - matlab + - optflow + - ovis + - phase_unwrapping + - plot + - reg + - rgbd + - saliency + - sfm + - signal + - stereo + - structured_light + - surface_matching + - tracking + - ximgproc + - xobjdetect + - xphoto + - wechat-qrcode + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv-java +Architecture: amd64 arm64 armel armhf i386 mips64el mipsel ppc64el s390x alpha ia64 m68k powerpc ppc64 riscv64 sh4 sparc64 x32 +Multi-Arch: no +Section: java +Depends: libopencv410-jni (>= ${binary:Version}), ${misc:Depends} +Breaks: libopencv4.5-java, +Replaces: libopencv4.5-java, +Description: Java bindings for the computer vision library + This package contains Java bindings for the OpenCV (Open Computer Vision) + library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: libopencv410-jni +Architecture: amd64 arm64 armel armhf i386 mips64el mipsel ppc64el s390x alpha ia64 m68k powerpc ppc64 riscv64 sh4 sparc64 x32 +Multi-Arch: no +Section: java +Depends: ${misc:Depends}, + ${shlibs:Depends} +Description: Java jni library for the computer vision library + This package contains Java jni library for the OpenCV (Open Computer Vision) + library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. + +Package: python3-opencv +Architecture: any +Multi-Arch: same +Section: python +Depends: ${misc:Depends}, + ${python3:Depends}, + ${shlibs:Depends}, + python3-numpy, +Description: Python 3 bindings for the computer vision library + This package contains Python 3 bindings for the OpenCV (Open Computer Vision) + library. + . + The Open Computer Vision Library is a collection of algorithms and sample + code for various computer vision problems. The library is compatible with + IPL (Intel's Image Processing Library) and, if available, can use IPP + (Intel's Integrated Performance Primitives) for better performance. + . + OpenCV provides low level portable data types and operators, and a set + of high level functionalities for video acquisition, image processing and + analysis, structural analysis, motion analysis and object tracking, object + recognition, camera calibration and 3D reconstruction. diff --git a/copyright b/copyright new file mode 100644 index 0000000..0b391d0 --- /dev/null +++ b/copyright @@ -0,0 +1,337 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: OpenCV +Source: https://opencv.org +Files-Excluded: + 3rdparty + doc/js_tutorials/js_assets/lena.jpg + doc/js_tutorials/js_assets/lenaFace.png + doc/tutorials/dnn/images/lena_hed.jpg + modules/core/misc/objc/test/resources/lena.png + modules/highgui/src/files_Qt/Milky + modules/java/test/common_test/res/drawable/lena.png + modules/objdetect/doc/pics/lena-face-detection.jpg + samples/data/lena.jpg + samples/data/lena_tmpl.jpg + samples/java/clojure/simple-sample/resources + samples/java/clojure/simple-sample/resources/images + samples/java/clojure/simple-sample/resources/images/lena.png + samples/winrt/OcvImageProcessing/OcvImageProcessing/Assets/Lena.png + samples/winrt_universal/PhoneTutorial/Lena.png + samples/wp8/OcvRotatingCube/PhoneXamlDirect3DApp1/PhoneXamlDirect3DApp1/Assets/Lena.png + samples/wp8/OpenCVXaml/OpenCVXaml/Assets/Lena.png +Files-Excluded-contrib: + modules/xfeatures2d + +Files: * +Copyright: 2000-2022, Intel Corporation, all rights reserved. + 2009-2011, Willow Garage Inc., all rights reserved. + 2009-2016, NVIDIA Corporation, all rights reserved. + 2010-2013, Advanced Micro Devices, Inc., all rights reserved. + 2015-2022, OpenCV Foundation, all rights reserved. + 2008-2016, Itseez Inc., all rights reserved. + 2019-2022, Xperience AI, all rights reserved. + 2019-2022, Shenzhen Institute of Artificial Intelligence and Robotics for Society, all rights reserved. + Respective opencv contributors. +License: Apache-2.0 AND BSD-3-Clause +Comment: upstream relicensed the whole project to Apache-2.0, but a large + portion of the source tree remains to be licensed under BSD-3-Clause. + +# /* apps */ + +Files: apps/annotation/opencv_annotation.cpp + apps/createsamples/*.cpp + apps/createsamples/*.hpp + apps/traincascade/old_ml*.cpp + apps/traincascade/old_ml*.hpp + apps/visualisation/opencv_visualisation.cpp +Copyright: 2000-2008, Intel Corporation + 2009, Willow Garage Inc. + 2013, OpenCV Foundation +License: BSD-3-Clause + +# /* cmake */ + +Files: cmake/FindCUDA/* +Copyright: 2008 - 2009 NVIDIA Corporation. + 2007-2009 Scientific Computing and Imaging Institute, University of Utah +License: Expat + +Files: cmake/OpenCVFindAtlas.cmake + cmake/OpenCVFindOpenBLAS.cmake +Copyright: 2014, 2015, The Regents of the University of California + 2014, 2015, the respective contributors +License: BSD-2-Clause +Comment: upstream copied these files from src:caffe + +# /* contrib */ + +Files: contrib/modules/ximgproc/src/scansegment.cpp +Copyright: 2021, Dr Seng Cheong Loke (lokesengcheong@gmail.com) +License: Apache-2.0 + +# /* data */ + +Files: data/* +Copyright: 2000, Intel Corporation, all rights reserved. + 2014-2016, Joseph Howse (Nummist Media Corporation Limited) + 2004, Hannes Kruppa and Bernt Schiele (ETH Zurich) + 2011, Modesto Castrillon-Santana (IUSIANI, Universidad de Las Palmas de Gran Canaria, Spain) + 2017, Puttemans Steven, Can Ergun and Toon Goedeme +License: BSD-3-Clause + +# /* doc */ + +Files: doc/pattern_tools/svgfig.py +Copyright: 2008 Jim Pivarski +License: GPL-2.0+ + +# /* include */ + +Files: include/opencv2/opencv.hpp +Copyright: 2000-2008, Intel Corporation, all rights reserved. + 2009-2010, Willow Garage Inc., all rights reserved. +License: BSD-3-Clause + +# /* platforms */ + +Files: platforms/winrt/* +Copyright: Microsoft Open Technologies, Inc. +License: BSD-3-Clause + +# /* samples */ + +Files: samples/cpp/stereo_calib.cpp +Copyright: Gary Bradski and Adrian Kaehler +License: STEREO_CALIB_PERMISSIVE + Right to use this code in any way you want without warranty, support or + any guarantee of it working. + +Files: samples/cpp/logistic_regression.cpp + samples/cpp/tutorial_code/gapi/face_beautification/face_beautification.cpp + samples/winrt/FaceDetection/FaceDetection/Assets/haarcascade_frontalface_alt.xml +Copyright: Copyright (C) 2000-2008, Intel Corporation, all rights reserved. + Copyright (C) 2008-2011, Willow Garage Inc., all rights reserved. +License: BSD-3-Clause + +Files: samples/cpp/stereo_match.cpp +Copyright: 2010 Argus Corp +License: Apache-2.0 + +Files: samples/cpp/videocapture_gphoto2_autofocus.cpp +Copyright: 2015, Piotr Dobrowolski dobrypd[at]gmail[dot]com +License: BSD-2-Clause + +Files: samples/va_intel/va_intel_interop.cpp +Copyright: 2007-2008 Intel Corporation +License: Expat + +Files: samples/winrt/JavaScript/* + samples/winrt/ImageManipulations/* + samples/winrt_universal/VideoCaptureXAML/* +Copyright: Microsoft Corporation. + Microsoft Open Technologies, Inc. +License: Apache-2.0 + +# /* modules */ + +Files: modules/calib3d/misc/objc/test/Calib3dTest.swift +Copyright: Giles Payne +License: Apache-2.0 + +Files: modules/core/3rdparty/SoftFloat/* +Copyright: 2017 John R. Hauser +License: BSD-3-Clause + +Files: modules/dnn/src/onnx/opencv-onnx.proto +Copyright: 2018 Facebook Inc. and Microsoft Corporation +License: Expat + +Files: modules/dnn/src/caffe/opencv-caffe.proto +Copyright: 2014, The Regents of the University of California + 2014, Caffe Contributors +License: BSD-2-Clause + +Files: modules/dnn/src/opencl/lrn.cl + modules/dnn/src/opencl/pooling.cl + modules/dnn/src/opencl/softmax.cl +Copyright: 2015, Advanced Micro Devices, Inc. +License: BSD-2-Clause + +Files: modules/dnn/src/torch/* +Copyright:2011-2014 Idiap Research Institute (Ronan Collobert) + 2012-2014 Deepmind Technologies (Koray Kavukcuoglu) + 2011-2012 NEC Laboratories America (Koray Kavukcuoglu) + 2011-2013 NYU (Clement Farabet) + 2006-2010 NEC Laboratories America (Ronan Collobert, Leon Bottou, Iain Melvin, Jason Weston) + 2006 Idiap Research Institute (Samy Bengio) + 2001-2004 Idiap Research Institute (Ronan Collobert, Samy Bengio, Johnny Mariethoz) + 2013, OpenCV Foundation +License: BSD-3-Clause + +Files: modules/features2d/src/* +Copyright: 2006, 2008 Edward Rosten +License: BSD-3-Clause + +Files: modules/features2d/doc/agast* + modules/features2d/src/agast* +Copyright: 2010 Elmar Mair +License: BSD-3-Clause + +Files: modules/features2d/src/sift.dispatch.cpp +Copyright: 2006-2010, Rob Hess + 2009, Willow Garage Inc., all rights reserved. + 2020, Intel Corporation, all rights reserved. +License: BSD-3-Clause +Comment: The related patent has expired. + +Files: modules/features2d/src/mser.cpp +Copyright: 2009, Liu Liu All rights reserved. +License: BSD-3-Clause + +Files: modules/flann/* +Copyright: 2008-2009 Marius Muja (mariusm@cs.ubc.ca) + 2008-2009 David G. Lowe (lowe@cs.ubc.ca) + Christopher Diggins 2005-2011 + Pablo Aguilar 2005 + Kevlin Henney 2001 +License: BSD-2-Clause + +Files: modules/ml/src/svm.cpp +Copyright: 2000-2003 Chih-Chung Chang and Chih-Jen Lin +License: BSD-3-Clause + +Files: modules/videoio/src/cap_gstreamer.cpp + modules/videoio/src/cap_images.cpp +Copyright: 2008, 2011, Nils Hasler, all rights reserved. +License: BSD-3-Clause + +# /* debian */ + +Files: debian/* +Copyright: 2004-2008 Sam Hocevar + 2009-2017 Nobuhiro Iwamatsu + 2016-2017 Mattia Rizzolo + 2018-2019 Mo Zhou + 2018-2020 Mo Zhou +License: BSD-3-clause + +# /* embedded sources */ +Files: debian/3rdparty-4.10.0/quirc/* +Copyright: 2010-2012, Daniel Beer +License: ISC +Comment: We embed this code because it has been removed through Files-Excluded: 3rdparty. + We may include this part for the next upstream release. + +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + . + * Redistribution's [sic] of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + . + * Redistribution's [sic] in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + . + * The name of the copyright holders may not be used to endorse or promote products + derived from this software without specific prior written permission. + . + This software is provided by the copyright holders and contributors "as is" and + any express or implied warranties, including, but not limited to, the implied + warranties of merchantability and fitness for a particular purpose are disclaimed. + In no event shall the Intel Corporation or contributors be liable for any direct, + indirect, incidental, special, exemplary, or consequential damages + (including, but not limited to, procurement of substitute goods or services; + loss of use, data, or profits; or business interruption) however caused + and on any theory of liability, whether in contract, strict liability, + or tort (including negligence or otherwise) arising in any way out of + the use of this software, even if advised of the possibility of such damage. + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +License: BSD-2-Clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: Apache-2.0 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + . + http://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + On Debian systems, the complete text of the Apache version 2.0 license + can be found in "/usr/share/common-licenses/Apache-2.0". + +License: GPL-2.0+ + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see + . + On Debian systems, the complete text of the GNU General + Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". + +License: ISC + Permission to use, copy, modify, and/or distribute this software for + any purpose with or without fee is hereby granted, provided that the + above copyright notice and this permission notice appear in all + copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL + WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. diff --git a/gbp.conf b/gbp.conf new file mode 100644 index 0000000..f2905a0 --- /dev/null +++ b/gbp.conf @@ -0,0 +1,5 @@ +[DEFAULT] +component = contrib + +[import-orig] +pristine-tar = True diff --git a/libopencv-calib3d-dev.docs b/libopencv-calib3d-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-calib3d-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-calib3d-dev.install b/libopencv-calib3d-dev.install new file mode 100644 index 0000000..0a08b69 --- /dev/null +++ b/libopencv-calib3d-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/calib3d.hpp +usr/include/opencv4/opencv2/calib3d/* +usr/lib/*/libopencv_calib3d.a +usr/lib/*/libopencv_calib3d.so diff --git a/libopencv-calib3d410.install b/libopencv-calib3d410.install new file mode 100644 index 0000000..feaccce --- /dev/null +++ b/libopencv-calib3d410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_calib3d.so.* diff --git a/libopencv-contrib-dev.docs b/libopencv-contrib-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-contrib-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-contrib-dev.install b/libopencv-contrib-dev.install new file mode 100644 index 0000000..21a183e --- /dev/null +++ b/libopencv-contrib-dev.install @@ -0,0 +1,177 @@ +# aruco +usr/include/opencv4/opencv2/aruco/* +usr/include/opencv4/opencv2/aruco.hpp +usr/lib/*/libopencv_aruco.a +usr/lib/*/libopencv_aruco.so +# bgsegm +# usr/include/opencv4/opencv2/bgsegm/* +usr/include/opencv4/opencv2/bgsegm.hpp +usr/lib/*/libopencv_bgsegm.a +usr/lib/*/libopencv_bgsegm.so +# bioinspired +usr/include/opencv4/opencv2/bioinspired/* +usr/include/opencv4/opencv2/bioinspired.hpp +usr/lib/*/libopencv_bioinspired.a +usr/lib/*/libopencv_bioinspired.so +# ccalib +usr/include/opencv4/opencv2/ccalib/* +usr/include/opencv4/opencv2/ccalib.hpp +usr/lib/*/libopencv_ccalib.a +usr/lib/*/libopencv_ccalib.so +# cvv +usr/include/opencv4/opencv2/cvv/* +usr/include/opencv4/opencv2/cvv.hpp +usr/lib/*/libopencv_cvv.a +usr/lib/*/libopencv_cvv.so +# dpm +usr/include/opencv4/opencv2/dpm.hpp +usr/lib/*/libopencv_dpm.a +usr/lib/*/libopencv_dpm.so +# fuzzy +usr/include/opencv4/opencv2/fuzzy/* +usr/include/opencv4/opencv2/fuzzy.hpp +usr/lib/*/libopencv_fuzzy.a +usr/lib/*/libopencv_fuzzy.so +# hdf +usr/include/opencv4/opencv2/hdf/* +usr/include/opencv4/opencv2/hdf.hpp +usr/lib/*/libopencv_hdf.a +usr/lib/*/libopencv_hdf.so +# hfs +usr/include/opencv4/opencv2/hfs.hpp +usr/lib/*/libopencv_hfs.a +usr/lib/*/libopencv_hfs.so +# line_descriptor +usr/include/opencv4/opencv2/line_descriptor/* +usr/include/opencv4/opencv2/line_descriptor.hpp +usr/lib/*/libopencv_line_descriptor.a +usr/lib/*/libopencv_line_descriptor.so +# optflow +usr/include/opencv4/opencv2/optflow/* +usr/include/opencv4/opencv2/optflow.hpp +usr/lib/*/libopencv_optflow.a +usr/lib/*/libopencv_optflow.so +# plot +# usr/include/opencv4/opencv2/plot/* +usr/include/opencv4/opencv2/plot.hpp +usr/lib/*/libopencv_plot.a +usr/lib/*/libopencv_plot.so +# reg +usr/include/opencv4/opencv2/reg/* +# usr/include/opencv4/opencv2/reg.hpp +usr/lib/*/libopencv_reg.a +usr/lib/*/libopencv_reg.so +# saliency +usr/include/opencv4/opencv2/saliency/* +usr/include/opencv4/opencv2/saliency.hpp +usr/lib/*/libopencv_saliency.a +usr/lib/*/libopencv_saliency.so +# stereo +usr/include/opencv4/opencv2/stereo/* +usr/include/opencv4/opencv2/stereo.hpp +usr/lib/*/libopencv_stereo.a +usr/lib/*/libopencv_stereo.so +# surface_matching +usr/include/opencv4/opencv2/surface_matching/* +usr/include/opencv4/opencv2/surface_matching.hpp +usr/lib/*/libopencv_surface_matching.a +usr/lib/*/libopencv_surface_matching.so +# structred_light +usr/include/opencv4/opencv2/structured_light/* +usr/include/opencv4/opencv2/structured_light.hpp +usr/lib/*/libopencv_structured_light.a +usr/lib/*/libopencv_structured_light.so +# rgbd +usr/include/opencv4/opencv2/rgbd/* +usr/include/opencv4/opencv2/rgbd.hpp +usr/lib/*/libopencv_rgbd.a +usr/lib/*/libopencv_rgbd.so +# datasets +usr/include/opencv4/opencv2/datasets/* +#usr/include/opencv4/opencv2/datasets.hpp +usr/lib/*/libopencv_datasets.a +usr/lib/*/libopencv_datasets.so +# text +usr/include/opencv4/opencv2/text/* +usr/include/opencv4/opencv2/text.hpp +usr/lib/*/libopencv_text.a +usr/lib/*/libopencv_text.so +# face +usr/include/opencv4/opencv2/face/* +usr/include/opencv4/opencv2/face.hpp +usr/lib/*/libopencv_face.a +usr/lib/*/libopencv_face.so +# freetype +usr/include/opencv4/opencv2/freetype.hpp +usr/lib/*/libopencv_freetype.a +usr/lib/*/libopencv_freetype.so +# ximgproc +usr/include/opencv4/opencv2/ximgproc/* +usr/include/opencv4/opencv2/ximgproc.hpp +usr/lib/*/libopencv_ximgproc.a +usr/lib/*/libopencv_ximgproc.so +# xobjdetect +usr/include/opencv4/opencv2/xobjdetect.hpp +usr/lib/*/libopencv_xobjdetect.a +usr/lib/*/libopencv_xobjdetect.so +# xphoto +usr/include/opencv4/opencv2/xphoto/* +usr/include/opencv4/opencv2/xphoto.hpp +usr/lib/*/libopencv_xphoto.a +usr/lib/*/libopencv_xphoto.so +# wechat-qrcode +usr/include/opencv4/opencv2/wechat_qrcode.hpp +usr/lib/*/libopencv_wechat_qrcode.a +usr/lib/*/libopencv_wechat_qrcode.so +# phase_unwrapping +usr/include/opencv4/opencv2/phase_unwrapping/* +usr/include/opencv4/opencv2/phase_unwrapping.hpp +usr/lib/*/libopencv_phase_unwrapping.a +usr/lib/*/libopencv_phase_unwrapping.so +# img_hash +usr/include/opencv4/opencv2/img_hash/* +usr/include/opencv4/opencv2/img_hash.hpp +usr/lib/*/libopencv_img_hash.a +usr/lib/*/libopencv_img_hash.so +# tracking +usr/include/opencv4/opencv2/tracking/* +usr/include/opencv4/opencv2/tracking.hpp +usr/lib/*/libopencv_tracking.a +usr/lib/*/libopencv_tracking.so +# dnn_objdetect +usr/include/opencv4/opencv2/core_detect.hpp +usr/lib/*/libopencv_dnn_objdetect.so +usr/lib/*/libopencv_dnn_objdetect.a +# quality +usr/include/opencv4/opencv2/quality.hpp +usr/include/opencv4/opencv2/quality/* +usr/lib/*/libopencv_quality.a +usr/lib/*/libopencv_quality.so +# dnn_superres +usr/include/opencv4/opencv2/dnn_superres.hpp +usr/lib/*/libopencv_dnn_superres.a +usr/lib/*/libopencv_dnn_superres.so +# alphamat +usr/include/opencv4/opencv2/alphamat.hpp +usr/lib/*/libopencv_alphamat.a +usr/lib/*/libopencv_alphamat.so +# intensity-transform +usr/include/opencv4/opencv2/intensity_transform.hpp +usr/lib/*/libopencv_intensity_transform.a +usr/lib/*/libopencv_intensity_transform.so +# rapid +usr/include/opencv4/opencv2/rapid.hpp +usr/lib/*/libopencv_rapid.a +usr/lib/*/libopencv_rapid.so +# mcc +usr/include/opencv4/opencv2/mcc.hpp +usr/include/opencv4/opencv2/mcc/ccm.hpp +usr/include/opencv4/opencv2/mcc/checker_detector.hpp +usr/include/opencv4/opencv2/mcc/checker_model.hpp +usr/lib/*/libopencv_mcc.a +usr/lib/*/libopencv_mcc.so +# signal +usr/include/opencv4/opencv2/signal.hpp +usr/include/opencv4/opencv2/signal/signal_resample.hpp +usr/lib/*/libopencv_signal.a +usr/lib/*/libopencv_signal.so diff --git a/libopencv-contrib410.install b/libopencv-contrib410.install new file mode 100644 index 0000000..fcded19 --- /dev/null +++ b/libopencv-contrib410.install @@ -0,0 +1,37 @@ +usr/lib/*/libopencv_aruco.so.* +usr/lib/*/libopencv_bgsegm.so.* +usr/lib/*/libopencv_bioinspired.so.* +usr/lib/*/libopencv_ccalib.so.* +usr/lib/*/libopencv_cvv.so.* +usr/lib/*/libopencv_datasets.so.* +usr/lib/*/libopencv_dpm.so.* +usr/lib/*/libopencv_face.so.* +usr/lib/*/libopencv_freetype.so.* +usr/lib/*/libopencv_fuzzy.so.* +usr/lib/*/libopencv_hdf.so.* +usr/lib/*/libopencv_hfs.so.* +usr/lib/*/libopencv_img_hash.so.* +usr/lib/*/libopencv_line_descriptor.so.* +usr/lib/*/libopencv_optflow.so.* +usr/lib/*/libopencv_phase_unwrapping.so.* +usr/lib/*/libopencv_plot.so.* +usr/lib/*/libopencv_reg.so.* +usr/lib/*/libopencv_rgbd.so.* +usr/lib/*/libopencv_saliency.so.* +usr/lib/*/libopencv_signal.so.* +usr/lib/*/libopencv_stereo.so.* +usr/lib/*/libopencv_structured_light.so.* +usr/lib/*/libopencv_surface_matching.so.* +usr/lib/*/libopencv_text.so.* +usr/lib/*/libopencv_tracking.so.* +usr/lib/*/libopencv_ximgproc.so.* +usr/lib/*/libopencv_xobjdetect.so.* +usr/lib/*/libopencv_xphoto.so.* +usr/lib/*/libopencv_wechat_qrcode.so.* +usr/lib/*/libopencv_dnn_objdetect.so.* +usr/lib/*/libopencv_quality.so.* +usr/lib/*/libopencv_dnn_superres.so.* +usr/lib/*/libopencv_alphamat.so.* +usr/lib/*/libopencv_intensity_transform.so.* +usr/lib/*/libopencv_rapid.so.* +usr/lib/*/libopencv_mcc.so.* diff --git a/libopencv-contrib410.lintian-overrides b/libopencv-contrib410.lintian-overrides new file mode 100644 index 0000000..8675979 --- /dev/null +++ b/libopencv-contrib410.lintian-overrides @@ -0,0 +1 @@ +package-name-doesnt-match-sonames diff --git a/libopencv-core-dev.docs b/libopencv-core-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-core-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-core-dev.install b/libopencv-core-dev.install new file mode 100644 index 0000000..adfdd8e --- /dev/null +++ b/libopencv-core-dev.install @@ -0,0 +1,9 @@ +# header files +usr/include/opencv4/opencv2/core.hpp +usr/include/opencv4/opencv2/core/* +usr/include/opencv4/opencv2/cvconfig.h usr/include/${DEB_HOST_MULTIARCH}/opencv4/opencv2 +usr/include/opencv4/opencv2/opencv.hpp +usr/include/opencv4/opencv2/opencv_modules.hpp +# libraries +usr/lib/*/libopencv_core.a +usr/lib/*/libopencv_core.so diff --git a/libopencv-core410.install b/libopencv-core410.install new file mode 100644 index 0000000..4f4d29a --- /dev/null +++ b/libopencv-core410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_core.so.* diff --git a/libopencv-dev.install b/libopencv-dev.install new file mode 100644 index 0000000..ca016ea --- /dev/null +++ b/libopencv-dev.install @@ -0,0 +1,11 @@ +# samples +usr/bin/opencv_annotation +usr/bin/opencv_interactive-calibration +usr/bin/opencv_model_diagnostics +usr/bin/opencv_version +usr/bin/opencv_visualisation +usr/bin/opencv_waldboost_detector +# cmake +usr/lib/*/cmake/opencv4/*.cmake +# pkg-config +usr/lib/*/pkgconfig/opencv4.pc diff --git a/libopencv-dev.lintian-overrides b/libopencv-dev.lintian-overrides new file mode 100644 index 0000000..6f9ab73 --- /dev/null +++ b/libopencv-dev.lintian-overrides @@ -0,0 +1,6 @@ +libopencv-dev: no-manual-page [usr/bin/opencv_annotation] +libopencv-dev: no-manual-page [usr/bin/opencv_interactive-calibration] +libopencv-dev: no-manual-page [usr/bin/opencv_model_diagnostics] +libopencv-dev: no-manual-page [usr/bin/opencv_version] +libopencv-dev: no-manual-page [usr/bin/opencv_visualisation] +libopencv-dev: no-manual-page [usr/bin/opencv_waldboost_detector] diff --git a/libopencv-dnn-dev.install b/libopencv-dnn-dev.install new file mode 100644 index 0000000..f956a63 --- /dev/null +++ b/libopencv-dnn-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/dnn.hpp +usr/include/opencv4/opencv2/dnn/* +usr/lib/*/libopencv_dnn.a +usr/lib/*/libopencv_dnn.so diff --git a/libopencv-dnn410.install b/libopencv-dnn410.install new file mode 100644 index 0000000..a95c701 --- /dev/null +++ b/libopencv-dnn410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_dnn.so.* diff --git a/libopencv-features2d-dev.docs b/libopencv-features2d-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-features2d-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-features2d-dev.install b/libopencv-features2d-dev.install new file mode 100644 index 0000000..fa34c89 --- /dev/null +++ b/libopencv-features2d-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/features2d.hpp +usr/include/opencv4/opencv2/features2d/* +usr/lib/*/libopencv_features2d.a +usr/lib/*/libopencv_features2d.so diff --git a/libopencv-features2d410.install b/libopencv-features2d410.install new file mode 100644 index 0000000..710c185 --- /dev/null +++ b/libopencv-features2d410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_features2d.so.* diff --git a/libopencv-flann-dev.docs b/libopencv-flann-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-flann-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-flann-dev.install b/libopencv-flann-dev.install new file mode 100644 index 0000000..569e9ac --- /dev/null +++ b/libopencv-flann-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/flann.hpp +usr/include/opencv4/opencv2/flann/* +usr/lib/*/libopencv_flann.a +usr/lib/*/libopencv_flann.so diff --git a/libopencv-flann410.install b/libopencv-flann410.install new file mode 100644 index 0000000..6f9674a --- /dev/null +++ b/libopencv-flann410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_flann.so.* diff --git a/libopencv-gapi-dev.install b/libopencv-gapi-dev.install new file mode 100644 index 0000000..b861be1 --- /dev/null +++ b/libopencv-gapi-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/gapi.hpp +usr/include/opencv4/opencv2/gapi/* +usr/lib/*/libopencv_gapi.a +usr/lib/*/libopencv_gapi.so diff --git a/libopencv-gapi4.5.install b/libopencv-gapi4.5.install new file mode 100644 index 0000000..595938a --- /dev/null +++ b/libopencv-gapi4.5.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_gapi.so.* diff --git a/libopencv-gpu-dev.docs b/libopencv-gpu-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-gpu-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-gpu-dev.install b/libopencv-gpu-dev.install new file mode 100644 index 0000000..e09f66a --- /dev/null +++ b/libopencv-gpu-dev.install @@ -0,0 +1,3 @@ +#usr/include/opencv4/opencv2/gpu/* +#usr/lib/*/libopencv_gpu.a +#usr/lib/*/libopencv_gpu.so diff --git a/libopencv-gpu4.5.install b/libopencv-gpu4.5.install new file mode 100644 index 0000000..312a56e --- /dev/null +++ b/libopencv-gpu4.5.install @@ -0,0 +1 @@ +# usr/lib/*/libopencv_gpu.so.* diff --git a/libopencv-highgui-dev.docs b/libopencv-highgui-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-highgui-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-highgui-dev.install b/libopencv-highgui-dev.install new file mode 100644 index 0000000..d2dbb04 --- /dev/null +++ b/libopencv-highgui-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/highgui.hpp +usr/include/opencv4/opencv2/highgui/* +usr/lib/*/libopencv_highgui.a +usr/lib/*/libopencv_highgui.so diff --git a/libopencv-highgui410.install b/libopencv-highgui410.install new file mode 100644 index 0000000..7943204 --- /dev/null +++ b/libopencv-highgui410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_highgui.so.* diff --git a/libopencv-imgcodecs-dev.install b/libopencv-imgcodecs-dev.install new file mode 100644 index 0000000..26432a2 --- /dev/null +++ b/libopencv-imgcodecs-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/imgcodecs.hpp +usr/include/opencv4/opencv2/imgcodecs/* +usr/lib/*/libopencv_imgcodecs.a +usr/lib/*/libopencv_imgcodecs.so diff --git a/libopencv-imgcodecs410.install b/libopencv-imgcodecs410.install new file mode 100644 index 0000000..f471112 --- /dev/null +++ b/libopencv-imgcodecs410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_imgcodecs.so.* diff --git a/libopencv-imgproc-dev.docs b/libopencv-imgproc-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-imgproc-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-imgproc-dev.install b/libopencv-imgproc-dev.install new file mode 100644 index 0000000..e8be47d --- /dev/null +++ b/libopencv-imgproc-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/imgproc.hpp +usr/include/opencv4/opencv2/imgproc/* +usr/lib/*/libopencv_imgproc.a +usr/lib/*/libopencv_imgproc.so diff --git a/libopencv-imgproc410.install b/libopencv-imgproc410.install new file mode 100644 index 0000000..969bed5 --- /dev/null +++ b/libopencv-imgproc410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_imgproc.so.* diff --git a/libopencv-java.install b/libopencv-java.install new file mode 100644 index 0000000..9c6a724 --- /dev/null +++ b/libopencv-java.install @@ -0,0 +1 @@ +usr/share/java/opencv4/opencv-*.jar diff --git a/libopencv-java.links b/libopencv-java.links new file mode 100644 index 0000000..2041521 --- /dev/null +++ b/libopencv-java.links @@ -0,0 +1,2 @@ +usr/share/java/opencv4/opencv-460.jar usr/share/java/opencv-460.jar +usr/share/java/opencv4/opencv-460.jar usr/share/java/opencv.jar diff --git a/libopencv-java.lintian-overrides b/libopencv-java.lintian-overrides new file mode 100644 index 0000000..c41d7ac --- /dev/null +++ b/libopencv-java.lintian-overrides @@ -0,0 +1 @@ +libopencv-java: jar-contains-source * diff --git a/libopencv-java.poms b/libopencv-java.poms new file mode 100644 index 0000000..9846d72 --- /dev/null +++ b/libopencv-java.poms @@ -0,0 +1 @@ +debian/pom.xml --usj-name=opencv diff --git a/libopencv-ml-dev.docs b/libopencv-ml-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-ml-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-ml-dev.install b/libopencv-ml-dev.install new file mode 100644 index 0000000..ff2a160 --- /dev/null +++ b/libopencv-ml-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/ml.hpp +usr/include/opencv4/opencv2/ml/* +usr/lib/*/libopencv_ml.a +usr/lib/*/libopencv_ml.so diff --git a/libopencv-ml410.install b/libopencv-ml410.install new file mode 100644 index 0000000..584a745 --- /dev/null +++ b/libopencv-ml410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_ml.so.* diff --git a/libopencv-objdetect-dev.docs b/libopencv-objdetect-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-objdetect-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-objdetect-dev.install b/libopencv-objdetect-dev.install new file mode 100644 index 0000000..fa3409b --- /dev/null +++ b/libopencv-objdetect-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/objdetect.hpp +usr/include/opencv4/opencv2/objdetect/* +usr/lib/*/libopencv_objdetect.a +usr/lib/*/libopencv_objdetect.so diff --git a/libopencv-objdetect410.install b/libopencv-objdetect410.install new file mode 100644 index 0000000..4609cf6 --- /dev/null +++ b/libopencv-objdetect410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_objdetect.so.* diff --git a/libopencv-ocl-dev.docs b/libopencv-ocl-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-ocl-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-ocl-dev.install b/libopencv-ocl-dev.install new file mode 100644 index 0000000..6d4de9d --- /dev/null +++ b/libopencv-ocl-dev.install @@ -0,0 +1,3 @@ +#usr/include/opencv4/opencv2/ocl/* +#usr/lib/*/libopencv_ocl.a +#usr/lib/*/libopencv_ocl.so diff --git a/libopencv-ocl4.5.install b/libopencv-ocl4.5.install new file mode 100644 index 0000000..625611c --- /dev/null +++ b/libopencv-ocl4.5.install @@ -0,0 +1 @@ +# usr/lib/*/libopencv_ocl.so.* diff --git a/libopencv-photo-dev.docs b/libopencv-photo-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-photo-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-photo-dev.install b/libopencv-photo-dev.install new file mode 100644 index 0000000..efe0279 --- /dev/null +++ b/libopencv-photo-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/photo.hpp +usr/include/opencv4/opencv2/photo/* +usr/lib/*/libopencv_photo.a +usr/lib/*/libopencv_photo.so diff --git a/libopencv-photo410.install b/libopencv-photo410.install new file mode 100644 index 0000000..ff073e8 --- /dev/null +++ b/libopencv-photo410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_photo.so.* diff --git a/libopencv-shape-dev.install b/libopencv-shape-dev.install new file mode 100644 index 0000000..bc5ed66 --- /dev/null +++ b/libopencv-shape-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/shape.hpp +usr/include/opencv4/opencv2/shape/* +usr/lib/*/libopencv_shape.a +usr/lib/*/libopencv_shape.so diff --git a/libopencv-shape410.install b/libopencv-shape410.install new file mode 100644 index 0000000..e6fd1e2 --- /dev/null +++ b/libopencv-shape410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_shape.so.* diff --git a/libopencv-stitching-dev.docs b/libopencv-stitching-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-stitching-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-stitching-dev.install b/libopencv-stitching-dev.install new file mode 100644 index 0000000..d376ce2 --- /dev/null +++ b/libopencv-stitching-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/stitching.hpp +usr/include/opencv4/opencv2/stitching/* +usr/lib/*/libopencv_stitching.a +usr/lib/*/libopencv_stitching.so diff --git a/libopencv-stitching410.install b/libopencv-stitching410.install new file mode 100644 index 0000000..0806177 --- /dev/null +++ b/libopencv-stitching410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_stitching.so.* diff --git a/libopencv-superres-dev.docs b/libopencv-superres-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-superres-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-superres-dev.install b/libopencv-superres-dev.install new file mode 100644 index 0000000..e7f64e8 --- /dev/null +++ b/libopencv-superres-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/superres.hpp +usr/include/opencv4/opencv2/superres/* +usr/lib/*/libopencv_superres.a +usr/lib/*/libopencv_superres.so diff --git a/libopencv-superres410.install b/libopencv-superres410.install new file mode 100644 index 0000000..9d14658 --- /dev/null +++ b/libopencv-superres410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_superres.so.* diff --git a/libopencv-video-dev.docs b/libopencv-video-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-video-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-video-dev.install b/libopencv-video-dev.install new file mode 100644 index 0000000..d010ce3 --- /dev/null +++ b/libopencv-video-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/video.hpp +usr/include/opencv4/opencv2/video/* +usr/lib/*/libopencv_video.a +usr/lib/*/libopencv_video.so diff --git a/libopencv-video410.install b/libopencv-video410.install new file mode 100644 index 0000000..96cecc4 --- /dev/null +++ b/libopencv-video410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_video.so.* diff --git a/libopencv-videoio-dev.install b/libopencv-videoio-dev.install new file mode 100644 index 0000000..b558d3c --- /dev/null +++ b/libopencv-videoio-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/videoio.hpp +usr/include/opencv4/opencv2/videoio/* +usr/lib/*/libopencv_videoio.a +usr/lib/*/libopencv_videoio.so diff --git a/libopencv-videoio410.install b/libopencv-videoio410.install new file mode 100644 index 0000000..b859b39 --- /dev/null +++ b/libopencv-videoio410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_videoio.so.* diff --git a/libopencv-videostab-dev.docs b/libopencv-videostab-dev.docs new file mode 100644 index 0000000..e174728 --- /dev/null +++ b/libopencv-videostab-dev.docs @@ -0,0 +1 @@ +debian/README.Debian diff --git a/libopencv-videostab-dev.install b/libopencv-videostab-dev.install new file mode 100644 index 0000000..68c5484 --- /dev/null +++ b/libopencv-videostab-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/videostab.hpp +usr/include/opencv4/opencv2/videostab/* +usr/lib/*/libopencv_videostab.a +usr/lib/*/libopencv_videostab.so diff --git a/libopencv-videostab410.install b/libopencv-videostab410.install new file mode 100644 index 0000000..7977e67 --- /dev/null +++ b/libopencv-videostab410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_videostab.so.* diff --git a/libopencv-viz-dev.install b/libopencv-viz-dev.install new file mode 100644 index 0000000..e390344 --- /dev/null +++ b/libopencv-viz-dev.install @@ -0,0 +1,4 @@ +usr/include/opencv4/opencv2/viz.hpp +usr/include/opencv4/opencv2/viz/* +usr/lib/*/libopencv_viz.a +usr/lib/*/libopencv_viz.so diff --git a/libopencv-viz410.install b/libopencv-viz410.install new file mode 100644 index 0000000..6f595f0 --- /dev/null +++ b/libopencv-viz410.install @@ -0,0 +1 @@ +usr/lib/*/libopencv_viz.so.* diff --git a/libopencv410-jni.install b/libopencv410-jni.install new file mode 100644 index 0000000..4e3db40 --- /dev/null +++ b/libopencv410-jni.install @@ -0,0 +1 @@ +usr/share/java/opencv4/libopencv_java*.so usr/lib/jni diff --git a/not-installed b/not-installed new file mode 100644 index 0000000..4920c24 --- /dev/null +++ b/not-installed @@ -0,0 +1,4 @@ +usr/bin/setup_vars_opencv4.sh +usr/share/licenses/opencv4/quirc-LICENSE +usr/share/licenses/opencv4/mscr-chi_table_LICENSE.txt +usr/share/licenses/opencv4/SoftFloat-COPYING.txt diff --git a/opencv-data.install b/opencv-data.install new file mode 100644 index 0000000..55d50bf --- /dev/null +++ b/opencv-data.install @@ -0,0 +1,3 @@ +usr/share/opencv4/haarcascades +usr/share/opencv4/lbpcascades +usr/share/opencv4/quality diff --git a/opencv-doc.install b/opencv-doc.install new file mode 100644 index 0000000..7eac849 --- /dev/null +++ b/opencv-doc.install @@ -0,0 +1,2 @@ +usr/share/doc/* usr/share/doc/opencv-doc/ +usr/share/opencv4/samples/* usr/share/doc/opencv-doc/examples/ diff --git a/opencv-doc.lintian-overrides b/opencv-doc.lintian-overrides new file mode 100644 index 0000000..d3242ab --- /dev/null +++ b/opencv-doc.lintian-overrides @@ -0,0 +1,2 @@ +opencv-doc: privacy-breach-generic * +opencv-doc: embedded-javascript-library * diff --git a/patches/0006-Fix-LAPACK-finding-CMake-code.patch b/patches/0006-Fix-LAPACK-finding-CMake-code.patch new file mode 100644 index 0000000..adb2141 --- /dev/null +++ b/patches/0006-Fix-LAPACK-finding-CMake-code.patch @@ -0,0 +1,43 @@ +From: Victor Westerhuis +Date: Fri, 9 Sep 2022 14:01:42 +0200 +Subject: Fix LAPACK finding CMake code + +On Debian cblas.h and lapacke.h are not installed in the same include +directory. This does not matter when compiling, but the custom header +check in OpenCV fails on it. Force OpenCV to use the standard CMake +check_include_file function to do the check so it succeeds. +--- + cmake/OpenCVFindLAPACK.cmake | 19 ++++--------------- + 1 file changed, 4 insertions(+), 15 deletions(-) + +Index: opencv/cmake/OpenCVFindLAPACK.cmake +=================================================================== +--- opencv.orig/cmake/OpenCVFindLAPACK.cmake 2024-12-11 01:59:53.067051076 +0000 ++++ opencv/cmake/OpenCVFindLAPACK.cmake 2024-12-11 01:59:53.063051188 +0000 +@@ -24,22 +24,11 @@ + macro(_find_header_file_in_dirs VAR NAME) + unset(${VAR}) + unset(${VAR} CACHE) +- if(" ${ARGN}" STREQUAL " ") +- check_include_file("${NAME}" HAVE_${VAR}) +- if(HAVE_${VAR}) +- set(${VAR} "${NAME}") # fallback +- else() +- set(${VAR} "") +- endif() ++ check_include_file("${NAME}" HAVE_${VAR}) ++ if(HAVE_${VAR}) ++ set(${VAR} "${NAME}") # fallback + else() +- find_path(${VAR} "${NAME}" ${ARGN} NO_DEFAULT_PATH) +- if(${VAR}) +- set(${VAR} "${${VAR}}/${NAME}") +- unset(${VAR} CACHE) +- else() +- unset(${VAR} CACHE) +- set(${VAR} "") +- endif() ++ set(${VAR} "") + endif() + endmacro() + diff --git a/patches/0008-Do-not-embed-build-directory-in-binaries.patch b/patches/0008-Do-not-embed-build-directory-in-binaries.patch new file mode 100644 index 0000000..5ed0f8f --- /dev/null +++ b/patches/0008-Do-not-embed-build-directory-in-binaries.patch @@ -0,0 +1,134 @@ +From: Victor Westerhuis +Date: Sat, 19 Nov 2022 21:45:39 +0100 +Subject: Do not embed build directory in binaries + +This makes the opencv core module build reproducibly. +--- + modules/core/CMakeLists.txt | 10 ------ + modules/core/include/opencv2/core/private.hpp | 4 +-- + modules/core/include/opencv2/core/utility.hpp | 4 +-- + modules/core/src/utils/datafile.cpp | 48 +-------------------------- + 4 files changed, 5 insertions(+), 61 deletions(-) + +Index: opencv/modules/core/CMakeLists.txt +=================================================================== +--- opencv.orig/modules/core/CMakeLists.txt 2024-12-11 01:59:53.187047726 +0000 ++++ opencv/modules/core/CMakeLists.txt 2024-12-11 01:59:53.183047838 +0000 +@@ -215,16 +215,6 @@ + ") + endif() + +-set(OPENCV_DATA_CONFIG_STR "${OPENCV_DATA_CONFIG_STR} +-#define OPENCV_BUILD_DIR \"${CMAKE_BINARY_DIR}\" +-") +- +-file(RELATIVE_PATH SOURCE_DIR_RELATIVE ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}) +-set(OPENCV_DATA_CONFIG_STR "${OPENCV_DATA_CONFIG_STR} +-#define OPENCV_DATA_BUILD_DIR_SEARCH_PATHS \\ +- \"${SOURCE_DIR_RELATIVE}/\" +-") +- + if(WIN32) + file(RELATIVE_PATH INSTALL_DATA_DIR_RELATIVE "${CMAKE_INSTALL_PREFIX}/${OPENCV_BIN_INSTALL_PATH}" "${CMAKE_INSTALL_PREFIX}/${OPENCV_OTHER_INSTALL_PATH}") + else() +Index: opencv/modules/core/include/opencv2/core/private.hpp +=================================================================== +--- opencv.orig/modules/core/include/opencv2/core/private.hpp 2024-12-11 01:59:53.187047726 +0000 ++++ opencv/modules/core/include/opencv2/core/private.hpp 2024-12-11 01:59:53.183047838 +0000 +@@ -825,10 +825,10 @@ + 2. Check path specified by configuration parameter with "_HINT" suffix (name of environment variable). + 3. Check path specified by configuration parameter (name of environment variable). + If parameter value is not empty and nothing is found then stop searching. +-4. Detects build/install path based on: ++4. Detects install path based on: + a. current working directory (CWD) + b. and/or binary module location (opencv_core/opencv_world, doesn't work with static linkage) +-5. Scan `/{,data}` directories if build directory is detected or the current directory is in source tree. ++5. Scan `/{,data}` directories if the current directory is in source tree. + 6. Scan `/share/OpenCV` directory if install directory is detected. + + @param relative_path Relative path to data file +Index: opencv/modules/core/include/opencv2/core/utility.hpp +=================================================================== +--- opencv.orig/modules/core/include/opencv2/core/utility.hpp 2024-12-11 01:59:53.187047726 +0000 ++++ opencv/modules/core/include/opencv2/core/utility.hpp 2024-12-11 01:59:53.183047838 +0000 +@@ -1165,10 +1165,10 @@ + 2. OPENCV_SAMPLES_DATA_PATH_HINT environment variable + 3. OPENCV_SAMPLES_DATA_PATH environment variable + If parameter value is not empty and nothing is found then stop searching. +-4. Detects build/install path based on: ++4. Detects install path based on: + a. current working directory (CWD) + b. and/or binary module location (opencv_core/opencv_world, doesn't work with static linkage) +-5. Scan `/{,data,samples/data}` directories if build directory is detected or the current directory is in source tree. ++5. Scan `/{,data,samples/data}` directories if the current directory is in source tree. + 6. Scan `/share/OpenCV` directory if install directory is detected. + + @see cv::utils::findDataFile +Index: opencv/modules/core/src/utils/datafile.cpp +=================================================================== +--- opencv.orig/modules/core/src/utils/datafile.cpp 2024-12-11 01:59:53.187047726 +0000 ++++ opencv/modules/core/src/utils/datafile.cpp 2024-12-11 01:59:53.183047838 +0000 +@@ -280,32 +280,8 @@ + + + // Steps: 4, 5, 6 +- cv::String cwd = utils::fs::getcwd(); +- cv::String build_dir(OPENCV_BUILD_DIR); +- bool has_tested_build_directory = false; +- if (isSubDirectory(build_dir, cwd) || isSubDirectory(utils::fs::canonical(build_dir), utils::fs::canonical(cwd))) +- { +- CV_LOG_DEBUG(NULL, "utils::findDataFile(): the current directory is build sub-directory: " << cwd); +- const char* build_subdirs[] = { OPENCV_DATA_BUILD_DIR_SEARCH_PATHS }; +- for (size_t k = 0; k < sizeof(build_subdirs)/sizeof(build_subdirs[0]); k++) +- { +- CV_LOG_DEBUG(NULL, "utils::findDataFile(): /" << build_subdirs[k]); +- cv::String datapath = utils::fs::join(build_dir, build_subdirs[k]); +- if (utils::fs::isDirectory(datapath)) +- { +- for(size_t i = search_subdir.size(); i > 0; i--) +- { +- const cv::String& subdir = search_subdir[i - 1]; +- cv::String prefix = utils::fs::join(datapath, subdir); +- TRY_FILE_WITH_PREFIX(prefix); +- } +- } +- } +- has_tested_build_directory = true; +- } +- + cv::String source_dir; +- cv::String try_source_dir = cwd; ++ cv::String try_source_dir = utils::fs::getcwd(); + for (int levels = 0; levels < 3; ++levels) + { + if (utils::fs::exists(utils::fs::join(try_source_dir, "modules/core/include/opencv2/core/version.hpp"))) +@@ -341,28 +317,6 @@ + CV_LOG_INFO(NULL, "Can't detect module binaries location"); + } + +- if (!has_tested_build_directory && +- (isSubDirectory(build_dir, module_path) || isSubDirectory(utils::fs::canonical(build_dir), utils::fs::canonical(module_path))) +- ) +- { +- CV_LOG_DEBUG(NULL, "utils::findDataFile(): the binary module directory is build sub-directory: " << module_path); +- const char* build_subdirs[] = { OPENCV_DATA_BUILD_DIR_SEARCH_PATHS }; +- for (size_t k = 0; k < sizeof(build_subdirs)/sizeof(build_subdirs[0]); k++) +- { +- CV_LOG_DEBUG(NULL, "utils::findDataFile(): /" << build_subdirs[k]); +- cv::String datapath = utils::fs::join(build_dir, build_subdirs[k]); +- if (utils::fs::isDirectory(datapath)) +- { +- for(size_t i = search_subdir.size(); i > 0; i--) +- { +- const cv::String& subdir = search_subdir[i - 1]; +- cv::String prefix = utils::fs::join(datapath, subdir); +- TRY_FILE_WITH_PREFIX(prefix); +- } +- } +- } +- } +- + #if defined OPENCV_INSTALL_DATA_DIR_RELATIVE + if (!module_path.empty()) // require module path + { diff --git a/patches/0009-Do-not-embed-build-directory-in-documentation.patch b/patches/0009-Do-not-embed-build-directory-in-documentation.patch new file mode 100644 index 0000000..bc77b3f --- /dev/null +++ b/patches/0009-Do-not-embed-build-directory-in-documentation.patch @@ -0,0 +1,52 @@ +From: Victor Westerhuis +Date: Sat, 19 Nov 2022 23:12:02 +0100 +Subject: Do not embed build directory in documentation + +This makes the documentation build reproducibly. +--- + doc/CMakeLists.txt | 4 +++- + doc/Doxyfile.in | 2 +- + 2 files changed, 4 insertions(+), 2 deletions(-) + +Index: opencv/doc/CMakeLists.txt +=================================================================== +--- opencv.orig/doc/CMakeLists.txt 2024-12-11 01:59:53.335043595 +0000 ++++ opencv/doc/CMakeLists.txt 2024-12-11 01:59:53.335043595 +0000 +@@ -36,6 +36,7 @@ + + # gathering headers + set(paths_include) ++ set(paths_source) + set(paths_doc) + set(paths_bib) + set(paths_sample) +@@ -72,6 +73,7 @@ + endif() + endif() + endif() ++ list(APPEND paths_source "${OPENCV_MODULE_opencv_${m}_LOCATION}/src") + # doc folder + set(docs_dir "${OPENCV_MODULE_opencv_${m}_LOCATION}/doc") + if(EXISTS "${docs_dir}") +@@ -175,7 +177,7 @@ + string(REPLACE ";" " " CMAKE_DOXYGEN_ENABLED_SECTIONS "${CMAKE_DOXYGEN_ENABLED_SECTIONS}") + # TODO: remove paths_doc from EXAMPLE_PATH after face module tutorials/samples moved to separate folders + string(REPLACE ";" " \\\n" CMAKE_DOXYGEN_EXAMPLE_PATH "${example_path} ; ${paths_doc} ; ${paths_sample}") +- string(REPLACE ";" " \\\n" CMAKE_DOXYGEN_INCLUDE_ROOTS "${paths_include}") ++ string(REPLACE ";" " \\\n" CMAKE_DOXYGEN_INCLUDE_ROOTS "${paths_include} ; ${paths_source}") + set(CMAKE_DOXYGEN_LAYOUT "${CMAKE_CURRENT_BINARY_DIR}/DoxygenLayout.xml") + set(CMAKE_DOXYGEN_OUTPUT_PATH "doxygen") + set(CMAKE_DOXYGEN_MAIN_REFERENCE "${refs_main}") +Index: opencv/doc/Doxyfile.in +=================================================================== +--- opencv.orig/doc/Doxyfile.in 2024-12-11 01:59:53.335043595 +0000 ++++ opencv/doc/Doxyfile.in 2024-12-11 01:59:53.335043595 +0000 +@@ -25,7 +25,7 @@ + ALWAYS_DETAILED_SEC = NO + INLINE_INHERITED_MEMB = NO + FULL_PATH_NAMES = YES +-STRIP_FROM_PATH = @CMAKE_SOURCE_DIR@/modules @CMAKE_DOXYGEN_INCLUDE_ROOTS@ ++STRIP_FROM_PATH = @CMAKE_SOURCE_DIR@/modules @OPENCV_EXTRA_MODULES_PATH@ @CMAKE_SOURCE_DIR@/doc @CMAKE_BINARY_DIR@ @CMAKE_DOXYGEN_INCLUDE_ROOTS@ + STRIP_FROM_INC_PATH = @CMAKE_DOXYGEN_INCLUDE_ROOTS@ + SHORT_NAMES = NO + JAVADOC_AUTOBRIEF = NO diff --git a/patches/change_jquery.js_path b/patches/change_jquery.js_path new file mode 100644 index 0000000..8e2c66d --- /dev/null +++ b/patches/change_jquery.js_path @@ -0,0 +1,23 @@ +From 2159fa1b456891510ada38a48e09ad1acec65786 Mon Sep 17 00:00:00 2001 +From: Nobuhiro Iwamatsu +Date: Sat, 4 Aug 2018 09:28:35 +0900 +Subject: [PATCH 2/2] use system-installed jquery + +Signed-off-by: Nobuhiro Iwamatsu +--- + doc/header.html | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: opencv/doc/header.html +=================================================================== +--- opencv.orig/doc/header.html 2024-12-11 01:59:52.659062466 +0000 ++++ opencv/doc/header.html 2024-12-11 01:59:52.659062466 +0000 +@@ -9,7 +9,7 @@ + $title + + +- ++ + + + $treeview diff --git a/patches/cmake-dont-install-inexistent-files.patch b/patches/cmake-dont-install-inexistent-files.patch new file mode 100644 index 0000000..beebc20 --- /dev/null +++ b/patches/cmake-dont-install-inexistent-files.patch @@ -0,0 +1,12 @@ +Index: opencv/cmake/OpenCVDetectOpenCL.cmake +=================================================================== +--- opencv.orig/cmake/OpenCVDetectOpenCL.cmake 2024-12-11 01:59:52.939054649 +0000 ++++ opencv/cmake/OpenCVDetectOpenCL.cmake 2024-12-11 01:59:52.935054761 +0000 +@@ -5,7 +5,6 @@ + else() + set(OPENCL_LIBRARY "" CACHE STRING "OpenCL library") + set(OPENCL_INCLUDE_DIR "${OpenCV_SOURCE_DIR}/3rdparty/include/opencl/1.2" CACHE PATH "OpenCL include directory") +- ocv_install_3rdparty_licenses(opencl-headers "${OpenCV_SOURCE_DIR}/3rdparty/include/opencl/LICENSE.txt") + endif() + mark_as_advanced(OPENCL_INCLUDE_DIR OPENCL_LIBRARY) + diff --git a/patches/cmake-no-download.patch b/patches/cmake-no-download.patch new file mode 100644 index 0000000..73ef50a --- /dev/null +++ b/patches/cmake-no-download.patch @@ -0,0 +1,270 @@ +Index: opencv/cmake/OpenCVDownload.cmake +=================================================================== +--- opencv.orig/cmake/OpenCVDownload.cmake 2024-12-11 01:59:53.471039798 +0000 ++++ opencv/cmake/OpenCVDownload.cmake 2024-12-11 01:59:53.471039798 +0000 +@@ -40,263 +40,11 @@ + ocv_check_environment_variables(OPENCV_DOWNLOAD_MIRROR_ID) + + function(ocv_init_download_mirror) +- if(NOT DEFINED OPENCV_DOWNLOAD_MIRROR_ID) +- # Run `git remote get-url origin` to get remote source +- execute_process( +- COMMAND +- git remote get-url origin +- WORKING_DIRECTORY +- ${CMAKE_SOURCE_DIR} +- RESULT_VARIABLE +- RESULT_STATUS +- OUTPUT_VARIABLE +- OCV_GIT_ORIGIN_URL_OUTPUT +- ERROR_QUIET +- ) +- # if non-git, OCV_GIT_ORIGIN_URL_OUTPUT is empty +- if(NOT OCV_GIT_ORIGIN_URL_OUTPUT) +- message(STATUS "ocv_init_download: OpenCV source tree is not fetched as git repository. 3rdparty resources will be downloaded from github.com by default.") +- return() +- else() +- # Check if git origin is github.com +- string(FIND "${OCV_GIT_ORIGIN_URL_OUTPUT}" "github.com" _found_github) +- if(NOT ${_found_github} EQUAL -1) +- set(OPENCV_DOWNLOAD_MIRROR_ID "github" CACHE STRING "") +- endif() +- # Check if git origin is gitcode.net +- string(FIND "${OCV_GIT_ORIGIN_URL_OUTPUT}" "gitcode.net" _found_gitcode) +- if(NOT ${_found_gitcode} EQUAL -1) +- set(OPENCV_DOWNLOAD_MIRROR_ID "gitcode" CACHE STRING "") +- endif() +- endif() +- endif() +- +- if(OPENCV_DOWNLOAD_MIRROR_ID STREQUAL "gitcode" OR OPENCV_DOWNLOAD_MIRROR_ID STREQUAL "custom") +- message(STATUS "ocv_init_download: Using ${OPENCV_DOWNLOAD_MIRROR_ID}-hosted mirror to download 3rdparty components.") +- ocv_cmake_hook_append(OPENCV_DOWNLOAD_PRE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/mirrors/${OPENCV_DOWNLOAD_MIRROR_ID}.cmake") +- elseif(OPENCV_DOWNLOAD_MIRROR_ID STREQUAL "github") +- return() +- else() +- message(STATUS "ocv_init_download: Unable to recognize git server of OpenCV source code. Using github.com to download 3rdparty components.") +- endif() ++ message(STATUS "ocv_init_download: No downloading as per Debian policy.") + endfunction() + + function(ocv_download) +- cmake_parse_arguments(DL "UNPACK;RELATIVE_URL" "FILENAME;HASH;DESTINATION_DIR;ID;STATUS" "URL" ${ARGN}) +- +- function(ocv_download_log) +- file(APPEND "${OPENCV_DOWNLOAD_LOG}" "${ARGN}\n") +- endfunction() +- +- ocv_assert(DL_FILENAME) +- ocv_assert(DL_HASH) +- ocv_assert(DL_URL) +- ocv_assert(DL_DESTINATION_DIR) +- if((NOT " ${DL_UNPARSED_ARGUMENTS}" STREQUAL " ") +- OR DL_FILENAME STREQUAL "" +- OR DL_HASH STREQUAL "" +- OR DL_URL STREQUAL "" +- OR DL_DESTINATION_DIR STREQUAL "" +- ) +- set(msg_level FATAL_ERROR) +- if(DEFINED DL_STATUS) +- set(${DL_STATUS} FALSE PARENT_SCOPE) +- set(msg_level WARNING) +- endif() +- message(${msg_level} "ERROR: ocv_download() unsupported arguments: ${ARGV}") +- return() +- endif() +- +- if(DEFINED DL_STATUS) +- set(${DL_STATUS} TRUE PARENT_SCOPE) +- endif() +- +- ocv_cmake_hook(OPENCV_DOWNLOAD_PRE) +- +- # Check CMake cache for already processed tasks +- string(FIND "${DL_DESTINATION_DIR}" "${CMAKE_BINARY_DIR}" DL_BINARY_PATH_POS) +- if(DL_BINARY_PATH_POS EQUAL 0) +- set(__file_id "${DL_DESTINATION_DIR}/${DL_FILENAME}") +- file(RELATIVE_PATH __file_id "${CMAKE_BINARY_DIR}" "${__file_id}") +- string(REGEX REPLACE "[^a-zA-Z0-9_]" "_" __file_id "${__file_id}") +- if(DL_ID) +- string(TOUPPER ${DL_ID} __id) +- string(REGEX REPLACE "[^a-zA-Z0-9_]" "_" __id "${__id}") +- set(OCV_DOWNLOAD_HASH_NAME "OCV_DOWNLOAD_${__id}_HASH_${__file_id}") +- else() +- set(OCV_DOWNLOAD_HASH_NAME "OCV_DOWNLOAD_HASH_${__file_id}") +- endif() +- if(" ${${OCV_DOWNLOAD_HASH_NAME}}" STREQUAL " ${DL_HASH}") +- ocv_download_log("#match_hash_in_cmake_cache \"${OCV_DOWNLOAD_HASH_NAME}\"") +- return() +- endif() +- unset("${OCV_DOWNLOAD_HASH_NAME}" CACHE) +- else() +- set(OCV_DOWNLOAD_HASH_NAME "") +- #message(WARNING "Download destination is not in CMAKE_BINARY_DIR=${CMAKE_BINARY_DIR}: ${DL_DESTINATION_DIR}") +- endif() +- +- # Select first non-empty url +- foreach(url ${DL_URL}) +- if(url) +- set(DL_URL "${url}") +- break() +- endif() +- endforeach() +- +- # Append filename to url if needed +- if(DL_RELATIVE_URL) +- set(DL_URL "${DL_URL}${DL_FILENAME}") +- endif() +- +- set(mode "copy") +- if(DL_UNPACK) +- set(mode "unpack") +- endif() +- +- # Log all calls to file +- ocv_download_log("#do_${mode} \"${DL_FILENAME}\" \"${DL_HASH}\" \"${DL_URL}\" \"${DL_DESTINATION_DIR}\"") +- # ... and to console +- set(__msg_prefix "") +- if(DL_ID) +- set(__msg_prefix "${DL_ID}: ") +- endif() +- message(STATUS "${__msg_prefix}Downloading ${DL_FILENAME} from ${DL_URL}") +- +- # Copy mode: check if copy destination exists and is correct +- if(NOT DL_UNPACK) +- set(COPY_DESTINATION "${DL_DESTINATION_DIR}/${DL_FILENAME}") +- if(EXISTS "${COPY_DESTINATION}") +- ocv_download_log("#check_md5 \"${COPY_DESTINATION}\"") +- file(MD5 "${COPY_DESTINATION}" target_md5) +- if(target_md5 STREQUAL DL_HASH) +- ocv_download_log("#match_md5 \"${COPY_DESTINATION}\" \"${target_md5}\"") +- if(OCV_DOWNLOAD_HASH_NAME) +- set(${OCV_DOWNLOAD_HASH_NAME} "${DL_HASH}" CACHE INTERNAL "") +- endif() +- return() +- endif() +- ocv_download_log("#mismatch_md5 \"${COPY_DESTINATION}\" \"${target_md5}\"") +- else() +- ocv_download_log("#missing \"${COPY_DESTINATION}\"") +- endif() +- endif() +- +- # Check cache first +- if(DL_ID) +- string(TOLOWER "${DL_ID}" __id) +- string(REGEX REPLACE "[^a-zA-Z0-9_/ ]" "_" __id "${__id}") +- set(CACHE_CANDIDATE "${OPENCV_DOWNLOAD_PATH}/${__id}/${DL_HASH}-${DL_FILENAME}") +- else() +- set(CACHE_CANDIDATE "${OPENCV_DOWNLOAD_PATH}/${DL_HASH}-${DL_FILENAME}") +- endif() +- if(EXISTS "${CACHE_CANDIDATE}") +- ocv_download_log("#check_md5 \"${CACHE_CANDIDATE}\"") +- file(MD5 "${CACHE_CANDIDATE}" target_md5) +- if(NOT target_md5 STREQUAL DL_HASH) +- ocv_download_log("#mismatch_md5 \"${CACHE_CANDIDATE}\" \"${target_md5}\"") +- ocv_download_log("#delete \"${CACHE_CANDIDATE}\"") +- file(REMOVE ${CACHE_CANDIDATE}) +- endif() +- endif() +- +- # Download +- if(NOT EXISTS "${CACHE_CANDIDATE}") +- ocv_download_log("#cmake_download \"${CACHE_CANDIDATE}\" \"${DL_URL}\"") +- foreach(try ${OPENCV_DOWNLOAD_TRIES_LIST}) +- ocv_download_log("#try ${try}") +- file(DOWNLOAD "${DL_URL}" "${CACHE_CANDIDATE}" +- STATUS status +- LOG __log +- ${OPENCV_DOWNLOAD_PARAMS}) +- if(status EQUAL 0) +- break() +- endif() +- message(STATUS "Try ${try} failed") +- endforeach() +- if(NOT OPENCV_SKIP_FILE_DOWNLOAD_DUMP) # workaround problem with old CMake versions: "Invalid escape sequence" +- string(LENGTH "${__log}" __log_length) +- if(__log_length LESS 65536) +- string(REPLACE "\n" "\n# " __log "${__log}") +- ocv_download_log("# ${__log}\n") +- endif() +- endif() +- if(NOT status EQUAL 0) +- set(msg_level FATAL_ERROR) +- if(DEFINED DL_STATUS) +- set(${DL_STATUS} FALSE PARENT_SCOPE) +- set(msg_level WARNING) +- endif() +- if(status MATCHES "Couldn't resolve host name") +- message(STATUS " +-======================================================================= +- Couldn't download files from the Internet. +- Please check the Internet access on this host. +-======================================================================= +-") +- elseif(status MATCHES "Couldn't connect to server") +- message(STATUS " +-======================================================================= +- Couldn't connect to server from the Internet. +- Perhaps direct connections are not allowed in the current network. +- To use proxy please check/specify these environment variables: +- - http_proxy/https_proxy +- - and/or HTTP_PROXY/HTTPS_PROXY +-======================================================================= +-") +- endif() +- message(${msg_level} "${__msg_prefix}Download failed: ${status} +-For details please refer to the download log file: +-${OPENCV_DOWNLOAD_LOG} +-") +- # write helper scripts for failed downloads +- file(APPEND "${OPENCV_DOWNLOAD_WITH_CURL}" "curl --create-dirs --output \"${CACHE_CANDIDATE}\" \"${DL_URL}\"\n") +- file(APPEND "${OPENCV_DOWNLOAD_WITH_WGET}" "mkdir -p $(dirname ${CACHE_CANDIDATE}) && wget -O \"${CACHE_CANDIDATE}\" \"${DL_URL}\"\n") +- return() +- endif() +- +- # Don't remove this code, because EXPECTED_MD5 parameter doesn't fail "file(DOWNLOAD)" step on wrong hash +- ocv_download_log("#check_md5 \"${CACHE_CANDIDATE}\"") +- file(MD5 "${CACHE_CANDIDATE}" target_md5) +- if(NOT target_md5 STREQUAL DL_HASH) +- ocv_download_log("#mismatch_md5 \"${CACHE_CANDIDATE}\" \"${target_md5}\"") +- set(msg_level FATAL_ERROR) +- if(DEFINED DL_STATUS) +- set(${DL_STATUS} FALSE PARENT_SCOPE) +- set(msg_level WARNING) +- endif() +- message(${msg_level} "${__msg_prefix}Hash mismatch: ${target_md5}") +- return() +- endif() +- endif() +- +- # Unpack or copy +- if(DL_UNPACK) +- if(EXISTS "${DL_DESTINATION_DIR}") +- ocv_download_log("#remove_unpack \"${DL_DESTINATION_DIR}\"") +- file(REMOVE_RECURSE "${DL_DESTINATION_DIR}") +- endif() +- ocv_download_log("#mkdir \"${DL_DESTINATION_DIR}\"") +- file(MAKE_DIRECTORY "${DL_DESTINATION_DIR}") +- ocv_download_log("#unpack \"${DL_DESTINATION_DIR}\" \"${CACHE_CANDIDATE}\"") +- execute_process(COMMAND "${CMAKE_COMMAND}" -E tar xzf "${CACHE_CANDIDATE}" +- WORKING_DIRECTORY "${DL_DESTINATION_DIR}" +- RESULT_VARIABLE res) +- if(NOT res EQUAL 0) +- message(FATAL_ERROR "${__msg_prefix}Unpack failed: ${res}") +- endif() +- else() +- ocv_download_log("#copy \"${COPY_DESTINATION}\" \"${CACHE_CANDIDATE}\"") +- execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CACHE_CANDIDATE}" "${COPY_DESTINATION}" +- RESULT_VARIABLE res) +- if(NOT res EQUAL 0) +- message(FATAL_ERROR "${__msg_prefix}Copy failed: ${res}") +- endif() +- endif() +- +- if(OCV_DOWNLOAD_HASH_NAME) +- set(${OCV_DOWNLOAD_HASH_NAME} "${DL_HASH}" CACHE INTERNAL "") +- endif() ++ message(STATUS "ocv_download: Not downloading ${FILENAME} from ${URL} as per Debian policy.") + endfunction() + + # ---------------------------------------------------------------------------- diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..303c675 --- /dev/null +++ b/patches/series @@ -0,0 +1,6 @@ +change_jquery.js_path +cmake-dont-install-inexistent-files.patch +0006-Fix-LAPACK-finding-CMake-code.patch +0008-Do-not-embed-build-directory-in-binaries.patch +0009-Do-not-embed-build-directory-in-documentation.patch +cmake-no-download.patch diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..2294a41 --- /dev/null +++ b/pom.xml @@ -0,0 +1,17 @@ + + 4.0.0 + org.opencv + opencv + jar + 4.10.0 + OpenCV + + + License Agreement For Open Source Computer Vision Library (3-clause BSD License) + + + https://opencv.org/ + + + diff --git a/python3-opencv.lintian-overrides b/python3-opencv.lintian-overrides new file mode 100644 index 0000000..b5da4a1 --- /dev/null +++ b/python3-opencv.lintian-overrides @@ -0,0 +1,2 @@ +# This looks like a false positive. +missing-dependency-on-numpy-abi diff --git a/rules b/rules new file mode 100755 index 0000000..48247d1 --- /dev/null +++ b/rules @@ -0,0 +1,200 @@ +#!/usr/bin/make -f + +include /usr/share/dpkg/architecture.mk + +export DEB_BUILD_MAINT_OPTIONS=hardening=+all + +BUILDDIR = obj-$(DEB_HOST_MULTIARCH) + +CMAKE_ARCH_FLAGS := + +# Comply with Debian architectures baseline. +# See cmake/OpenCVCompilerOptimizations.cmake for a list of known features. +# Reference: https://github.com/opencv/opencv/wiki/CPU-optimizations-build-options +ifeq ($(DEB_HOST_ARCH_CPU),amd64) + # Only SSE2 on amd64 + CMAKE_ARCH_FLAGS += -DCPU_BASELINE="SSE2" + CMAKE_ARCH_FLAGS += -DCPU_BASELINE_DISABLE="SSE3" +else ifeq ($(DEB_HOST_ARCH_CPU),armhf) + CMAKE_ARCH_FLAGS += -DCPU_BASELINE_DISABLE="VFPV3,NEON" + CMAKE_ARCH_FLAGS += -DCPU_DISPATCH="VFPV3,NEON" +else ifeq ($(DEB_HOST_ARCH_CPU),i386) + # Be extra sure SSE is not picked up on i386 + CMAKE_ARCH_FLAGS += -DCPU_BASELINE_DISABLE="SSE,SSE2" +else ifeq ($(DEB_HOST_ARCH_CPU),ppc64el) + # VSX for Power8, VSX3 for Power9 + CMAKE_ARCH_FLAGS += -DCPU_BASELINE="VSX" + CMAKE_ARCH_FLAGS += -DCPU_DISPATCH="VSX3" +endif + +# TBB support +ifneq (,$(findstring $(DEB_HOST_ARCH), amd64 arm64 armel armhf i386 mips mips64el ppc64el s390x powerpc powerpcspe riscv64 ppc64 sh4 sparc64)) +CMAKE_ARCH_FLAGS += -DWITH_TBB=ON +else +CMAKE_ARCH_FLAGS += -DWITH_TBB=OFF +endif + +# Linux-specific stuff +ifeq ($(DEB_HOST_ARCH_OS),linux) +CMAKE_ARCH_FLAGS += -DWITH_1394=ON -DWITH_V4L=ON +else +CMAKE_ARCH_FLAGS += -DWITH_1394=OFF -DWITH_V4L=OFF +endif + +CMAKE_JAVA_FLAGS := + +# Java support +ifeq (,$(filter $(DEB_HOST_ARCH), hppa hurd-i386 kfreebsd-i386 kfreebsd-amd64)) +CMAKE_JAVA_FLAGS += -DBUILD_JAVA=ON +endif + +ifneq (,$(filter $(DEB_HOST_ARCH), armel m68k powerpc sh4)) +export DEB_LDFLAGS_MAINT_APPEND += -Wl,--no-as-needed -latomic -Wl,--as-needed +endif + +# For Java +export JAVA_HOME=/usr/lib/jvm/default-java + +CMAKE_FLAGS = \ + -GNinja \ + -DANT_EXECUTABLE=/usr/bin/ant \ + -DBUILD_EXAMPLES=OFF \ + -DBUILD_INFO_SKIP_TIMESTAMP=ON \ + -DBUILD_PROTOBUF=OFF \ + -DBUILD_PERF_TESTS=OFF \ + -DBUILD_opencv_dnn=ON \ + -DBUILD_opencv_dnn_modern=ON \ + -DBUILD_opencv_face=ON \ + -DBUILD_opencv_python2=OFF \ + -DBUILD_opencv_python3=OFF \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_CXX_FLAGS_RELEASE="$(CXXFLAGS)" \ + -DCMAKE_C_FLAGS_RELEASE="$(CFLAGS)" \ + -DCMAKE_EXE_LINKER_FLAGS_RELEASE="$(LDFLAGS)" \ + -DCMAKE_INSTALL_LIBDIR="lib/$(DEB_HOST_MULTIARCH)" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DENABLE_PRECOMPILED_HEADERS=OFF \ + -DINSTALL_C_EXAMPLES=ON \ + -DINSTALL_PYTHON_EXAMPLES=ON \ + -DOPENCL_INCLUDE_DIR:PATH="/usr/include/CL/" \ + -DOPENCV_EXTRA_MODULES_PATH="$(CURDIR)/contrib/modules" \ + -DOPENCV_MATHJAX_RELPATH=/usr/share/javascript/mathjax/ \ + -DOPENCV_GENERATE_PKGCONFIG=ON \ + -DOPENCV_LAPACK_FIND_PACKAGE_ONLY=ON \ + -DOPENCV_DOWNLOAD_TRIES_LIST= \ + -DOpenGL_GL_PREFERENCE=GLVND \ + -DPROTOBUF_UPDATE_FILES=ON \ + -DWITH_ADE=OFF \ + -DWITH_CAROTENE=OFF \ + -DWITH_CUDA=OFF \ + -DWITH_EIGEN=ON \ + -DWITH_FFMPEG=ON \ + -DWITH_FLATBUFFERS=OFF \ + -DWITH_GDAL=ON \ + -DWITH_GDCM=ON \ + -DWITH_GSTREAMER=ON \ + -DWITH_GPHOTO2=ON \ + -DWITH_GTK=OFF \ + -DWITH_IPP=OFF \ + -DWITH_ITT=OFF \ + -DWITH_JASPER=OFF \ + -DWITH_JPEG=ON \ + -DWITH_LAPACK=ON \ + -DWITH_NGRAPH=OFF \ + -DWITH_OPENCL=ON \ + -DWITH_OPENEXR=ON \ + -DWITH_OPENGL=ON \ + -DWITH_PNG=ON \ + -DWITH_PROTOBUF=ON \ + -DWITH_PVAPI=ON \ + -DWITH_QT=5 \ + -DWITH_QUIRC=ON \ + -DWITH_TIFF=ON \ + -DWITH_UNICAP=OFF \ + -DWITH_VTK=ON \ + -DWITH_XINE=OFF \ + $(CMAKE_ARCH_FLAGS) + +%: + dh $@ + +override_dh_auto_clean: + dh_auto_clean -B $(BUILDDIR) + dh_auto_clean -B $(BUILDDIR)-static + dh_auto_clean -S pybuild \ + -- --name=opencv --system=custom \ + --clean-args "dh_auto_clean -B {build_dir}" + -$(RM) -rfv 3rdparty + +override_dh_auto_configure: + # prepare the 3rd party directory + test -d 3rdparty || cp -av debian/3rdparty-4.10.0 3rdparty + # dynamically linked + dh_auto_configure -B $(BUILDDIR) \ + -- $(CMAKE_FLAGS) $(CMAKE_JAVA_FLAGS) \ + -DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$(LDFLAGS)" \ + -DBUILD_SHARED_LIBS=ON -DBUILD_DOCS=ON \ + -DBUILD_TESTS=OFF + # statically linked + dh_auto_configure -B $(BUILDDIR)-static \ + -- $(CMAKE_FLAGS) \ + -DBUILD_SHARED_LIBS=OFF -DBUILD_DOCS=OFF \ + -DBUILD_TESTS=OFF \ + -DBUILD_opencv_apps=OFF -DBUILD_JAVA=OFF + # Python extension + dh_auto_configure -S pybuild \ + -- --name=opencv --system=custom --configure-args "\ + dh_auto_configure -S cmake -D modules/python -B {build_dir} -- \ + -GNinja \ + -DCMAKE_SKIP_RPATH=ON \ + -DOpenCV_BINARY_DIR=$(CURDIR)/$(BUILDDIR) \ + -DOPENCV_PYTHON_STANDALONE_INSTALL_PATH={install_dir} \ + -DOPENCV_SKIP_PYTHON_LOADER=ON \ + -DOPENCV_PYTHON_VERSION={version} \ + -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/{interpreter} \ + -DPYTHON_LIBRARY:FILEPATH={interpreter.library_file} \ + -DPYTHON_INCLUDE_DIR:PATH={interpreter.include_dir}" + # strip non-reproducible info from version string + sed -i -e 's,$(CURDIR),<>,g' \ + -e "s,$$(uname -sr),,g" \ + $(BUILDDIR)/modules/core/version_string.inc \ + $(BUILDDIR)-static/modules/core/version_string.inc + +override_dh_auto_build: + # documentation + dh_auto_build -B $(BUILDDIR) -- doxygen + # dynamically linked + dh_auto_build -B $(BUILDDIR) + # statically linked + dh_auto_build -B $(BUILDDIR)-static + # Python extension + dh_auto_build -S pybuild \ + -- --name=opencv --system=custom \ + --build-args "dh_auto_build -B {build_dir}" + +override_dh_auto_test: + -LD_LIBRARY_PATH=$(shell realpath $(BUILDDIR))/lib dh_auto_test + +override_dh_auto_install: + dh_auto_install -B $(BUILDDIR) + # Python extension + dh_auto_install -S pybuild \ + -- --name=opencv --system=custom \ + --install-args "dh_auto_install -B {build_dir} --destdir={destdir}" + +execute_before_dh_install: + # put the static libs together with the rest of the stuff + cp -v $(BUILDDIR)-static/lib/*.a debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/ + -find debian/tmp -type f -name jquery.js -delete + -find debian/tmp -type f -name '*.supp' -delete + -find debian/tmp -type d -empty -delete + -$(RM) -r $(BUILDDIR)-static + +execute_before_dh_strip_nondeterminism-indep: + # This can be deleted after https://github.com/doxygen/doxygen/pull/9227 is + # in the version of Doxygen in Debian. It won't hurt afterwards, because + # there will be nothing to strip anymore. + sed -i -e 's,$(CURDIR)/\($(BUILDDIR)/\)\?,,g' \ + debian/opencv-doc/usr/share/doc/opencv-doc/opencv4/html/opencv.tag diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/source/lintian-overrides b/source/lintian-overrides new file mode 100644 index 0000000..edd3fca --- /dev/null +++ b/source/lintian-overrides @@ -0,0 +1,2 @@ +# This is to mitigate FTBFS due to OOM on low-mem architectures. +opencv source: debian-rules-sets-DEB_BUILD_OPTIONS * diff --git a/tests/bts-1017348.cc b/tests/bts-1017348.cc new file mode 100644 index 0000000..a35cadb --- /dev/null +++ b/tests/bts-1017348.cc @@ -0,0 +1,26 @@ +// From https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1017348 +#include +#include +#include "opencv2/core/core.hpp" +#include "opencv2/imgproc/imgproc.hpp" +#include + +int main(int argc, char** argv) +{ + + std::vector pts; + + pts.push_back(cv::Point(3,100)); + pts.push_back(cv::Point(5,98)); + pts.push_back(cv::Point(6,110)); + + cv::Rect rect = cv::boundingRect(pts); + + std::cout << "x: " << rect.x << "+" << rect.width + << " y: " << rect.y << "+" << rect.height + << "\n"; + assert(rect.x == 3); + assert(rect.width == 4); + assert(rect.y == 98); + assert(rect.height == 13); +} diff --git a/tests/control b/tests/control new file mode 100644 index 0000000..be2cc8d --- /dev/null +++ b/tests/control @@ -0,0 +1,7 @@ +Test-Command: python3 debian/tests/test.py +Depends: @, python3, python3-numpy +Restrictions: allow-stderr + +Test-Command: g++ -O2 debian/tests/bts-1017348.cc -lopencv_imgproc -I/usr/include/opencv4 -o bts-1017348; ./bts-1017348 +Depends: @, build-essential +Restrictions: allow-stderr diff --git a/tests/test.py b/tests/test.py new file mode 100755 index 0000000..8dc52e8 --- /dev/null +++ b/tests/test.py @@ -0,0 +1,4 @@ +#!/usr/bin/python3 +import cv2 +img = cv2.imread('samples/data/LinuxLogo.jpg') +print(img.shape) diff --git a/upstream/metadata b/upstream/metadata new file mode 100644 index 0000000..a1ec9ce --- /dev/null +++ b/upstream/metadata @@ -0,0 +1,21 @@ +Bug-Submit: https://github.com/opencv/opencv/issues//new +Reference: + - Author: Gary Bradski and Adrian Kaehler + Title: "Learning OpenCV: Computer Vision with the OpenCV Library" + Edition: 1st + ISBN: 0596516134 + Publisher: O'Reilly + Year: 2008 + Type: book +Donation: https://opencv.org/ +Documentation: https://docs.opencv.org/master/ +Bug-Database: https://github.com/opencv/opencv/issues/ +Repository: https://github.com/opencv/opencv.git +Repository-Browse: https://github.com/opencv/opencv +Registry: + - Name: OMICtools + Entry: OMICS_10147 + - Name: bio.tools + Entry: NA + - Name: SciCrunch + Entry: SCR_015526 diff --git a/watch b/watch new file mode 100644 index 0000000..4bb2527 --- /dev/null +++ b/watch @@ -0,0 +1,19 @@ +version=4 + +opts="\ +compression=xz, \ +oversionmangle=s/$/+dfsg/, \ +dversionmangle=s/\+(dfsg|ds)\d?$//, \ +filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.(.+)$%@PACKAGE@_$1.orig.$2%, \ +" \ + https://github.com/opencv/opencv/tags \ + (?:.*?/)?v?(\d[\d.]*)@ARCHIVE_EXT@ debian + +opts="\ +compression=xz, \ +component=contrib, \ +dversionmangle=s/\+(dfsg|ds)\d?$//, \ +filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.(.+)$%@PACKAGE@_$1.orig-contrib.$2%, \ +" \ + https://github.com/opencv/opencv_contrib/tags \ + (?:.*?/)?v?(\d[\d.]*)@ARCHIVE_EXT@ same