diff --git a/leptonica/BUILD.gn b/leptonica/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..5ba4b6e92e88f87a78cc47106573568459487790 --- /dev/null +++ b/leptonica/BUILD.gn @@ -0,0 +1,3769 @@ +# Copyright (c) 2021 Huawei Device Co., Ltd. +# 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. + +import("//build/ohos.gni") + +declare_args() { + enable_leptonica_test = false +} + +config("libleptonica_config") { + include_dirs = [ + "./leptonica", + "./leptonica/src", + "./adapted/", + "//third_party/giflib", + "//third_party/libjpeg", + "//third_party/openjpeg/adapter/include", + "//third_party/openjpeg/openjpeg/src/lib/openjp2", + "//third_party/openjpeg/openjpeg/src/lib/openjpip", + "//third_party/libpng", + "//third_party/libpng/arm", + "//third_party/zlib", + "//third_party/libtiff/adapted", + "//third_party/libtiff/libtiff/libtiff", + ] + + cflags = [ + "-fPIC", + "-Wall", + "-Wextra", + "-fexceptions", + "-DHAVE_CONFIG_H", + "-DHAVE_LIBGIF=1", + "-DHAVE_LIBJPEG=1", + "-DHAVE_LIBPNG=1", + "-DHAVE_LIBTIFF=1", + "-DHAVE_LIBWEBP=1", + "-DHAVE_LIBZ=1", + "-DHAVE_LIBJP2K=1", + "-DLIBLEPT_EXPORTS", + "-Dleptonica_EXPORTS", + "-Wno-error=unused-parameter", + "-Wno-error=int-conversion", + "-Wno-error=format", + "-Wno-error=sign-compare", + "-Wno-error=unused-variable", + "-Wno-error=unused-function", + "-Wno-error=deprecated-declarations", + "-Wno-error=implicit-function-declaration", + ] +} + +ohos_shared_library("leptonica") { + sources = [ + "./leptonica/src/adaptmap.c", + "./leptonica/src/affine.c", + "./leptonica/src/affinecompose.c", + "./leptonica/src/arrayaccess.c", + "./leptonica/src/bardecode.c", + "./leptonica/src/baseline.c", + "./leptonica/src/bbuffer.c", + "./leptonica/src/bilateral.c", + "./leptonica/src/bilinear.c", + "./leptonica/src/binarize.c", + "./leptonica/src/binexpand.c", + "./leptonica/src/binreduce.c", + "./leptonica/src/blend.c", + "./leptonica/src/bmf.c", + "./leptonica/src/bmpio.c", + "./leptonica/src/bmpiostub.c", + "./leptonica/src/bootnumgen1.c", + "./leptonica/src/bootnumgen2.c", + "./leptonica/src/bootnumgen3.c", + "./leptonica/src/boxbasic.c", + "./leptonica/src/boxfunc1.c", + "./leptonica/src/boxfunc2.c", + "./leptonica/src/boxfunc3.c", + "./leptonica/src/boxfunc4.c", + "./leptonica/src/bytearray.c", + "./leptonica/src/ccbord.c", + "./leptonica/src/ccthin.c", + "./leptonica/src/classapp.c", + "./leptonica/src/colorcontent.c", + "./leptonica/src/coloring.c", + "./leptonica/src/colormap.c", + "./leptonica/src/colormorph.c", + "./leptonica/src/colorquant1.c", + "./leptonica/src/colorquant2.c", + "./leptonica/src/colorseg.c", + "./leptonica/src/colorspace.c", + "./leptonica/src/compare.c", + "./leptonica/src/conncomp.c", + "./leptonica/src/convertfiles.c", + "./leptonica/src/convolve.c", + "./leptonica/src/correlscore.c", + "./leptonica/src/dewarp1.c", + "./leptonica/src/dewarp2.c", + "./leptonica/src/dewarp3.c", + "./leptonica/src/dewarp4.c", + "./leptonica/src/dnabasic.c", + "./leptonica/src/dnafunc1.c", + "./leptonica/src/dnahash.c", + "./leptonica/src/dwacomb.2.c", + "./leptonica/src/dwacomblow.2.c", + "./leptonica/src/edge.c", + "./leptonica/src/encoding.c", + "./leptonica/src/enhance.c", + "./leptonica/src/fhmtauto.c", + "./leptonica/src/fhmtgen.1.c", + "./leptonica/src/fhmtgenlow.1.c", + "./leptonica/src/finditalic.c", + "./leptonica/src/flipdetect.c", + "./leptonica/src/fliphmtgen.c", + "./leptonica/src/fmorphauto.c", + "./leptonica/src/fmorphgen.1.c", + "./leptonica/src/fmorphgenlow.1.c", + "./leptonica/src/fpix1.c", + "./leptonica/src/fpix2.c", + "./leptonica/src/gifio.c", + "./leptonica/src/gifiostub.c", + "./leptonica/src/gplot.c", + "./leptonica/src/graphics.c", + "./leptonica/src/graymorph.c", + "./leptonica/src/grayquant.c", + "./leptonica/src/grayquantlow.c", + "./leptonica/src/heap.c", + "./leptonica/src/jbclass.c", + "./leptonica/src/jp2kheader.c", + "./leptonica/src/jp2kheaderstub.c", + "./leptonica/src/jp2kio.c", + "./leptonica/src/jp2kiostub.c", + "./leptonica/src/jpegio.c", + "./leptonica/src/jpegiostub.c", + "./leptonica/src/kernel.c", + "./leptonica/src/leptwin.c", + "./leptonica/src/libversions.c", + "./leptonica/src/list.c", + "./leptonica/src/map.c", + "./leptonica/src/maze.c", + "./leptonica/src/morph.c", + "./leptonica/src/morphapp.c", + "./leptonica/src/morphdwa.c", + "./leptonica/src/morphseq.c", + "./leptonica/src/numabasic.c", + "./leptonica/src/numafunc1.c", + "./leptonica/src/numafunc2.c", + "./leptonica/src/pageseg.c", + "./leptonica/src/paintcmap.c", + "./leptonica/src/parseprotos.c", + "./leptonica/src/partition.c", + "./leptonica/src/pdfio1.c", + "./leptonica/src/pdfio1stub.c", + "./leptonica/src/pdfio2.c", + "./leptonica/src/pdfio2stub.c", + "./leptonica/src/pix1.c", + "./leptonica/src/pix2.c", + "./leptonica/src/pix3.c", + "./leptonica/src/pix4.c", + "./leptonica/src/pix5.c", + "./leptonica/src/pixabasic.c", + "./leptonica/src/pixacc.c", + "./leptonica/src/pixafunc1.c", + "./leptonica/src/pixafunc2.c", + "./leptonica/src/pixalloc.c", + "./leptonica/src/pixarith.c", + "./leptonica/src/pixcomp.c", + "./leptonica/src/pixconv.c", + "./leptonica/src/pixlabel.c", + "./leptonica/src/pixtiling.c", + "./leptonica/src/pngio.c", + "./leptonica/src/pngiostub.c", + "./leptonica/src/pnmio.c", + "./leptonica/src/pnmiostub.c", + "./leptonica/src/projective.c", + "./leptonica/src/psio1.c", + "./leptonica/src/psio1stub.c", + "./leptonica/src/psio2.c", + "./leptonica/src/psio2stub.c", + "./leptonica/src/ptabasic.c", + "./leptonica/src/ptafunc1.c", + "./leptonica/src/ptafunc2.c", + "./leptonica/src/ptra.c", + "./leptonica/src/quadtree.c", + "./leptonica/src/queue.c", + "./leptonica/src/rank.c", + "./leptonica/src/rbtree.c", + "./leptonica/src/readbarcode.c", + "./leptonica/src/readfile.c", + "./leptonica/src/recogbasic.c", + "./leptonica/src/recogdid.c", + "./leptonica/src/recogident.c", + "./leptonica/src/recogtrain.c", + "./leptonica/src/regutils.c", + "./leptonica/src/rop.c", + "./leptonica/src/ropiplow.c", + "./leptonica/src/roplow.c", + "./leptonica/src/rotate.c", + "./leptonica/src/rotateam.c", + "./leptonica/src/rotateamlow.c", + "./leptonica/src/rotateorth.c", + "./leptonica/src/rotateshear.c", + "./leptonica/src/runlength.c", + "./leptonica/src/sarray1.c", + "./leptonica/src/sarray2.c", + "./leptonica/src/scale.c", + "./leptonica/src/scalelow.c", + "./leptonica/src/seedfill.c", + "./leptonica/src/seedfilllow.c", + "./leptonica/src/sel1.c", + "./leptonica/src/sel2.c", + "./leptonica/src/selgen.c", + "./leptonica/src/shear.c", + "./leptonica/src/skew.c", + "./leptonica/src/spixio.c", + "./leptonica/src/stack.c", + "./leptonica/src/stringcode.c", + "./leptonica/src/strokes.c", + "./leptonica/src/sudoku.c", + "./leptonica/src/textops.c", + "./leptonica/src/tiffio.c", + "./leptonica/src/tiffiostub.c", + "./leptonica/src/utils1.c", + "./leptonica/src/utils2.c", + "./leptonica/src/warper.c", + "./leptonica/src/watershed.c", + "./leptonica/src/webpio.c", + "./leptonica/src/webpiostub.c", + "./leptonica/src/writefile.c", + "./leptonica/src/zlibmem.c", + "./leptonica/src/zlibmemstub.c", + ] + + configs = [ ":libleptonica_config" ] + + deps = [ + "//third_party/giflib:libgif", + "//third_party/libjpeg:libjpeg_static", + "//third_party/libpng:libpng_static", + "//third_party/libtiff:libtiff", + "//third_party/openjpeg:openjpeg", + "//third_party/skia/third_party/libwebp", + "//third_party/zlib:libz", + ] + + part_name = "leptonica" +} + +config("leptonica_config") { + include_dirs = [ + "./leptonica/prog", + "./leptonica", + "./leptonica/src", + "./adapted", + ] + + cflags = [ + "-fPIC", + "-Wall", + "-Wextra", + "-fexceptions", + "-DHAVE_CONFIG_H", + "-DLIBLEPT_IMPORTS", + "-Wno-error=unused-variable", + "-Wno-error=unused-parameter", + "-Wno-error=unused-function", + "-Wno-error=sometimes-uninitialized", + ] +} + +ohos_executable("adaptmap_reg") { + sources = [ "./leptonica/prog/adaptmap_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("adaptnorm_reg") { + sources = [ "./leptonica/prog/adaptnorm_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("affine_reg") { + sources = [ "./leptonica/prog/affine_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("alltests_reg") { + sources = [ "./leptonica/prog/alltests_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("alphaops_reg") { + sources = [ "./leptonica/prog/alphaops_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("alphaxform_reg") { + sources = [ "./leptonica/prog/alphaxform_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("baseline_reg") { + sources = [ "./leptonica/prog/baseline_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("bilateral1_reg") { + sources = [ "./leptonica/prog/bilateral1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("bilateral2_reg") { + sources = [ "./leptonica/prog/bilateral2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("bilinear_reg") { + sources = [ "./leptonica/prog/bilinear_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binarize_reg") { + sources = [ "./leptonica/prog/binarize_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binmorph1_reg") { + sources = [ "./leptonica/prog/binmorph1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binmorph2_reg") { + sources = [ "./leptonica/prog/binmorph2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binmorph3_reg") { + sources = [ "./leptonica/prog/binmorph3_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binmorph4_reg") { + sources = [ "./leptonica/prog/binmorph4_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binmorph5_reg") { + sources = [ "./leptonica/prog/binmorph5_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("blackwhite_reg") { + sources = [ "./leptonica/prog/blackwhite_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("blend1_reg") { + sources = [ "./leptonica/prog/blend1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("blend2_reg") { + sources = [ "./leptonica/prog/blend2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("blend3_reg") { + sources = [ "./leptonica/prog/blend3_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("blend4_reg") { + sources = [ "./leptonica/prog/blend4_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("boxa1_reg") { + sources = [ "./leptonica/prog/boxa1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("boxa2_reg") { + sources = [ "./leptonica/prog/boxa2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("ccthin1_reg") { + sources = [ "./leptonica/prog/ccthin1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("ccthin2_reg") { + sources = [ "./leptonica/prog/ccthin2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("cmapquant_reg") { + sources = [ "./leptonica/prog/cmapquant_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colorcontent_reg") { + sources = [ "./leptonica/prog/colorcontent_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("coloring_reg") { + sources = [ "./leptonica/prog/coloring_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colorize_reg") { + sources = [ "./leptonica/prog/colorize_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colormask_reg") { + sources = [ "./leptonica/prog/colormask_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colormorph_reg") { + sources = [ "./leptonica/prog/colormorph_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colorquant_reg") { + sources = [ "./leptonica/prog/colorquant_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colorseg_reg") { + sources = [ "./leptonica/prog/colorseg_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colorspace_reg") { + sources = [ "./leptonica/prog/colorspace_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("compare_reg") { + sources = [ "./leptonica/prog/compare_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("compfilter_reg") { + sources = [ "./leptonica/prog/compfilter_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("conncomp_reg") { + sources = [ "./leptonica/prog/conncomp_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("conversion_reg") { + sources = [ "./leptonica/prog/conversion_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("convolve_reg") { + sources = [ "./leptonica/prog/convolve_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarp_reg") { + sources = [ "./leptonica/prog/dewarp_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("distance_reg") { + sources = [ "./leptonica/prog/distance_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dither_reg") { + sources = [ "./leptonica/prog/dither_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dna_reg") { + sources = [ "./leptonica/prog/dna_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dwamorph1_reg") { + sources = [ + "./leptonica/prog/dwalinear.3.c", + "./leptonica/prog/dwalinearlow.3.c", + "./leptonica/prog/dwamorph1_reg.c", + ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dwamorph2_reg") { + sources = [ + "./leptonica/prog/dwalinear.3.c", + "./leptonica/prog/dwalinearlow.3.c", + "./leptonica/prog/dwamorph2_reg.c", + ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("edge_reg") { + sources = [ "./leptonica/prog/edge_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("enhance_reg") { + sources = [ "./leptonica/prog/enhance_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("equal_reg") { + sources = [ "./leptonica/prog/equal_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("expand_reg") { + sources = [ "./leptonica/prog/expand_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("extrema_reg") { + sources = [ "./leptonica/prog/extrema_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fhmtauto_reg") { + sources = [ "./leptonica/prog/fhmtauto_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("files_reg") { + sources = [ "./leptonica/prog/files_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("findcorners_reg") { + sources = [ "./leptonica/prog/findcorners_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("findpattern_reg") { + sources = [ "./leptonica/prog/findpattern_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("flipdetect_reg") { + sources = [ "./leptonica/prog/flipdetect_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fmorphauto_reg") { + sources = [ "./leptonica/prog/fmorphauto_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fpix1_reg") { + sources = [ "./leptonica/prog/fpix1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fpix2_reg") { + sources = [ "./leptonica/prog/fpix2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("genfonts_reg") { + sources = [ "./leptonica/prog/genfonts_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("gifio_reg") { + sources = [ "./leptonica/prog/gifio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("grayfill_reg") { + sources = [ "./leptonica/prog/grayfill_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("graymorph1_reg") { + sources = [ "./leptonica/prog/graymorph1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("graymorph2_reg") { + sources = [ "./leptonica/prog/graymorph2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("grayquant_reg") { + sources = [ "./leptonica/prog/grayquant_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("hardlight_reg") { + sources = [ "./leptonica/prog/hardlight_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("heap_reg") { + sources = [ "./leptonica/prog/heap_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("insert_reg") { + sources = [ "./leptonica/prog/insert_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("ioformats_reg") { + sources = [ "./leptonica/prog/ioformats_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("jbclass_reg") { + sources = [ "./leptonica/prog/jbclass_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("jp2kio_reg") { + sources = [ "./leptonica/prog/jp2kio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("jpegio_reg") { + sources = [ "./leptonica/prog/jpegio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("kernel_reg") { + sources = [ "./leptonica/prog/kernel_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("label_reg") { + sources = [ "./leptonica/prog/label_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("lineremoval_reg") { + sources = [ "./leptonica/prog/lineremoval_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("locminmax_reg") { + sources = [ "./leptonica/prog/locminmax_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("logicops_reg") { + sources = [ "./leptonica/prog/logicops_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("lowaccess_reg") { + sources = [ "./leptonica/prog/lowaccess_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("maze_reg") { + sources = [ "./leptonica/prog/maze_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("mtiff_reg") { + sources = [ "./leptonica/prog/mtiff_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("multitype_reg") { + sources = [ "./leptonica/prog/multitype_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("nearline_reg") { + sources = [ "./leptonica/prog/nearline_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("newspaper_reg") { + sources = [ "./leptonica/prog/newspaper_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("numa1_reg") { + sources = [ "./leptonica/prog/numa1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("numa2_reg") { + sources = [ "./leptonica/prog/numa2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("overlap_reg") { + sources = [ "./leptonica/prog/overlap_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pageseg_reg") { + sources = [ "./leptonica/prog/pageseg_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("paintmask_reg") { + sources = [ "./leptonica/prog/paintmask_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("paint_reg") { + sources = [ "./leptonica/prog/paint_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pdfseg_reg") { + sources = [ "./leptonica/prog/pdfseg_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixa1_reg") { + sources = [ "./leptonica/prog/pixa1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixa2_reg") { + sources = [ "./leptonica/prog/pixa2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixadisp_reg") { + sources = [ "./leptonica/prog/pixadisp_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixalloc_reg") { + sources = [ "./leptonica/prog/pixalloc_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixcomp_reg") { + sources = [ "./leptonica/prog/pixcomp_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixmem_reg") { + sources = [ "./leptonica/prog/pixmem_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixserial_reg") { + sources = [ "./leptonica/prog/pixserial_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixtile_reg") { + sources = [ "./leptonica/prog/pixtile_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pngio_reg") { + sources = [ "./leptonica/prog/pngio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pnmio_reg") { + sources = [ "./leptonica/prog/pnmio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("projection_reg") { + sources = [ "./leptonica/prog/projection_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("projective_reg") { + sources = [ "./leptonica/prog/projective_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("psioseg_reg") { + sources = [ "./leptonica/prog/psioseg_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("psio_reg") { + sources = [ "./leptonica/prog/psio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pta_reg") { + sources = [ "./leptonica/prog/pta_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("ptra1_reg") { + sources = [ "./leptonica/prog/ptra1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("ptra2_reg") { + sources = [ "./leptonica/prog/ptra2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rankbin_reg") { + sources = [ "./leptonica/prog/rankbin_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rankhisto_reg") { + sources = [ "./leptonica/prog/rankhisto_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rank_reg") { + sources = [ "./leptonica/prog/rank_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rasteropip_reg") { + sources = [ "./leptonica/prog/rasteropip_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rasterop_reg") { + sources = [ "./leptonica/prog/rasterop_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rotate1_reg") { + sources = [ "./leptonica/prog/rotate1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rotate2_reg") { + sources = [ "./leptonica/prog/rotate2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("scale_reg") { + sources = [ "./leptonica/prog/scale_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("selio_reg") { + sources = [ "./leptonica/prog/selio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("shear1_reg") { + sources = [ "./leptonica/prog/shear1_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("shear2_reg") { + sources = [ "./leptonica/prog/shear2_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("skew_reg") { + sources = [ "./leptonica/prog/skew_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("smallpix_reg") { + sources = [ "./leptonica/prog/smallpix_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("smoothedge_reg") { + sources = [ "./leptonica/prog/smoothedge_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("splitcomp_reg") { + sources = [ "./leptonica/prog/splitcomp_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("string_reg") { + sources = [ "./leptonica/prog/string_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("subpixel_reg") { + sources = [ "./leptonica/prog/subpixel_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("texturefill_reg") { + sources = [ "./leptonica/prog/texturefill_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("threshnorm_reg") { + sources = [ "./leptonica/prog/threshnorm_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("translate_reg") { + sources = [ "./leptonica/prog/translate_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("warper_reg") { + sources = [ "./leptonica/prog/warper_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("webpio_reg") { + sources = [ "./leptonica/prog/webpio_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("wordboxes_reg") { + sources = [ "./leptonica/prog/wordboxes_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("writetext_reg") { + sources = [ "./leptonica/prog/writetext_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("xformbox_reg") { + sources = [ "./leptonica/prog/xformbox_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("adaptmap_dark") { + sources = [ "./leptonica/prog/adaptmap_dark.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("arabic_lines") { + sources = [ "./leptonica/prog/arabic_lines.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("arithtest") { + sources = [ "./leptonica/prog/arithtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("autogentest1") { + sources = [ "./leptonica/prog/autogentest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("autogentest2") { + sources = [ + "./leptonica/prog/autogen.137.c", + "./leptonica/prog/autogentest2.c", + ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("barcodetest") { + sources = [ "./leptonica/prog/barcodetest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binarize_set") { + sources = [ "./leptonica/prog/binarize_set.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("binarizefiles") { + sources = [ "./leptonica/prog/binarizefiles.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("bincompare") { + sources = [ "./leptonica/prog/bincompare.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("blendcmaptest") { + sources = [ "./leptonica/prog/blendcmaptest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("buffertest") { + sources = [ "./leptonica/prog/buffertest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("byteatest") { + sources = [ "./leptonica/prog/byteatest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("ccbordtest") { + sources = [ "./leptonica/prog/ccbordtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("cctest1") { + sources = [ "./leptonica/prog/cctest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("cleanpdf") { + sources = [ "./leptonica/prog/cleanpdf.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("colorsegtest") { + sources = [ "./leptonica/prog/colorsegtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("comparepages") { + sources = [ "./leptonica/prog/comparepages.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("comparepixa") { + sources = [ "./leptonica/prog/comparepixa.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("comparetest") { + sources = [ "./leptonica/prog/comparetest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("concatpdf") { + sources = [ "./leptonica/prog/concatpdf.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("contrasttest") { + sources = [ "./leptonica/prog/contrasttest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("convertfilestopdf") { + sources = [ "./leptonica/prog/convertfilestopdf.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("convertfilestops") { + sources = [ "./leptonica/prog/convertfilestops.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("convertformat") { + sources = [ "./leptonica/prog/convertformat.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("convertsegfilestopdf") { + sources = [ "./leptonica/prog/convertsegfilestopdf.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("convertsegfilestops") { + sources = [ "./leptonica/prog/convertsegfilestops.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("converttogray") { + sources = [ "./leptonica/prog/converttogray.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("converttopdf") { + sources = [ "./leptonica/prog/converttopdf.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("converttops") { + sources = [ "./leptonica/prog/converttops.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("cornertest") { + sources = [ "./leptonica/prog/cornertest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("corrupttest") { + sources = [ "./leptonica/prog/corrupttest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("croptest") { + sources = [ "./leptonica/prog/croptest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("croptext") { + sources = [ "./leptonica/prog/croptext.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarprules") { + sources = [ "./leptonica/prog/dewarprules.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarptest1") { + sources = [ "./leptonica/prog/dewarptest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarptest2") { + sources = [ "./leptonica/prog/dewarptest2.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarptest3") { + sources = [ "./leptonica/prog/dewarptest3.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarptest4") { + sources = [ "./leptonica/prog/dewarptest4.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dewarptest5") { + sources = [ "./leptonica/prog/dewarptest5.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("digitprep1") { + sources = [ "./leptonica/prog/digitprep1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("displayboxa") { + sources = [ "./leptonica/prog/displayboxa.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("displayboxes_on_pixa") { + sources = [ "./leptonica/prog/displayboxes_on_pixa.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("displaypix") { + sources = [ "./leptonica/prog/displaypix.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("displaypixa") { + sources = [ "./leptonica/prog/displaypixa.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("dwalineargen") { + sources = [ "./leptonica/prog/dwalineargen.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("falsecolortest") { + sources = [ "./leptonica/prog/falsecolortest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fcombautogen") { + sources = [ "./leptonica/prog/fcombautogen.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fhmtautogen") { + sources = [ "./leptonica/prog/fhmtautogen.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fileinfo") { + sources = [ "./leptonica/prog/fileinfo.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("findbinding") { + sources = [ "./leptonica/prog/findbinding.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("find_colorregions") { + sources = [ "./leptonica/prog/find_colorregions.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("findpattern1") { + sources = [ "./leptonica/prog/findpattern1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("findpattern2") { + sources = [ "./leptonica/prog/findpattern2.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("findpattern3") { + sources = [ "./leptonica/prog/findpattern3.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("flipselgen") { + sources = [ "./leptonica/prog/flipselgen.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fmorphautogen") { + sources = [ "./leptonica/prog/fmorphautogen.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("fpixcontours") { + sources = [ "./leptonica/prog/fpixcontours.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("gammatest") { + sources = [ "./leptonica/prog/gammatest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("gifio_leaktest") { + sources = [ "./leptonica/prog/gifio_leaktest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("graphicstest") { + sources = [ "./leptonica/prog/graphicstest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("graymorphtest") { + sources = [ "./leptonica/prog/graymorphtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("hashtest") { + sources = [ "./leptonica/prog/hashtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("histotest") { + sources = [ "./leptonica/prog/histotest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("htmlviewer") { + sources = [ "./leptonica/prog/htmlviewer.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("iotest") { + sources = [ "./leptonica/prog/iotest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("italictest") { + sources = [ "./leptonica/prog/italictest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("jbcorrelation") { + sources = [ "./leptonica/prog/jbcorrelation.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("jbrankhaus") { + sources = [ "./leptonica/prog/jbrankhaus.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("jbwords") { + sources = [ "./leptonica/prog/jbwords.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("listtest") { + sources = [ "./leptonica/prog/listtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_adapt") { + sources = [ "./leptonica/prog/livre_adapt.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_hmt") { + sources = [ "./leptonica/prog/livre_hmt.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_makefigs") { + sources = [ "./leptonica/prog/livre_makefigs.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_orient") { + sources = [ "./leptonica/prog/livre_orient.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_pageseg") { + sources = [ "./leptonica/prog/livre_pageseg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_seedgen") { + sources = [ "./leptonica/prog/livre_seedgen.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("livre_tophat") { + sources = [ "./leptonica/prog/livre_tophat.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("maketile") { + sources = [ "./leptonica/prog/maketile.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("maptest") { + sources = [ "./leptonica/prog/maptest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("misctest1") { + sources = [ "./leptonica/prog/misctest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("modifyhuesat") { + sources = [ "./leptonica/prog/modifyhuesat.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("morphseq_reg") { + sources = [ "./leptonica/prog/morphseq_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("morphtest1") { + sources = [ "./leptonica/prog/morphtest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("numaranktest") { + sources = [ "./leptonica/prog/numaranktest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("otsutest1") { + sources = [ "./leptonica/prog/otsutest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("otsutest2") { + sources = [ "./leptonica/prog/otsutest2.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pagesegtest1") { + sources = [ "./leptonica/prog/pagesegtest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pagesegtest2") { + sources = [ "./leptonica/prog/pagesegtest2.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("partitiontest") { + sources = [ "./leptonica/prog/partitiontest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pdfiotest") { + sources = [ "./leptonica/prog/pdfiotest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("percolatetest") { + sources = [ "./leptonica/prog/percolatetest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixaatest") { + sources = [ "./leptonica/prog/pixaatest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("pixafileinfo") { + sources = [ "./leptonica/prog/pixafileinfo.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("plottest") { + sources = [ "./leptonica/prog/plottest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("printimage") { + sources = [ "./leptonica/prog/printimage.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("printsplitimage") { + sources = [ "./leptonica/prog/printsplitimage.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("printtiff") { + sources = [ "./leptonica/prog/printtiff.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("quadtreetest") { + sources = [ "./leptonica/prog/quadtreetest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rbtreetest") { + sources = [ "./leptonica/prog/rbtreetest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recog_bootnum") { + sources = [ "./leptonica/prog/recog_bootnum.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogsort") { + sources = [ "./leptonica/prog/recogsort.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogtest1") { + sources = [ "./leptonica/prog/recogtest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogtest2") { + sources = [ "./leptonica/prog/recogtest2.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogtest3") { + sources = [ "./leptonica/prog/recogtest3.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogtest4") { + sources = [ "./leptonica/prog/recogtest4.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogtest5") { + sources = [ "./leptonica/prog/recogtest5.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("recogtest6") { + sources = [ "./leptonica/prog/recogtest6.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("reducetest") { + sources = [ "./leptonica/prog/reducetest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("removecmap") { + sources = [ "./leptonica/prog/removecmap.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("renderfonts") { + sources = [ "./leptonica/prog/renderfonts.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rotatefastalt") { + sources = [ "./leptonica/prog/rotatefastalt.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rotateorthtest1") { + sources = [ "./leptonica/prog/rotateorthtest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rotateorth_reg") { + sources = [ "./leptonica/prog/rotateorth_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("rotatetest1") { + sources = [ "./leptonica/prog/rotatetest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("runlengthtest") { + sources = [ "./leptonica/prog/runlengthtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("scaleandtile") { + sources = [ "./leptonica/prog/scaleandtile.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("scaletest1") { + sources = [ "./leptonica/prog/scaletest1.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("scaletest2") { + sources = [ "./leptonica/prog/scaletest2.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("seedfilltest") { + sources = [ "./leptonica/prog/seedfilltest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("seedspread_reg") { + sources = [ "./leptonica/prog/seedspread_reg.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("settest") { + sources = [ "./leptonica/prog/settest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("sharptest") { + sources = [ "./leptonica/prog/sharptest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("sheartest") { + sources = [ "./leptonica/prog/sheartest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("showedges") { + sources = [ "./leptonica/prog/showedges.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("skewtest") { + sources = [ "./leptonica/prog/skewtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("snapcolortest") { + sources = [ "./leptonica/prog/snapcolortest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("sorttest") { + sources = [ "./leptonica/prog/sorttest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("splitimage2pdf") { + sources = [ "./leptonica/prog/splitimage2pdf.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("sudokutest") { + sources = [ "./leptonica/prog/sudokutest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("trctest") { + sources = [ "./leptonica/prog/trctest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("warpertest") { + sources = [ "./leptonica/prog/warpertest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("watershedtest") { + sources = [ "./leptonica/prog/watershedtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("wordsinorder") { + sources = [ "./leptonica/prog/wordsinorder.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("writemtiff") { + sources = [ "./leptonica/prog/writemtiff.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("xtractprotos") { + sources = [ "./leptonica/prog/xtractprotos.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +ohos_executable("yuvtest") { + sources = [ "./leptonica/prog/yuvtest.c" ] + + public_configs = [ ":leptonica_config" ] + + deps = [ ":leptonica" ] + + defines = [] + + part_name = "leptonica" +} + +group("samples") { + if (enable_leptonica_test) { + deps = [ + ":adaptmap_dark", + ":adaptmap_reg", + ":adaptnorm_reg", + ":affine_reg", + ":alltests_reg", + ":alphaops_reg", + ":alphaxform_reg", + ":arabic_lines", + ":arithtest", + ":autogentest1", + ":autogentest2", + ":barcodetest", + ":baseline_reg", + ":bilateral1_reg", + ":bilateral2_reg", + ":bilinear_reg", + ":binarize_reg", + ":binarize_set", + ":binarizefiles", + ":bincompare", + ":binmorph1_reg", + ":binmorph2_reg", + ":binmorph3_reg", + ":binmorph4_reg", + ":binmorph5_reg", + ":blackwhite_reg", + ":blend1_reg", + ":blend2_reg", + ":blend3_reg", + ":blend4_reg", + ":blendcmaptest", + ":boxa1_reg", + ":boxa2_reg", + ":buffertest", + ":byteatest", + ":ccbordtest", + ":cctest1", + ":ccthin1_reg", + ":ccthin2_reg", + ":cleanpdf", + ":cmapquant_reg", + ":colorcontent_reg", + ":coloring_reg", + ":colorize_reg", + ":colormask_reg", + ":colormorph_reg", + ":colorquant_reg", + ":colorseg_reg", + ":colorsegtest", + ":colorspace_reg", + ":compare_reg", + ":comparepages", + ":comparepixa", + ":comparetest", + ":compfilter_reg", + ":concatpdf", + ":conncomp_reg", + ":contrasttest", + ":conversion_reg", + ":convertfilestopdf", + ":convertfilestops", + ":convertformat", + ":convertsegfilestopdf", + ":convertsegfilestops", + ":converttogray", + ":converttopdf", + ":converttops", + ":convolve_reg", + ":cornertest", + ":corrupttest", + ":croptest", + ":croptext", + ":dewarp_reg", + ":dewarprules", + ":dewarptest1", + ":dewarptest2", + ":dewarptest3", + ":dewarptest4", + ":dewarptest5", + ":digitprep1", + ":displayboxa", + ":displayboxes_on_pixa", + ":displaypix", + ":displaypixa", + ":distance_reg", + ":dither_reg", + ":dna_reg", + ":dwalineargen", + ":dwamorph1_reg", + ":dwamorph2_reg", + ":edge_reg", + ":enhance_reg", + ":equal_reg", + ":expand_reg", + ":extrema_reg", + ":falsecolortest", + ":fcombautogen", + ":fhmtauto_reg", + ":fhmtautogen", + ":fileinfo", + ":files_reg", + ":find_colorregions", + ":findbinding", + ":findcorners_reg", + ":findpattern1", + ":findpattern2", + ":findpattern3", + ":findpattern_reg", + ":flipdetect_reg", + ":flipselgen", + ":fmorphauto_reg", + ":fmorphautogen", + ":fpix1_reg", + ":fpix2_reg", + ":fpixcontours", + ":gammatest", + ":genfonts_reg", + ":gifio_leaktest", + ":gifio_reg", + ":graphicstest", + ":grayfill_reg", + ":graymorph1_reg", + ":graymorph2_reg", + ":graymorphtest", + ":grayquant_reg", + ":hardlight_reg", + ":hashtest", + ":heap_reg", + ":histotest", + ":htmlviewer", + ":insert_reg", + ":ioformats_reg", + ":iotest", + ":italictest", + ":jbclass_reg", + ":jbcorrelation", + ":jbrankhaus", + ":jbwords", + ":jp2kio_reg", + ":jpegio_reg", + ":kernel_reg", + ":label_reg", + ":lineremoval_reg", + ":listtest", + ":livre_adapt", + ":livre_hmt", + ":livre_makefigs", + ":livre_orient", + ":livre_pageseg", + ":livre_seedgen", + ":livre_tophat", + ":locminmax_reg", + ":logicops_reg", + ":lowaccess_reg", + ":maketile", + ":maptest", + ":maze_reg", + ":misctest1", + ":modifyhuesat", + ":morphseq_reg", + ":morphtest1", + ":mtiff_reg", + ":multitype_reg", + ":nearline_reg", + ":newspaper_reg", + ":numa1_reg", + ":numa2_reg", + ":numaranktest", + ":otsutest1", + ":otsutest2", + ":overlap_reg", + ":pageseg_reg", + ":pagesegtest1", + ":pagesegtest2", + ":paint_reg", + ":paintmask_reg", + ":partitiontest", + ":pdfiotest", + ":pdfseg_reg", + ":percolatetest", + ":pixa1_reg", + ":pixa2_reg", + ":pixaatest", + ":pixadisp_reg", + ":pixafileinfo", + ":pixalloc_reg", + ":pixcomp_reg", + ":pixmem_reg", + ":pixserial_reg", + ":pixtile_reg", + ":plottest", + ":pngio_reg", + ":pnmio_reg", + ":printimage", + ":printsplitimage", + ":printtiff", + ":projection_reg", + ":projective_reg", + ":psio_reg", + ":psioseg_reg", + ":pta_reg", + ":ptra1_reg", + ":ptra2_reg", + ":quadtreetest", + ":rank_reg", + ":rankbin_reg", + ":rankhisto_reg", + ":rasterop_reg", + ":rasteropip_reg", + ":rbtreetest", + ":recog_bootnum", + ":recogsort", + ":recogtest1", + ":recogtest2", + ":recogtest3", + ":recogtest4", + ":recogtest5", + ":recogtest6", + ":reducetest", + ":removecmap", + ":renderfonts", + ":rotate1_reg", + ":rotate2_reg", + ":rotatefastalt", + ":rotateorth_reg", + ":rotateorthtest1", + ":rotatetest1", + ":runlengthtest", + ":scale_reg", + ":scaleandtile", + ":scaletest1", + ":scaletest2", + ":seedfilltest", + ":seedspread_reg", + ":selio_reg", + ":settest", + ":sharptest", + ":shear1_reg", + ":shear2_reg", + ":sheartest", + ":showedges", + ":skew_reg", + ":skewtest", + ":smallpix_reg", + ":smoothedge_reg", + ":snapcolortest", + ":sorttest", + ":splitcomp_reg", + ":splitimage2pdf", + ":string_reg", + ":subpixel_reg", + ":sudokutest", + ":texturefill_reg", + ":threshnorm_reg", + ":translate_reg", + ":trctest", + ":warper_reg", + ":warpertest", + ":watershedtest", + ":webpio_reg", + ":wordboxes_reg", + ":wordsinorder", + ":writemtiff", + ":writetext_reg", + ":xformbox_reg", + ":xtractprotos", + ":yuvtest", + ] + } else { + deps = [] + } +} diff --git a/leptonica/README.OpenSource b/leptonica/README.OpenSource new file mode 100644 index 0000000000000000000000000000000000000000..022f579c4a254981bc73e5d47c3f7d8b84a5d5b0 --- /dev/null +++ b/leptonica/README.OpenSource @@ -0,0 +1,11 @@ +[ + { + "Name": "leptonica", + "License": "leptonica-license", + "License File": "leptonica-license.txt", + "Version Number": "v1.74.3", + "Owner": "huangminzhong2@huawei.com", + "Upstream URL": "https://github.com/DanBloomberg/leptonica/", + "Description": "Leptonica is an open source library containing software that is broadly useful for image processing and image analysis applications." + } +] diff --git a/leptonica/README_zh.md b/leptonica/README_zh.md new file mode 100644 index 0000000000000000000000000000000000000000..15c09edb82f25e02a4e1d75ff82b2c1a758f5451 --- /dev/null +++ b/leptonica/README_zh.md @@ -0,0 +1,16 @@ +# Leptonica 三方库说明 + +## 功能简介 + +Leptonica是一个开放源码的C语言库,它被广泛地运用于图像处理和图像分析。 + +## 使用约束 + +- ROM版本:OpenHarmony3.2 Beta1 +- 三方库版本:v1.74.3 +- 当前适配的功能:已验证扫描的图片“去污”、“提色”功能和图片转pdf功能等 +- [License : leptonica-license](https://github.com/DanBloomberg/leptonica/blob/v1.74.3/leptonica-license.txt) + +## 集成方式 + +- [系统Rom包集成](docs/rom_integrate.md) diff --git a/leptonica/adapted/config_auto.h b/leptonica/adapted/config_auto.h new file mode 100644 index 0000000000000000000000000000000000000000..a117c13e7a1561735cf1f61c2bb9d59f8228d3a9 --- /dev/null +++ b/leptonica/adapted/config_auto.h @@ -0,0 +1,117 @@ +/* config_auto.h. Generated from config.h.in by configure. */ +/* config/config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the `fmemopen' function. */ +#define HAVE_FMEMOPEN 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have giflib. */ +#define HAVE_LIBGIF 1 + +/* Define to 1 if you have libopenjp2. */ +#define HAVE_LIBJP2K 1 + +/* Define to 1 if you have jpeg. */ +#define HAVE_LIBJPEG 1 + +/* Define to 1 if you have libpng. */ +#define HAVE_LIBPNG 1 + +/* Define to 1 if you have libtiff. */ +#define HAVE_LIBTIFF 1 + +/* Define to 1 if you have libwebp. */ +#define HAVE_LIBWEBP 1 + +/* Define to 1 if you have zlib. */ +#define HAVE_LIBZ 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_OPENJPEG_2_0_OPENJPEG_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_OPENJPEG_2_1_OPENJPEG_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_OPENJPEG_2_2_OPENJPEG_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Path to header file. */ +/* #undef LIBJP2K_HEADER */ +#define LIBJP2K_HEADER "openjpeg.h" + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Name of package */ +#define PACKAGE "leptonica" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "leptonica" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "leptonica 1.74.3" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "leptonica" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.74.3" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Version number of package */ +#define VERSION "1.74.3" + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ diff --git a/leptonica/adapted/endianness.h b/leptonica/adapted/endianness.h new file mode 100644 index 0000000000000000000000000000000000000000..e9eaba902e890a1c9de9eb6fb3b0435163c11930 --- /dev/null +++ b/leptonica/adapted/endianness.h @@ -0,0 +1,11 @@ +#if !defined (L_BIG_ENDIAN) && !defined (L_LITTLE_ENDIAN) +# if 0 +# ifdef __BIG_ENDIAN__ +# define L_BIG_ENDIAN +# else +# define L_LITTLE_ENDIAN +# endif +# else +# define L_LITTLE_ENDIAN +# endif +#endif diff --git a/leptonica/bundle.json b/leptonica/bundle.json new file mode 100644 index 0000000000000000000000000000000000000000..81e611805fdef1c4634fc2ec0f093ba67c7908e4 --- /dev/null +++ b/leptonica/bundle.json @@ -0,0 +1,33 @@ +{ + "name": "@ohos/leptonica", + "description": "Leptonica is an open source library containing software that is broadly useful for image processing and image analysis applications.", + "version": "3.1", + "license": "zlib", + "publishAs": "code-segment", + "segment": { + "destPath": "third_party/leptonica" + }, + "dirs": {}, + "scripts": {}, + "readmePath": { + "en": "README" + }, + "component": { + "name": "leptonica", + "subsystem": "thirdparty", + "syscap": [], + "features": [], + "adapted_system_type": [], + "rom": "", + "ram": "", + "deps": { + "components": [], + "third_party": [] + }, + "build": { + "sub_component": ["//third_party/leptonica:leptonica","//third_party/leptonica:samples"], + "inner_kits": [], + "test": [] + } + } +} \ No newline at end of file diff --git a/leptonica/docs/pic/color_lifting.png b/leptonica/docs/pic/color_lifting.png new file mode 100644 index 0000000000000000000000000000000000000000..e2fca81bd637904c78b2dfe43a6e16d33813de4e Binary files /dev/null and b/leptonica/docs/pic/color_lifting.png differ diff --git a/leptonica/docs/pic/generate_pdf.png b/leptonica/docs/pic/generate_pdf.png new file mode 100644 index 0000000000000000000000000000000000000000..602ec1802b6c3367e567d1cb5f44fe73d74058dd Binary files /dev/null and b/leptonica/docs/pic/generate_pdf.png differ diff --git a/leptonica/docs/pic/run_adaptmap_dark.png b/leptonica/docs/pic/run_adaptmap_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..8e2b26ec2649c9e5e27fd5336cd66de72b18424a Binary files /dev/null and b/leptonica/docs/pic/run_adaptmap_dark.png differ diff --git a/leptonica/docs/rom_integrate.md b/leptonica/docs/rom_integrate.md new file mode 100644 index 0000000000000000000000000000000000000000..bf940e18835f56b8f3a0f1ddb79ad4427d64da76 --- /dev/null +++ b/leptonica/docs/rom_integrate.md @@ -0,0 +1,165 @@ +# Leptonica如何集成到系统Rom + +## 准备源码工程 + +本库是基于OpenHarmony-v3.2-Beta1版本,在润和RK3568开发板上验证的。如果是从未使用过RK3568,可以先查看[润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld)。 + +## 准备系统Rom源码 + +系统源码获取方法请参照:[OpenHarmony源码下载](https://gitee.com/openharmony/docs/blob/OpenHarmony-v3.2-Beta1/zh-cn/release-notes/OpenHarmony-v3.2-beta1.md#%E6%BA%90%E7%A0%81%E8%8E%B7%E5%8F%96) + +## 增加构建脚本及配置文件 + +- 下载本仓库代码 + + ```shell + cd ~/ + git clone git@gitee.com:openharmony-sig/tpc_c_cplusplus.git --depth=1 # 将本仓库下载到本地 + ``` + +- 仓库代码目录结构说明 + + ```shell + tpc_c_cplusplus/leptonica + |-- docs # 存放三方库相关文档的文件夹 + |-- adapted # 存放三方库适配需要的代码文件 + |-- BUILD.gn # 构建脚本,支持rom包集成 + |-- bundle.json # 三方库组件定义文件 + ├── README.OpenSource # 说明三方库源码的下载地址,版本,license等信息 + ├── README_zh.md + ``` + +- 将本仓库文件夹拷贝到third_party下 + + ```shell + cp ~/tpc_c_cplusplus/leptonica ~/openharmony/third_party/ -rf + ``` + +## 准备三方库依赖的四方库 + +本三方库依赖了libgif, libjpg, libpng, openjpeg, zlib, libtiff, libwebp等四方库,除了openjpeg与libtiff外,其他四方库OpenHarmony都已支持。 +openjpeg与libtiff的适配参考以下方法: + +- [openjpeg的适配](https://gitee.com/openharmony-sig/tpc_c_cplusplus/openjpeg) +- [libtiff的适配](https://gitee.com/openharmony-sig/tpc_c_cplusplus/libtiff) + +## 准备三方库源码 + +- 将源码下载到leptonica目录。 + + ```shell + cd ~/OpenHarmony/third_party/leptonica # 进入到leptonica目录 + git clone -b v1.74.3 https://github.com/DanBloomberg/leptonica.git # 下载三方库 + ``` + +## 系统Rom中引入三方库 + + 准备完三方库代码后,我们需要将三方库加入到编译构建体系中。标准系统编译构建可以参考文档[标准系统编译构建指导](https://gitee.com/openharmony/docs/blob/OpenHarmony-3.2-Beta1/zh-cn/device-dev/subsystems/subsys-build-standard-large.md)。
+ 我们默认三方库是属于OpenHarmony的thirdparty子系统,如果需要自己定义子系统参考文档[如何为三方库组件中添加一个三方库](https://gitee.com/openharmony-sig/knowledge/blob/master/docs/openharmony_getstarted/port_thirdparty/README.md)
+ 在OpenHarmony源码的vendor/hihope/rk3568/config.json文件,新增需要编译的组件,如下: + + ```json + { + "subsystem": "thirdparty", + "components": [ + { + "component": "musl", + "features": [] + }, + { + "component": "leptonica", + "features": [] + } + ] + } + ``` + +## 系统Rom中引入三方库测试程序 + + 在OpenHarmony源码的vendor/hihope/rk356/config.json文件,对应组件的features中打开编译选项,如下: + + ```json + { + "subsystem": "thirdparty", + "components": [ + { + "component": "musl", + "features": [] + }, + { + "component": "leptonica", + "features": ["enable_leptonica_test=true"] + } + ] + } + ``` + +## 编译工程 + +- 进入OpenHarmony源码根目录下 + + ```shell + cd ~/openharmony + ``` + +- 选择产品 + + ```shell + hb set # 该命令会列出所有可选产品,这里我们选择rk3568 + ``` + +- 运行编译 + + ```shell + hb build --target-cpu arm #编译32位系统 + hb build --target-cpu arm64 #编译64位系统 + ``` + +- 生成的可执行文件和库文件都在out/rk3568/thirdparty/leptonica目录下,同时也打包到了镜像中 + +## 运行效果 + +将编译生成的库和测试文件放到板子上运行,为避免每次将文件推入设备都需要烧录整个镜像,我们使用hdc_std工具将文件推到开发板上 + +- 首先将hdc_std工具编译出来 + + ```shell + hb set # 首先,源码根目录下使用hb set 选择产品ohos-sdk + hb build # 然后,编译。最后,工具编译出来在out/sdk/ohos-sdk/windows/toolchains/hdc_std.exe + ``` + +- 将工具拷贝到Windows,可以为工具目录配置环境变量,也可以在工具所在目录打开windows命令行 +- 将原生库测试需要的所有文件打包成leptonica.tar,并拷贝到windows下 +- 将文件推送到开发板,在windows命令行进行如下操作 + + ```shell + hdc_std shell mount -o remount,rw / # 修改系统权限为可读写 + hdc_std file send leptonica.tar / # 将文件包推入开发板 + hdc_std shell # 进入开发板 + tar xvf leptonica.tar # 解压 + cd leptonica # 进入leptonica目录 + mv libleptonica.z.so /system/lib64/ # 64位系统需要将库文件拷贝到系统lib64目录, 32位系统则是lib目录 + ``` + +- 运行测试程序 + + 测试用例较多,我们只演示部分用例:adaptmap_dark,功能是扫描的图片去污、提色功能和图片转pdf功能
+  ![run_adaptmap_dark](pic/run_adaptmap_dark.png) + + 结果验证: + 1. 去污、提色功能 + 将'/tmp/lept/adapt/'下的图片'adapt_000.jpg'和'adapt_001.jpg' 拷贝到windows下面并打开对比,效果如图:
+  ![color_lifting](pic/color_lifting.png)
+ 2. 图片转pdf功能 + 将'/tmp/lept/adapt/'下的图片'cleaning.pdf'拷贝到windows下面并打开,效果如图:
+  ![generate_pdf](pic/generate_pdf.png) + +## 参考资料 + +- [润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld) +- [OpenHarmony源码下载](https://gitee.com/openharmony/docs/blob/OpenHarmony-v3.2-Beta1/zh-cn/release-notes/OpenHarmony-v3.2-beta1.md#%E6%BA%90%E7%A0%81%E8%8E%B7%E5%8F%96) +- [标准系统编译构建指导](https://gitee.com/openharmony/docs/blob/OpenHarmony-3.2-Beta1/zh-cn/device-dev/subsystems/subsys-build-standard-large.md) +- [如何为三方库组件中添加一个三方库](https://gitee.com/openharmony-sig/knowledge/blob/master/docs/openharmony_getstarted/port_thirdparty/README.md) +- [OpenHarmony三方库地址](https://gitee.com/openharmony-tpc) +- [OpenHarmony知识体系](https://gitee.com/openharmony-sig/knowledge) + \ No newline at end of file