diff --git a/devel/Makefile b/devel/Makefile index 8608317a2d25..782d234e710f 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -1,8340 +1,8341 @@ COMMENT = Development utilities SUBDIR += 9base SUBDIR += ElectricFence SUBDIR += R-cran-BH SUBDIR += R-cran-Defaults SUBDIR += R-cran-Hmisc SUBDIR += R-cran-ModelMetrics SUBDIR += R-cran-R.methodsS3 SUBDIR += R-cran-R.oo SUBDIR += R-cran-R.utils SUBDIR += R-cran-R6 SUBDIR += R-cran-RUnit SUBDIR += R-cran-Rcpp SUBDIR += R-cran-RcppProgress SUBDIR += R-cran-Rdpack SUBDIR += R-cran-TH.data SUBDIR += R-cran-abind SUBDIR += R-cran-bindr SUBDIR += R-cran-bindrcpp SUBDIR += R-cran-bit SUBDIR += R-cran-bit64 SUBDIR += R-cran-bitops SUBDIR += R-cran-blob SUBDIR += R-cran-brio SUBDIR += R-cran-broom SUBDIR += R-cran-caTools SUBDIR += R-cran-callr SUBDIR += R-cran-caret SUBDIR += R-cran-checkmate SUBDIR += R-cran-chk SUBDIR += R-cran-chron SUBDIR += R-cran-classInt SUBDIR += R-cran-cli SUBDIR += R-cran-cliapp SUBDIR += R-cran-clipr SUBDIR += R-cran-clisymbols SUBDIR += R-cran-clock SUBDIR += R-cran-collapse SUBDIR += R-cran-conflicted SUBDIR += R-cran-covr SUBDIR += R-cran-cpp11 SUBDIR += R-cran-crayon SUBDIR += R-cran-cyclocomp SUBDIR += R-cran-data.table SUBDIR += R-cran-decor SUBDIR += R-cran-desc SUBDIR += R-cran-devtools SUBDIR += R-cran-diffobj SUBDIR += R-cran-doParallel SUBDIR += R-cran-ellipsis SUBDIR += R-cran-evaluate SUBDIR += R-cran-fansi SUBDIR += R-cran-filelock SUBDIR += R-cran-fontawesome SUBDIR += R-cran-foreach SUBDIR += R-cran-future SUBDIR += R-cran-future.apply SUBDIR += R-cran-gargle SUBDIR += R-cran-gbRd SUBDIR += R-cran-gbm SUBDIR += R-cran-gdata SUBDIR += R-cran-generics SUBDIR += R-cran-gert SUBDIR += R-cran-getopt SUBDIR += R-cran-git2r SUBDIR += R-cran-glmnet SUBDIR += R-cran-globals SUBDIR += R-cran-glue SUBDIR += R-cran-gmodels SUBDIR += R-cran-googledrive SUBDIR += R-cran-googlesheets4 SUBDIR += R-cran-gsubfn SUBDIR += R-cran-gtools SUBDIR += R-cran-hardhat SUBDIR += R-cran-hms SUBDIR += R-cran-ids SUBDIR += R-cran-ini SUBDIR += R-cran-iterators SUBDIR += R-cran-itertools SUBDIR += R-cran-kit SUBDIR += R-cran-later SUBDIR += R-cran-lifecycle SUBDIR += R-cran-lintr SUBDIR += R-cran-listenv SUBDIR += R-cran-lubridate SUBDIR += R-cran-magrittr SUBDIR += R-cran-memoise SUBDIR += R-cran-microbenchmark SUBDIR += R-cran-mlbench SUBDIR += R-cran-mockery SUBDIR += R-cran-mockr SUBDIR += R-cran-modelr SUBDIR += R-cran-msm SUBDIR += R-cran-multicool SUBDIR += R-cran-optparse SUBDIR += R-cran-pak SUBDIR += R-cran-parallelly SUBDIR += R-cran-parsedate SUBDIR += R-cran-pillar SUBDIR += R-cran-pkgbuild SUBDIR += R-cran-pkgcache SUBDIR += R-cran-pkgconfig SUBDIR += R-cran-pkgdepends SUBDIR += R-cran-pkgload SUBDIR += R-cran-pkgmaker SUBDIR += R-cran-pkgsearch SUBDIR += R-cran-plogr SUBDIR += R-cran-plyr SUBDIR += R-cran-praise SUBDIR += R-cran-prettycode SUBDIR += R-cran-prettyunits SUBDIR += R-cran-profvis SUBDIR += R-cran-progress SUBDIR += R-cran-progressr SUBDIR += R-cran-promises SUBDIR += R-cran-proto SUBDIR += R-cran-purrr SUBDIR += R-cran-rJava SUBDIR += R-cran-randomForest SUBDIR += R-cran-rappdirs SUBDIR += R-cran-rcmdcheck SUBDIR += R-cran-registry SUBDIR += R-cran-rematch2 SUBDIR += R-cran-remotes SUBDIR += R-cran-repr SUBDIR += R-cran-reshape SUBDIR += R-cran-reshape2 SUBDIR += R-cran-rgexf SUBDIR += R-cran-rlang SUBDIR += R-cran-rngtools SUBDIR += R-cran-roxygen2 SUBDIR += R-cran-rprojroot SUBDIR += R-cran-rstudioapi SUBDIR += R-cran-rversions SUBDIR += R-cran-sessioninfo SUBDIR += R-cran-sfsmisc SUBDIR += R-cran-sourcetools SUBDIR += R-cran-sys SUBDIR += R-cran-systemfonts SUBDIR += R-cran-testit SUBDIR += R-cran-testthat SUBDIR += R-cran-tibble SUBDIR += R-cran-tidyr SUBDIR += R-cran-tidyselect SUBDIR += R-cran-tidyverse SUBDIR += R-cran-timechange SUBDIR += R-cran-tinytest SUBDIR += R-cran-tzdb SUBDIR += R-cran-urlchecker SUBDIR += R-cran-usethis SUBDIR += R-cran-uuid SUBDIR += R-cran-vcd SUBDIR += R-cran-vctrs SUBDIR += R-cran-waldo SUBDIR += R-cran-whisker SUBDIR += R-cran-whoami SUBDIR += R-cran-withr SUBDIR += R-cran-zeallot SUBDIR += RStudio SUBDIR += SpecTcl SUBDIR += aarch64-none-elf-gcc SUBDIR += abi-compliance-checker SUBDIR += abseil SUBDIR += acme SUBDIR += acsccid SUBDIR += activitymail SUBDIR += actor-framework SUBDIR += adacurses SUBDIR += aegis SUBDIR += agar SUBDIR += aifad SUBDIR += aixlog SUBDIR += ald SUBDIR += alire SUBDIR += allegro SUBDIR += allegro5 SUBDIR += amber SUBDIR += aml SUBDIR += ammonite SUBDIR += amqp-cpp SUBDIR += android-tools SUBDIR += antlr SUBDIR += antlr3 SUBDIR += antlr4 SUBDIR += apache-ant SUBDIR += apache-commons-configuration SUBDIR += apache-commons-daemon SUBDIR += apache-commons-io SUBDIR += apache-commons-jxpath SUBDIR += apache-log4j2 SUBDIR += apache-rat SUBDIR += aphpbreakdown SUBDIR += aphpunit SUBDIR += api-sanity-autotest SUBDIR += apitrace SUBDIR += app-builder SUBDIR += app-builder-devel SUBDIR += appstream SUBDIR += appstream-compose SUBDIR += appstream-glib SUBDIR += appstream-qt SUBDIR += apr1 SUBDIR += arachne-pnr SUBDIR += arcanist SUBDIR += arcanist-lib SUBDIR += arduino SUBDIR += arduino-avrdude SUBDIR += arduino-bsd-mk SUBDIR += arduino-builder SUBDIR += arduino-core SUBDIR += arduino-ctags SUBDIR += arduino-irremote SUBDIR += arduino-mk SUBDIR += arduino-openglcd SUBDIR += arduino-sevseg SUBDIR += arduino-tools SUBDIR += arduino18 SUBDIR += arduinoOTA SUBDIR += argc SUBDIR += argdata SUBDIR += argobots SUBDIR += argouml SUBDIR += argp-standalone SUBDIR += argparse SUBDIR += args SUBDIR += argtable SUBDIR += argtable3 SUBDIR += arm-elf-binutils SUBDIR += arm-none-eabi-gcc SUBDIR += arm-none-eabi-newlib SUBDIR += aros-sdk SUBDIR += arpc SUBDIR += art SUBDIR += artifactory SUBDIR += asfml SUBDIR += asl SUBDIR += asmjit SUBDIR += asmutils SUBDIR += asmx SUBDIR += astah-community SUBDIR += astyle SUBDIR += asyncplusplus SUBDIR += atf SUBDIR += athens SUBDIR += atl SUBDIR += atlantis SUBDIR += autobook SUBDIR += autoconf SUBDIR += autoconf-archive SUBDIR += autoconf-switch SUBDIR += autoconf2.13 SUBDIR += autoconf2.69 SUBDIR += autodia SUBDIR += autogen SUBDIR += automake SUBDIR += autotools SUBDIR += avalon-framework SUBDIR += avarice SUBDIR += avce00 SUBDIR += avr-gcc SUBDIR += avr-gdb SUBDIR += avr-libc SUBDIR += avra SUBDIR += avrdude SUBDIR += avro SUBDIR += avro-c SUBDIR += avro-cpp SUBDIR += awless SUBDIR += aws-c-common SUBDIR += aws-c-compression SUBDIR += aws-c-event-stream SUBDIR += aws-c-http SUBDIR += aws-c-io SUBDIR += aws-c-mqtt SUBDIR += aws-c-s3 SUBDIR += aws-c-sdkutils SUBDIR += aws-checksums SUBDIR += aws-crt-cpp SUBDIR += aws-crt-ffi SUBDIR += aws-sdk-cpp SUBDIR += aws-sdk-php SUBDIR += axmldec SUBDIR += ayatana-ido SUBDIR += b2 SUBDIR += babelflow SUBDIR += babeltrace SUBDIR += bacnet-stack SUBDIR += bacon SUBDIR += bam SUBDIR += bashdb SUBDIR += basu SUBDIR += bats-core SUBDIR += bazel SUBDIR += bazel-buildtools SUBDIR += bazel5 SUBDIR += bbparse SUBDIR += bcc SUBDIR += bcpp SUBDIR += bcunit SUBDIR += bear SUBDIR += benchmark SUBDIR += bencodetools SUBDIR += bennugd-core SUBDIR += bennugd-modules SUBDIR += bfg SUBDIR += bglibs SUBDIR += binaryen SUBDIR += bingrep SUBDIR += binutils SUBDIR += bison SUBDIR += bit SUBDIR += bitkeeper SUBDIR += bitsery SUBDIR += blame SUBDIR += blitz SUBDIR += bloaty SUBDIR += bloomberg-bde SUBDIR += blueprint-compiler SUBDIR += bmake SUBDIR += bmkdep SUBDIR += bnf SUBDIR += boehm-gc SUBDIR += boehm-gc-threaded SUBDIR += boost-all SUBDIR += boost-docs SUBDIR += boost-jam SUBDIR += boost-libs SUBDIR += boost-python-libs SUBDIR += boost_build SUBDIR += bossa SUBDIR += boxfort SUBDIR += bpython SUBDIR += brz SUBDIR += bsdbuild SUBDIR += bsdcflow SUBDIR += bsddialog SUBDIR += bsdowl SUBDIR += buf SUBDIR += bugzilla44 SUBDIR += bugzilla50 SUBDIR += build SUBDIR += build2 SUBDIR += buildkite-agent SUBDIR += buildstream SUBDIR += bullet SUBDIR += bunyan SUBDIR += busd SUBDIR += byacc SUBDIR += byaccj SUBDIR += c2mdoc SUBDIR += c4core SUBDIR += calibrator SUBDIR += caliper SUBDIR += camp SUBDIR += capnproto SUBDIR += capnproto1 SUBDIR += capslock SUBDIR += capstone SUBDIR += capstone4 SUBDIR += cargo-about SUBDIR += cargo-bloat SUBDIR += cargo-c SUBDIR += cargo-cache SUBDIR += cargo-deny SUBDIR += cargo-depgraph SUBDIR += cargo-edit SUBDIR += cargo-generate SUBDIR += cargo-hack SUBDIR += cargo-leptos SUBDIR += cargo-llvm-cov SUBDIR += cargo-mutants SUBDIR += cargo-spellcheck SUBDIR += cargo-tarpaulin SUBDIR += cargo-udeps SUBDIR += cask SUBDIR += catch SUBDIR += catch2 SUBDIR += cbang SUBDIR += cbfmt SUBDIR += cbmc SUBDIR += cbrowser SUBDIR += cc65 SUBDIR += ccache SUBDIR += ccache-static SUBDIR += ccache4 SUBDIR += cccc SUBDIR += ccdoc SUBDIR += ccls SUBDIR += ccrtp SUBDIR += cctz SUBDIR += cdecl SUBDIR += cdialog SUBDIR += cdk SUBDIR += cereal SUBDIR += cervisia SUBDIR += cflow SUBDIR += cflow2vcg SUBDIR += cfr SUBDIR += cgdb SUBDIR += cgilib SUBDIR += cgit SUBDIR += cgprof SUBDIR += charva SUBDIR += check SUBDIR += checkbashisms SUBDIR += checkheaders SUBDIR += chroma SUBDIR += chrpath SUBDIR += chruby SUBDIR += cirrus-cli SUBDIR += cityhash SUBDIR += cjose SUBDIR += cl-alexandria SUBDIR += cl-alexandria-sbcl SUBDIR += cl-asdf SUBDIR += cl-cffi SUBDIR += cl-infix SUBDIR += cl-infix-sbcl SUBDIR += cl-port SUBDIR += cl-port-sbcl SUBDIR += cl-split-sequence SUBDIR += cl-split-sequence-sbcl SUBDIR += cl-trivial-features SUBDIR += cl-trivial-features-sbcl SUBDIR += cl-trivial-gray-streams SUBDIR += cl-trivial-gray-streams-sbcl SUBDIR += clazy SUBDIR += cld2 SUBDIR += clewn SUBDIR += cli SUBDIR += cli11 SUBDIR += clig SUBDIR += cligen SUBDIR += clinfo SUBDIR += clipp SUBDIR += clisp-hyperspec SUBDIR += clixon SUBDIR += clojure-cider SUBDIR += cloudabi SUBDIR += cloudabi-toolchain SUBDIR += clthreads SUBDIR += cltune SUBDIR += clxclient SUBDIR += cmake SUBDIR += cmake-core SUBDIR += cmake-doc SUBDIR += cmake-fedora SUBDIR += cmake-gui SUBDIR += cmake-man SUBDIR += cmake-modules-webos SUBDIR += cmakedoc SUBDIR += cmph SUBDIR += cmunge SUBDIR += coccinelle SUBDIR += cocogitto SUBDIR += codeblocks SUBDIR += codequery SUBDIR += codesearch-py SUBDIR += collada-dom SUBDIR += color SUBDIR += colorgcc SUBDIR += colormake SUBDIR += comlin SUBDIR += commit-patch SUBDIR += commitizen SUBDIR += commoncpp SUBDIR += compiler-rt SUBDIR += compiz-bcop SUBDIR += concurrencpp SUBDIR += concurrencykit SUBDIR += concurrentqueue SUBDIR += cons SUBDIR += cons-test SUBDIR += containers SUBDIR += convco SUBDIR += corrade SUBDIR += corrosion SUBDIR += courier-unicode SUBDIR += coursier SUBDIR += covtool SUBDIR += cpan-upload SUBDIR += cpan-upload-http SUBDIR += cpp-hocon SUBDIR += cpp-netlib SUBDIR += cpp-utilities SUBDIR += cpp2py SUBDIR += cppcheck SUBDIR += cppi SUBDIR += cppinsights SUBDIR += cpplint SUBDIR += cpprestsdk SUBDIR += cpptest SUBDIR += cppunit SUBDIR += cppurses SUBDIR += cpputest SUBDIR += cproto SUBDIR += cpu_features SUBDIR += cpu_rec_rs SUBDIR += cquery SUBDIR += cram SUBDIR += crc32c SUBDIR += creduce SUBDIR += critcl SUBDIR += criterion SUBDIR += cscope SUBDIR += cscout SUBDIR += csfml SUBDIR += csmith SUBDIR += csoap SUBDIR += cssc SUBDIR += ctags SUBDIR += ctre SUBDIR += ctypes.sh SUBDIR += cunit SUBDIR += cut SUBDIR += cutils SUBDIR += cutter SUBDIR += cvise SUBDIR += cvs SUBDIR += cvs+ipv6 SUBDIR += cvs-devel SUBDIR += cvs-syncmail SUBDIR += cvs2cl SUBDIR += cvs2darcs SUBDIR += cvs2html SUBDIR += cvsadmin SUBDIR += cvsbook SUBDIR += cvschangelogbuilder SUBDIR += cvschk SUBDIR += cvsd SUBDIR += cvsdadm SUBDIR += cvsdelta SUBDIR += cvsdiff2patch SUBDIR += cvsgraph SUBDIR += cvslines SUBDIR += cvsmonitor SUBDIR += cvsplot SUBDIR += cvsps SUBDIR += cvsps-devel SUBDIR += cvsspam SUBDIR += cvstrac SUBDIR += cvsutils SUBDIR += cvsweb SUBDIR += cvsweb3 SUBDIR += cvswrap SUBDIR += cweb SUBDIR += cwrap SUBDIR += cxmon SUBDIR += cxref SUBDIR += cxxopts SUBDIR += cxxtest SUBDIR += cxxtools SUBDIR += cython-lint SUBDIR += d-feet SUBDIR += d-scanner SUBDIR += d-spy SUBDIR += darts SUBDIR += dash.el SUBDIR += dasm SUBDIR += datadraw SUBDIR += date SUBDIR += dbus SUBDIR += dbus-c++ SUBDIR += dbus-glib SUBDIR += dbus-java SUBDIR += dbus-sharp SUBDIR += dbus-sharp-glib SUBDIR += dbus-tcl SUBDIR += dcd-client SUBDIR += dcd-server SUBDIR += dconf SUBDIR += dconf-editor SUBDIR += debugedit SUBDIR += decompyle3 SUBDIR += dee SUBDIR += deforaos-libsystem SUBDIR += deheader SUBDIR += delta SUBDIR += delve SUBDIR += deployer SUBDIR += derelict-sdl2 SUBDIR += derelict-util SUBDIR += desed SUBDIR += desktop-file-utils SUBDIR += dev86 SUBDIR += devhelp SUBDIR += devtodo SUBDIR += dfuife-curses SUBDIR += dia2code SUBDIR += dill SUBDIR += ding-libs SUBDIR += dispy SUBDIR += distcc SUBDIR += distel SUBDIR += distorm SUBDIR += djgpp-binutils SUBDIR += dlib SUBDIR += dmake SUBDIR += dmalloc SUBDIR += dmlc-core SUBDIR += docopt.cpp SUBDIR += doctest SUBDIR += doctorj SUBDIR += dolphin-plugins SUBDIR += dolphin-plugins-devel SUBDIR += dotconf SUBDIR += double-conversion SUBDIR += doxygen SUBDIR += dparser SUBDIR += dra SUBDIR += dragon SUBDIR += dsymbol SUBDIR += dtool SUBDIR += dub SUBDIR += dupl SUBDIR += duplo SUBDIR += dura SUBDIR += dwarf2json SUBDIR += dwarfdump SUBDIR += dwarves SUBDIR += dwz SUBDIR += dxa65 SUBDIR += dyncall SUBDIR += e00compr SUBDIR += eastl SUBDIR += easy-profiler SUBDIR += easyexif SUBDIR += easygit SUBDIR += easyloggingpp SUBDIR += ebnf2yacc SUBDIR += ecgi SUBDIR += edi SUBDIR += editline SUBDIR += efivar SUBDIR += efl SUBDIR += egypt SUBDIR += eiffelstudio SUBDIR += electron29 SUBDIR += electron30 SUBDIR += electron31 SUBDIR += electron32 SUBDIR += elf SUBDIR += elf-dissector SUBDIR += elfcat SUBDIR += elfio SUBDIR += elfkickers SUBDIR += elfsh SUBDIR += elfutils SUBDIR += elixir-hex SUBDIR += elixir-make SUBDIR += elm-format SUBDIR += emacs-lsp-booster SUBDIR += embb SUBDIR += emscripten SUBDIR += entt SUBDIR += envsubst SUBDIR += epl.el SUBDIR += epm SUBDIR += eql5 SUBDIR += eric6 SUBDIR += erlang-cl SUBDIR += erlang-native-compiler SUBDIR += erlang-rebar3_hex SUBDIR += erlang-recon SUBDIR += es-eric6 SUBDIR += esbuild SUBDIR += estd SUBDIR += etcd SUBDIR += etcd31 SUBDIR += etcd32 SUBDIR += etcd33 SUBDIR += etcd34 SUBDIR += etl SUBDIR += evcxr-jupyter SUBDIR += evdev-proto SUBDIR += evemu SUBDIR += eventxx SUBDIR += exercisix SUBDIR += exomizer SUBDIR += f77flow SUBDIR += fam SUBDIR += fastcrc SUBDIR += fatal SUBDIR += fbthrift SUBDIR += fc++ SUBDIR += fccf SUBDIR += fcppt SUBDIR += ffs SUBDIR += fhist SUBDIR += fifechan SUBDIR += fire-hpp SUBDIR += firmware-utils SUBDIR += fistgen SUBDIR += flatbuffers SUBDIR += flatbuffers205 SUBDIR += flatcc SUBDIR += flatzebra SUBDIR += flex-sdk SUBDIR += flex-sdk35 SUBDIR += flexdock SUBDIR += flexjson SUBDIR += flyspray SUBDIR += fmake SUBDIR += fnc SUBDIR += fnm SUBDIR += folly SUBDIR += forge SUBDIR += forge-devel SUBDIR += fortran-utils SUBDIR += fortytwo-encore SUBDIR += fossil SUBDIR += fossology-nomos-standalone SUBDIR += fp16 SUBDIR += fpp SUBDIR += freebsd-gcc12 SUBDIR += freebsd-gcc13 SUBDIR += freebsd-gcc14 SUBDIR += freebsd-git-devtools SUBDIR += freebsd-sysroot SUBDIR += frink SUBDIR += fsmtrie SUBDIR += fstrcmp SUBDIR += fstrm SUBDIR += fsx SUBDIR += ftjam SUBDIR += ftnchek SUBDIR += ftxui SUBDIR += functionalplus SUBDIR += fungw SUBDIR += fuzzylite SUBDIR += fxdiv SUBDIR += g-golf SUBDIR += g-wrap SUBDIR += ga SUBDIR += gaa SUBDIR += gamin SUBDIR += gammaray SUBDIR += gauche-readline SUBDIR += gaul SUBDIR += gbump SUBDIR += gcc-arm-embedded SUBDIR += gcc-msp430-ti-toolchain SUBDIR += gccmakedep SUBDIR += gcem SUBDIR += gcli SUBDIR += gconf2 SUBDIR += gconfmm26 SUBDIR += gdb SUBDIR += gdcm SUBDIR += gdmd SUBDIR += geany SUBDIR += geany-plugin-addons SUBDIR += geany-plugin-autoclose SUBDIR += geany-plugin-automark SUBDIR += geany-plugin-codenav SUBDIR += geany-plugin-commander SUBDIR += geany-plugin-ctags SUBDIR += geany-plugin-debugger SUBDIR += geany-plugin-defineformat SUBDIR += geany-plugin-doc SUBDIR += geany-plugin-extrasel SUBDIR += geany-plugin-gendoc SUBDIR += geany-plugin-geniuspaste SUBDIR += geany-plugin-git-changebar SUBDIR += geany-plugin-insertnum SUBDIR += geany-plugin-latex SUBDIR += geany-plugin-lineoperations SUBDIR += geany-plugin-lipsum SUBDIR += geany-plugin-lua SUBDIR += geany-plugin-macro SUBDIR += geany-plugin-markdown SUBDIR += geany-plugin-miniscript SUBDIR += geany-plugin-numberedbookmarks SUBDIR += geany-plugin-overview SUBDIR += geany-plugin-pairtaghighlighter SUBDIR += geany-plugin-pg SUBDIR += geany-plugin-pohelper SUBDIR += geany-plugin-pretty-printer SUBDIR += geany-plugin-prj SUBDIR += geany-plugin-projectorganizer SUBDIR += geany-plugin-scope SUBDIR += geany-plugin-sendmail SUBDIR += geany-plugin-shiftcolumn SUBDIR += geany-plugin-spellcheck SUBDIR += geany-plugin-tableconvert SUBDIR += geany-plugin-treebrowser SUBDIR += geany-plugin-updatechecker SUBDIR += geany-plugin-utilslib SUBDIR += geany-plugin-vc SUBDIR += geany-plugin-vimode SUBDIR += geany-plugin-workbench SUBDIR += geany-plugin-xmlsnippets SUBDIR += geany-plugins SUBDIR += geany-plugins-l10n SUBDIR += geany-themes SUBDIR += generate SUBDIR += gengetopt SUBDIR += genht SUBDIR += genie SUBDIR += genromfs SUBDIR += getoptions SUBDIR += gettext SUBDIR += gettext-lint SUBDIR += gettext-msghack SUBDIR += gettext-po-mode SUBDIR += gettext-runtime SUBDIR += gettext-tiny SUBDIR += gettext-tools SUBDIR += gflags SUBDIR += gfold SUBDIR += gh SUBDIR += ghidra SUBDIR += ghostie SUBDIR += ghq SUBDIR += ghub SUBDIR += ghub-devel SUBDIR += gindent SUBDIR += gio-sharp SUBDIR += git SUBDIR += git-absorb SUBDIR += git-branchless SUBDIR += git-bug SUBDIR += git-cinnabar SUBDIR += git-cliff SUBDIR += git-codereview SUBDIR += git-cola SUBDIR += git-cvs SUBDIR += git-delta SUBDIR += git-extras SUBDIR += git-filter-repo + SUBDIR += git-filter-repo-devel SUBDIR += git-gui SUBDIR += git-lab SUBDIR += git-lfs SUBDIR += git-merge-changelog SUBDIR += git-modes SUBDIR += git-p4 SUBDIR += git-prev-next SUBDIR += git-repo-manager SUBDIR += git-review SUBDIR += git-subrepo SUBDIR += git-svn SUBDIR += git-town SUBDIR += git-tui SUBDIR += git-workspace SUBDIR += gitaly SUBDIR += gitea-act_runner SUBDIR += gitflow SUBDIR += gitg SUBDIR += github-backup-utils SUBDIR += gitinspector SUBDIR += gitlab-runner SUBDIR += gitlab-shell SUBDIR += gitleaks SUBDIR += gitlist SUBDIR += gitolite SUBDIR += gitolite2 SUBDIR += gitoxide SUBDIR += gitqlient SUBDIR += gittrac SUBDIR += gitty SUBDIR += gitu SUBDIR += gitui SUBDIR += glab SUBDIR += glade SUBDIR += glademm SUBDIR += glaze SUBDIR += glib20 SUBDIR += glibd SUBDIR += glibmm SUBDIR += glibmm26 SUBDIR += glitter SUBDIR += gllvm SUBDIR += global SUBDIR += glog SUBDIR += glrparser SUBDIR += glui SUBDIR += gmake SUBDIR += gn SUBDIR += gnome-builder SUBDIR += gnome-common SUBDIR += gnu-efi SUBDIR += gnucflow SUBDIR += gnulib SUBDIR += gnulibiberty SUBDIR += gnustep SUBDIR += gnustep-make SUBDIR += go-bindata SUBDIR += go-bindata-assetfs SUBDIR += go-git SUBDIR += go-mode.el SUBDIR += go-perf SUBDIR += go-tools SUBDIR += go-wire SUBDIR += gob2 SUBDIR += gobject-introspection SUBDIR += gocheese SUBDIR += gocritic SUBDIR += godot SUBDIR += godot-tools SUBDIR += godot35 SUBDIR += godot35-tools SUBDIR += goffice SUBDIR += gogs SUBDIR += golangci-lint SUBDIR += golint SUBDIR += gomigrate SUBDIR += google-cloud-cpp SUBDIR += google-perftools SUBDIR += google-styleguide SUBDIR += googletest SUBDIR += gopls SUBDIR += goprotobuf SUBDIR += goredo SUBDIR += goreleaser SUBDIR += gorm SUBDIR += goswagger SUBDIR += got SUBDIR += gpds SUBDIR += gperf SUBDIR += gpm SUBDIR += gprbuild SUBDIR += gputils SUBDIR += gradle SUBDIR += gradle-completion SUBDIR += gradle5 SUBDIR += gradle6 SUBDIR += gradle62 SUBDIR += gradle761 SUBDIR += grantlee5 SUBDIR += grcov SUBDIR += grex SUBDIR += grpc SUBDIR += grv SUBDIR += gsettings-desktop-schemas SUBDIR += gsoap SUBDIR += gstreamer1-plugins-soup SUBDIR += gtgt SUBDIR += gtranslator SUBDIR += guichan SUBDIR += guile-lib SUBDIR += gum SUBDIR += gumbo SUBDIR += gvfs SUBDIR += gvp SUBDIR += gwenhywfar SUBDIR += gwenhywfar-fox16 SUBDIR += gwenhywfar-gtk2 SUBDIR += gwenhywfar-gtk3 SUBDIR += gwenhywfar-qt5 SUBDIR += gzstream SUBDIR += hapy SUBDIR += hare SUBDIR += hcs12mem SUBDIR += heaptrack SUBDIR += heimdall SUBDIR += heirloom-devtools SUBDIR += hexcompare SUBDIR += hexd SUBDIR += hgreviewboard SUBDIR += hgsvn SUBDIR += highlighterkit SUBDIR += highway SUBDIR += hoel SUBDIR += hotspot SUBDIR += hp48cc SUBDIR += hp48xgcc SUBDIR += hpx SUBDIR += hs-ShellCheck SUBDIR += hs-alex SUBDIR += hs-cabal-install SUBDIR += hs-cpphs SUBDIR += hs-darcs SUBDIR += hs-ghc-events SUBDIR += hs-ghcprofview SUBDIR += hs-git-annex SUBDIR += hs-git-brunch SUBDIR += hs-happy SUBDIR += hs-haskell-language-server SUBDIR += hs-hasktags SUBDIR += hs-hlint SUBDIR += hs-hoogle SUBDIR += hs-hpack SUBDIR += hs-hspec-discover SUBDIR += hs-mueval SUBDIR += hs-ormolu SUBDIR += hs-profiteur SUBDIR += hs-shake SUBDIR += hs-spago SUBDIR += hs-threadscope SUBDIR += htable SUBDIR += hub SUBDIR += hvm SUBDIR += hwloc SUBDIR += hwloc2 SUBDIR += hyperscan SUBDIR += hyprlang SUBDIR += hyprutils SUBDIR += hyprwayland-scanner SUBDIR += iaito SUBDIR += ice SUBDIR += ice37 SUBDIR += icestorm SUBDIR += icmake SUBDIR += icontheme SUBDIR += icu SUBDIR += icu-le-hb SUBDIR += icu-lx SUBDIR += idutils SUBDIR += ignition-cmake SUBDIR += ignition-common SUBDIR += ignition-msgs SUBDIR += ignition-plugin SUBDIR += ignition-tools SUBDIR += ikos SUBDIR += imake SUBDIR += immer SUBDIR += imtui SUBDIR += inastemp SUBDIR += include-what-you-use SUBDIR += indi SUBDIR += indicators SUBDIR += influx-pkg-config SUBDIR += inifiled SUBDIR += inih SUBDIR += inilib SUBDIR += inilike SUBDIR += iniparser SUBDIR += initutil SUBDIR += injeqt SUBDIR += intel-graphics-compiler SUBDIR += interactive_rebase_tool SUBDIR += ioncube SUBDIR += ipython SUBDIR += ireport SUBDIR += isa-l SUBDIR += iscd-commons SUBDIR += isfreedesktop SUBDIR += isl SUBDIR += ispc SUBDIR += ittapi SUBDIR += ivykis SUBDIR += jam SUBDIR += jansson SUBDIR += java-findbugs SUBDIR += jclassinfo SUBDIR += jcmdline SUBDIR += jech-dht SUBDIR += jenkins SUBDIR += jenkins-lts SUBDIR += jetbrains-clion SUBDIR += jetbrains-goland SUBDIR += jetbrains-phpstorm SUBDIR += jetbrains-pty4j SUBDIR += jetbrains-restarter SUBDIR += jetbrains-rustrover SUBDIR += jetbrains-sqlite SUBDIR += jetbrains-webstorm SUBDIR += jgoodies-looks SUBDIR += jiic SUBDIR += jiri SUBDIR += jline SUBDIR += jna SUBDIR += jrtplib SUBDIR += jsap SUBDIR += jsl SUBDIR += jsmin SUBDIR += json-c SUBDIR += json-dto SUBDIR += json-fortran SUBDIR += json-glib SUBDIR += jsoncpp SUBDIR += jsonnet SUBDIR += jsonrpc-glib SUBDIR += juce SUBDIR += juce706 SUBDIR += judy SUBDIR += jujutsu SUBDIR += jwasm SUBDIR += kBuild SUBDIR += kapptemplate SUBDIR += kcachegrind SUBDIR += kconfig-frontends SUBDIR += kcov SUBDIR += kdbg SUBDIR += kde-dev-scripts SUBDIR += kde-dev-utils SUBDIR += kdesdk SUBDIR += kdesdk-kio SUBDIR += kdesdk-thumbnailers SUBDIR += kdesvn SUBDIR += kdev-php SUBDIR += kdev-python SUBDIR += kdevelop SUBDIR += kdevelop-pg-qt SUBDIR += kdsingleapplication SUBDIR += kerl SUBDIR += kf5-extra-cmake-modules SUBDIR += kf5-kapidox SUBDIR += kf5-kauth SUBDIR += kf5-kbookmarks SUBDIR += kf5-kcmutils SUBDIR += kf5-kconfig SUBDIR += kf5-kcoreaddons SUBDIR += kf5-kcrash SUBDIR += kf5-kdbusaddons SUBDIR += kf5-kdeclarative SUBDIR += kf5-kdoctools SUBDIR += kf5-kfilemetadata SUBDIR += kf5-ki18n SUBDIR += kf5-kidletime SUBDIR += kf5-kio SUBDIR += kf5-kitemmodels SUBDIR += kf5-knewstuff SUBDIR += kf5-knotifications SUBDIR += kf5-knotifyconfig SUBDIR += kf5-kpackage SUBDIR += kf5-kparts SUBDIR += kf5-kpeople SUBDIR += kf5-kpty SUBDIR += kf5-kservice SUBDIR += kf5-ktexteditor SUBDIR += kf5-kunitconversion SUBDIR += kf5-solid SUBDIR += kf5-threadweaver SUBDIR += kf6-extra-cmake-modules SUBDIR += kf6-kapidox SUBDIR += kf6-kauth SUBDIR += kf6-kbookmarks SUBDIR += kf6-kcmutils SUBDIR += kf6-kconfig SUBDIR += kf6-kcoreaddons SUBDIR += kf6-kcrash SUBDIR += kf6-kdbusaddons SUBDIR += kf6-kdeclarative SUBDIR += kf6-kdoctools SUBDIR += kf6-kfilemetadata SUBDIR += kf6-ki18n SUBDIR += kf6-kidletime SUBDIR += kf6-kio SUBDIR += kf6-kitemmodels SUBDIR += kf6-knewstuff SUBDIR += kf6-knotifications SUBDIR += kf6-knotifyconfig SUBDIR += kf6-kpackage SUBDIR += kf6-kparts SUBDIR += kf6-kpeople SUBDIR += kf6-kpty SUBDIR += kf6-kservice SUBDIR += kf6-ktexteditor SUBDIR += kf6-ktexttemplate SUBDIR += kf6-kunitconversion SUBDIR += kf6-solid SUBDIR += kf6-threadweaver SUBDIR += kio-extras SUBDIR += kirigami-gallery SUBDIR += klib SUBDIR += kms-cmake-utils SUBDIR += kodi-platform SUBDIR += kokkos SUBDIR += kommit SUBDIR += kore SUBDIR += kpublictransport SUBDIR += kronosnet SUBDIR += ksql SUBDIR += ktextaddons SUBDIR += kyra SUBDIR += kyua SUBDIR += lab SUBDIR += lager SUBDIR += laminar SUBDIR += lasi SUBDIR += lattice-ice40-examples-hx1k SUBDIR += lattice-ice40-examples-hx8k SUBDIR += lattice-ice40-tools SUBDIR += lazygit SUBDIR += lcov SUBDIR += leaktracer SUBDIR += leatherman SUBDIR += lefthook SUBDIR += leiningen SUBDIR += lemon SUBDIR += lets SUBDIR += level-zero SUBDIR += lfcbase SUBDIR += lfcxml SUBDIR += libCello SUBDIR += libIDL SUBDIR += libPropList SUBDIR += libabigail SUBDIR += libac SUBDIR += libada SUBDIR += libafterbase SUBDIR += libantlr3c SUBDIR += libantlr4 SUBDIR += libappindicator SUBDIR += libaravis SUBDIR += libarea SUBDIR += libarena SUBDIR += libassa SUBDIR += libassetml SUBDIR += libast SUBDIR += libastylej SUBDIR += libastylej-arduino SUBDIR += libatomic_ops SUBDIR += libaura SUBDIR += libavl SUBDIR += libayatana-appindicator SUBDIR += libayatana-indicator SUBDIR += libb2 SUBDIR += libbacktrace SUBDIR += libbde SUBDIR += libbegemot SUBDIR += libbfd SUBDIR += libbinio SUBDIR += libbpfjit SUBDIR += libbson SUBDIR += libburn SUBDIR += libcbor SUBDIR += libccid SUBDIR += libcdada SUBDIR += libcdb SUBDIR += libcds SUBDIR += libcfu SUBDIR += libchipcard SUBDIR += libcidr SUBDIR += libcii SUBDIR += libcircllhist SUBDIR += libcjson SUBDIR += libclc SUBDIR += libcli SUBDIR += libconcurrent SUBDIR += libconfig SUBDIR += libconfuse SUBDIR += libcreg SUBDIR += libcrossguid SUBDIR += libcsptr SUBDIR += libcuckoo SUBDIR += libcutl SUBDIR += libcwd SUBDIR += libdaemon SUBDIR += libdap SUBDIR += libdatadog SUBDIR += libdatovka SUBDIR += libdatrie SUBDIR += libdbusmenu SUBDIR += libdbusmenu-lxqt SUBDIR += libdbusmenu-qt SUBDIR += libddoc SUBDIR += libddwaf SUBDIR += libdevq SUBDIR += libdfui SUBDIR += libdill SUBDIR += libdisasm SUBDIR += libdisorder SUBDIR += libdispatch SUBDIR += libdistance SUBDIR += libdlmalloc SUBDIR += libdnsres SUBDIR += libdombey SUBDIR += libdparse SUBDIR += libds SUBDIR += libdwarf SUBDIR += libe SUBDIR += libedit SUBDIR += libeio SUBDIR += libelf SUBDIR += libepoll-shim SUBDIR += libepp-nicbr SUBDIR += liberasurecode SUBDIR += libesedb SUBDIR += libestr SUBDIR += libev SUBDIR += libevdev SUBDIR += libevdevplus SUBDIR += libevent SUBDIR += libevent-devel SUBDIR += libevt SUBDIR += libevtx SUBDIR += libewf SUBDIR += libexplain SUBDIR += libfaketime SUBDIR += libfastcommon SUBDIR += libfastjson SUBDIR += libffcall SUBDIR += libffi SUBDIR += libffi321 SUBDIR += libffi33 SUBDIR += libfirm SUBDIR += libfixposix SUBDIR += libflatarray SUBDIR += libfmt SUBDIR += libfort SUBDIR += libfortuna SUBDIR += libfreefare SUBDIR += libfsapfs SUBDIR += libfsext SUBDIR += libfsfat SUBDIR += libfshfs SUBDIR += libfsntfs SUBDIR += libfsxfs SUBDIR += libftdi SUBDIR += libftdi1 SUBDIR += libfwnt SUBDIR += libfwsi SUBDIR += libg19 SUBDIR += libg19draw SUBDIR += libgamepad SUBDIR += libgdata SUBDIR += libgee SUBDIR += libgee06 SUBDIR += libgetline SUBDIR += libgit2 SUBDIR += libgit2-glib SUBDIR += libglade2 SUBDIR += libglademm24 SUBDIR += libgnt SUBDIR += libgnuregex SUBDIR += libgpc SUBDIR += libgpkg SUBDIR += libgpr SUBDIR += libgrading SUBDIR += libgraphqlparser SUBDIR += libgsf SUBDIR += libgta SUBDIR += libgtop SUBDIR += libgudev SUBDIR += libgusb SUBDIR += libgutenfetch SUBDIR += libheinz SUBDIR += libhoard SUBDIR += libhtp SUBDIR += libibuddy SUBDIR += libical SUBDIR += libiec61850 SUBDIR += libindicator SUBDIR += libinjection SUBDIR += libinotify SUBDIR += libisofs SUBDIR += libixp SUBDIR += libjitterentropy SUBDIR += libjodycode SUBDIR += libk8055 SUBDIR += libkiwix SUBDIR += libklel SUBDIR += liblangtag SUBDIR += liblnk SUBDIR += liblockfile SUBDIR += liblogging SUBDIR += liblognorm SUBDIR += liblouis SUBDIR += liblpm SUBDIR += libltdl SUBDIR += libluksde SUBDIR += liblxqt SUBDIR += libmaa SUBDIR += libmatheval SUBDIR += libmatthew SUBDIR += libmba SUBDIR += libmcfp SUBDIR += libmill SUBDIR += libmimedir SUBDIR += libmodi SUBDIR += libmowgli SUBDIR += libmowgli2 SUBDIR += libmpcbdm SUBDIR += libmsiecf SUBDIR += libmsocket SUBDIR += libmtdev SUBDIR += libmtrie SUBDIR += libmustache SUBDIR += libnaji SUBDIR += libnest2d-ultimaker SUBDIR += libnfc SUBDIR += libnjs SUBDIR += libnotify SUBDIR += libnsutils SUBDIR += liboil SUBDIR += libolecf SUBDIR += libopenbsd SUBDIR += libopencm3 SUBDIR += liborcus SUBDIR += libosinfo SUBDIR += libowfat SUBDIR += libpafe SUBDIR += libpafe-ruby SUBDIR += libparserutils SUBDIR += libpasori SUBDIR += libpci SUBDIR += libpciaccess SUBDIR += libpcl SUBDIR += libpdel SUBDIR += libpeak SUBDIR += libpeas SUBDIR += libpff SUBDIR += libphdi SUBDIR += libphonenumber SUBDIR += libplist SUBDIR += libpo6 SUBDIR += libpololu-avr SUBDIR += libpru SUBDIR += libqb SUBDIR += libqcow SUBDIR += libqsbr SUBDIR += libqt6xdg SUBDIR += libqtxdg SUBDIR += libr3 SUBDIR += librashader SUBDIR += librcc SUBDIR += librcd SUBDIR += libreadline-java SUBDIR += libregf SUBDIR += librelp SUBDIR += librest SUBDIR += librevisa SUBDIR += librevisa-vish SUBDIR += librevisa-vxi SUBDIR += librolegen SUBDIR += librttopo SUBDIR += libruin SUBDIR += libs11n SUBDIR += libsavitar SUBDIR += libscca SUBDIR += libscfg SUBDIR += libsearpc SUBDIR += libserdes SUBDIR += libserialport SUBDIR += libshbuf SUBDIR += libshhmsg SUBDIR += libshhopt SUBDIR += libsigc++20 SUBDIR += libsigc++30 SUBDIR += libsigrok SUBDIR += libsigrokdecode SUBDIR += libsigscan SUBDIR += libsigsegv SUBDIR += libsimdpp SUBDIR += libslang2 SUBDIR += libsmdev SUBDIR += libsml SUBDIR += libsmpp34 SUBDIR += libsmraw SUBDIR += libsoup SUBDIR += libsoup3 SUBDIR += libspice-server SUBDIR += libstatgrab SUBDIR += libstatgrab0 SUBDIR += libstrfunc SUBDIR += libstroke SUBDIR += libsysctlmibinfo SUBDIR += libsysctlmibinfo2 SUBDIR += libsysinfo SUBDIR += libtai SUBDIR += libtap SUBDIR += libtecla SUBDIR += libtermkey SUBDIR += libtextstyle SUBDIR += libthai SUBDIR += libthmap SUBDIR += libthreadar SUBDIR += libtickit SUBDIR += libtifiles2 SUBDIR += libtool SUBDIR += libtpl SUBDIR += libtsm SUBDIR += libtuntap SUBDIR += libublio SUBDIR += libubox SUBDIR += libudev-devd SUBDIR += libuinputplus SUBDIR += libuiohook SUBDIR += libukcprog SUBDIR += libunicode SUBDIR += libuninum SUBDIR += libunistring SUBDIR += libunit SUBDIR += libunwind SUBDIR += libuutil SUBDIR += libuv SUBDIR += libvanessa_adt SUBDIR += libvanessa_logger SUBDIR += libvanessa_socket SUBDIR += libvc SUBDIR += libversion SUBDIR += libvex SUBDIR += libvhdi SUBDIR += libvirt SUBDIR += libvirt-dbus SUBDIR += libvirt-glib SUBDIR += libvirt-java SUBDIR += libvmdk SUBDIR += libvolume_id SUBDIR += libvsapm SUBDIR += libvsgpt SUBDIR += libvshadow SUBDIR += libvslvm SUBDIR += libvterm SUBDIR += libwasmtime SUBDIR += libx86 SUBDIR += libxalloc SUBDIR += libxo SUBDIR += libxsd SUBDIR += libxsd-frontend SUBDIR += libxtend SUBDIR += libzakalwe SUBDIR += libzim SUBDIR += libzookeeper SUBDIR += libzvbi SUBDIR += lightning SUBDIR += linenoise SUBDIR += linenoise-ng SUBDIR += linux-c7-dbus-libs SUBDIR += linux-c7-devtools SUBDIR += linux-c7-devtoolset SUBDIR += linux-c7-elfutils-libelf SUBDIR += linux-c7-elfutils-libs SUBDIR += linux-c7-icu SUBDIR += linux-c7-libaio SUBDIR += linux-c7-libgfortran SUBDIR += linux-c7-libglade2 SUBDIR += linux-c7-libpciaccess SUBDIR += linux-c7-libsigc++20 SUBDIR += linux-c7-libthai SUBDIR += linux-c7-libtool-ltdl SUBDIR += linux-c7-libunwind SUBDIR += linux-c7-make SUBDIR += linux-c7-nspr SUBDIR += linux-c7-qt SUBDIR += linux-c7-sdl12 SUBDIR += linux-c7-sdl20 SUBDIR += linux-c7-strace SUBDIR += linux-c7-systemd-libs SUBDIR += linux-c7-zlib-devel SUBDIR += linux-ltp SUBDIR += linux-rl9-dbus-libs SUBDIR += linux-rl9-devtools SUBDIR += linux-rl9-elfutils-libelf SUBDIR += linux-rl9-elfutils-libs SUBDIR += linux-rl9-icu SUBDIR += linux-rl9-libatomic SUBDIR += linux-rl9-libevent SUBDIR += linux-rl9-libgfortran SUBDIR += linux-rl9-libpciaccess SUBDIR += linux-rl9-libsigc++20 SUBDIR += linux-rl9-libsigsegv SUBDIR += linux-rl9-libsoup SUBDIR += linux-rl9-libthai SUBDIR += linux-rl9-libtool-ltdl SUBDIR += linux-rl9-libunistring SUBDIR += linux-rl9-llvm SUBDIR += linux-rl9-nspr SUBDIR += linux-rl9-ocl-icd SUBDIR += linux-rl9-orc SUBDIR += linux-rl9-strace SUBDIR += linux-rl9-systemd-libs SUBDIR += linux-sublime-merge SUBDIR += linux_libusb SUBDIR += listserialc SUBDIR += liteide SUBDIR += llbuild SUBDIR += lldb-mi SUBDIR += llnextgen SUBDIR += llvm SUBDIR += llvm-cheri SUBDIR += llvm-cheriot SUBDIR += llvm-devel SUBDIR += llvm-morello SUBDIR += llvm11 SUBDIR += llvm12 SUBDIR += llvm13 SUBDIR += llvm14 SUBDIR += llvm15 SUBDIR += llvm16 SUBDIR += llvm17 SUBDIR += llvm18 SUBDIR += llvm19 SUBDIR += lm4tools SUBDIR += lmdbg SUBDIR += lndir SUBDIR += lnphost SUBDIR += loccount SUBDIR += lockfree-malloc SUBDIR += log4c SUBDIR += log4cplus SUBDIR += log4cpp SUBDIR += log4cxx SUBDIR += log4j SUBDIR += log4net SUBDIR += log4sh SUBDIR += log4shib SUBDIR += loguru SUBDIR += lokalize SUBDIR += loki SUBDIR += love SUBDIR += love07 SUBDIR += love08 SUBDIR += love10 SUBDIR += love5 SUBDIR += lpc21isp SUBDIR += lrmi SUBDIR += lua-Penlight SUBDIR += lua-argparse SUBDIR += lua-bitlib SUBDIR += lua-bitop SUBDIR += lua-cjson SUBDIR += lua-cqueues SUBDIR += lua-gettext SUBDIR += lua-lgi SUBDIR += lua-libevent SUBDIR += lua-lpeg SUBDIR += lua-luacheck SUBDIR += lua-luarocks SUBDIR += lua-lunit SUBDIR += lua-mode SUBDIR += lua-posix SUBDIR += lua-pty SUBDIR += lua-rds-parser SUBDIR += lua-resty-string SUBDIR += lua-stdlib SUBDIR += lua-stdlib-debug SUBDIR += lua-stdlib-normalize SUBDIR += lua-sysctl SUBDIR += luabind SUBDIR += luafilesystem SUBDIR += luajava SUBDIR += lutok SUBDIR += luv SUBDIR += lwp SUBDIR += lxqt-build-tools SUBDIR += lxqt2-build-tools SUBDIR += lyra SUBDIR += m17n-db SUBDIR += m17n-docs SUBDIR += m17n-inscript2 SUBDIR += m17n-lib SUBDIR += m4 SUBDIR += mage SUBDIR += magic_enum SUBDIR += magit SUBDIR += magit-devel SUBDIR += make++ SUBDIR += makedepend SUBDIR += malloy SUBDIR += marisa-trie SUBDIR += marl SUBDIR += massif-visualizer SUBDIR += mate-common SUBDIR += matreshka SUBDIR += maven SUBDIR += maven-wrapper SUBDIR += maven363 SUBDIR += maven39 SUBDIR += mcpp SUBDIR += mdb SUBDIR += mdds SUBDIR += mdspan SUBDIR += menhir SUBDIR += mercurial SUBDIR += mergify SUBDIR += meson SUBDIR += meson-python SUBDIR += microsoft-gsl SUBDIR += mill SUBDIR += mimalloc SUBDIR += mimir SUBDIR += mir-core SUBDIR += mk-configure SUBDIR += mm SUBDIR += mm-common SUBDIR += modd SUBDIR += mold SUBDIR += mongo-c-driver SUBDIR += mono-addins SUBDIR += mpatrol SUBDIR += mph SUBDIR += mrc SUBDIR += msbuild SUBDIR += msgpack-c SUBDIR += msgpack-cxx SUBDIR += msgpack-d SUBDIR += msgpuck SUBDIR += msitools SUBDIR += msp430-debug-stack SUBDIR += mspdebug SUBDIR += mstch SUBDIR += mtbl SUBDIR += muon SUBDIR += mustache SUBDIR += mutagen SUBDIR += myrepos SUBDIR += nana SUBDIR += nano-signal-slot SUBDIR += nanobind SUBDIR += nanopb SUBDIR += nant SUBDIR += nasm SUBDIR += naturaldocs SUBDIR += ncc SUBDIR += ncnf SUBDIR += ncurses SUBDIR += ndesk-dbus SUBDIR += ndesk-dbus-glib SUBDIR += ndesk-options SUBDIR += netscape-java40 SUBDIR += netsurf-buildsystem SUBDIR += newfile SUBDIR += newt SUBDIR += newtonsoft-json SUBDIR += nextest SUBDIR += nextpnr SUBDIR += nexus2-oss SUBDIR += nimble SUBDIR += nini SUBDIR += ninja SUBDIR += nlohmann-json SUBDIR += node-thrift SUBDIR += nodeeditor SUBDIR += notcurses SUBDIR += notify-sharp SUBDIR += nox SUBDIR += npth SUBDIR += nsgenbind SUBDIR += nspr SUBDIR += nss_wrapper SUBDIR += nsync SUBDIR += nuitka SUBDIR += ob-rust SUBDIR += obby SUBDIR += objconv SUBDIR += objecthash SUBDIR += objfw SUBDIR += ocaml-annexlib SUBDIR += ocaml-astring SUBDIR += ocaml-base SUBDIR += ocaml-bos SUBDIR += ocaml-calendar SUBDIR += ocaml-camljava SUBDIR += ocaml-camlp-streams SUBDIR += ocaml-camlp4 SUBDIR += ocaml-camlp5 SUBDIR += ocaml-camomile SUBDIR += ocaml-camomile-examples SUBDIR += ocaml-cfg SUBDIR += ocaml-classes SUBDIR += ocaml-cmdliner SUBDIR += ocaml-compiler-libs SUBDIR += ocaml-cppo SUBDIR += ocaml-csexp SUBDIR += ocaml-cstruct SUBDIR += ocaml-curses SUBDIR += ocaml-dolmen SUBDIR += ocaml-domain-name SUBDIR += ocaml-dune SUBDIR += ocaml-extlib SUBDIR += ocaml-findlib SUBDIR += ocaml-fmt SUBDIR += ocaml-fpath SUBDIR += ocaml-gen SUBDIR += ocaml-hmap SUBDIR += ocaml-ipaddr SUBDIR += ocaml-lacaml SUBDIR += ocaml-linol SUBDIR += ocaml-logs SUBDIR += ocaml-lsp SUBDIR += ocaml-lwt SUBDIR += ocaml-magic SUBDIR += ocaml-mtime SUBDIR += ocaml-ocamlbuild SUBDIR += ocaml-ocplib-endian SUBDIR += ocaml-octavius SUBDIR += ocaml-opam SUBDIR += ocaml-ounit SUBDIR += ocaml-parmap SUBDIR += ocaml-parsexp SUBDIR += ocaml-pcre SUBDIR += ocaml-pcre2 SUBDIR += ocaml-pomap SUBDIR += ocaml-pp_loc SUBDIR += ocaml-ppx-tools SUBDIR += ocaml-ppx_blob SUBDIR += ocaml-ppx_compare SUBDIR += ocaml-ppx_derivers SUBDIR += ocaml-ppx_deriving SUBDIR += ocaml-ppx_hash SUBDIR += ocaml-ppx_js_style SUBDIR += ocaml-ppx_sexp_conv SUBDIR += ocaml-ppx_yojson_conv SUBDIR += ocaml-ppx_yojson_conv_lib SUBDIR += ocaml-ppxlib SUBDIR += ocaml-psmt2-frontend SUBDIR += ocaml-re SUBDIR += ocaml-react SUBDIR += ocaml-res SUBDIR += ocaml-result SUBDIR += ocaml-rresult SUBDIR += ocaml-sdl SUBDIR += ocaml-sem SUBDIR += ocaml-seq SUBDIR += ocaml-sexplib SUBDIR += ocaml-sexplib0 SUBDIR += ocaml-stdio SUBDIR += ocaml-topkg SUBDIR += ocaml-trace SUBDIR += ocaml-type_conv SUBDIR += ocaml-uchar SUBDIR += ocaml-ulex SUBDIR += ocaml-uutf SUBDIR += ocaml-xstr SUBDIR += ocaml-xstrp4 SUBDIR += oci-cli SUBDIR += ocl-icd SUBDIR += oclgrind SUBDIR += ode SUBDIR += ois SUBDIR += okteta SUBDIR += ollama-hpp SUBDIR += omake SUBDIR += omniORB SUBDIR += omnilinter SUBDIR += onetbb SUBDIR += oniguruma SUBDIR += open-beagle SUBDIR += open62541 SUBDIR += opencl SUBDIR += opencl-clang SUBDIR += opencvs SUBDIR += opendht SUBDIR += opengrok SUBDIR += openocd SUBDIR += opentelemetry-cpp SUBDIR += opentelemetry-proto SUBDIR += openwince-include SUBDIR += orc SUBDIR += orcania SUBDIR += osc SUBDIR += ossp-al SUBDIR += ossp-cfg SUBDIR += ossp-ex SUBDIR += ossp-l2 SUBDIR += ossp-val SUBDIR += ossp-var SUBDIR += ossp-xds SUBDIR += outcome SUBDIR += p4 SUBDIR += p4.el SUBDIR += p4api SUBDIR += p4delta SUBDIR += p4genpatch SUBDIR += p5-AI-Pathfinding-AStar SUBDIR += p5-AI-Prolog SUBDIR += p5-ARGV-Struct SUBDIR += p5-AWS-Signature4 SUBDIR += p5-Acme-Comment SUBDIR += p5-Acme-Damn SUBDIR += p5-Acme-MetaSyntactic SUBDIR += p5-Adapter-Async SUBDIR += p5-Agent SUBDIR += p5-Algorithm-Accounting SUBDIR += p5-Algorithm-Annotate SUBDIR += p5-Algorithm-Backoff SUBDIR += p5-Algorithm-Binpack SUBDIR += p5-Algorithm-Bucketizer SUBDIR += p5-Algorithm-C3 SUBDIR += p5-Algorithm-ChooseSubsets SUBDIR += p5-Algorithm-Cluster SUBDIR += p5-Algorithm-Cron SUBDIR += p5-Algorithm-Dependency SUBDIR += p5-Algorithm-Dependency-Objects SUBDIR += p5-Algorithm-Diff SUBDIR += p5-Algorithm-Evolutionary SUBDIR += p5-Algorithm-FloodControl SUBDIR += p5-Algorithm-IncludeExclude SUBDIR += p5-Algorithm-Interval2Prefix SUBDIR += p5-Algorithm-LCS SUBDIR += p5-Algorithm-LUHN SUBDIR += p5-Algorithm-MarkovChain SUBDIR += p5-Algorithm-Merge SUBDIR += p5-Algorithm-MinMax SUBDIR += p5-Algorithm-NaiveBayes SUBDIR += p5-Algorithm-Networksort SUBDIR += p5-Algorithm-Numerical-Shuffle SUBDIR += p5-Algorithm-Permute SUBDIR += p5-Algorithm-SVM SUBDIR += p5-Alias SUBDIR += p5-Alien-Base-ModuleBuild SUBDIR += p5-Alien-Build SUBDIR += p5-Alien-LibGumbo SUBDIR += p5-Alien-SDL SUBDIR += p5-Alien-cmake3 SUBDIR += p5-Alzabo SUBDIR += p5-Any-Daemon SUBDIR += p5-Any-Moose SUBDIR += p5-Any-Moose-Convert SUBDIR += p5-AnyData SUBDIR += p5-AnyEvent SUBDIR += p5-AnyEvent-AIO SUBDIR += p5-AnyEvent-Connection SUBDIR += p5-AnyEvent-Connector SUBDIR += p5-AnyEvent-DBI SUBDIR += p5-AnyEvent-DBI-Abstract SUBDIR += p5-AnyEvent-DBus SUBDIR += p5-AnyEvent-Filesys-Notify SUBDIR += p5-AnyEvent-Fork SUBDIR += p5-AnyEvent-Gearman SUBDIR += p5-AnyEvent-Graphite SUBDIR += p5-AnyEvent-I3 SUBDIR += p5-AnyEvent-MessagePack SUBDIR += p5-AnyEvent-RPC SUBDIR += p5-AnyEvent-Run SUBDIR += p5-AnyEvent-Subprocess SUBDIR += p5-AnyEvent-Task SUBDIR += p5-AnyEvent-Worker SUBDIR += p5-AnyMQ SUBDIR += p5-App-Build SUBDIR += p5-App-CLI SUBDIR += p5-App-CLI-Extension SUBDIR += p5-App-Cache SUBDIR += p5-App-Cmd SUBDIR += p5-App-Control SUBDIR += p5-App-FatPacker SUBDIR += p5-App-GitGot SUBDIR += p5-App-GitHub SUBDIR += p5-App-Info SUBDIR += p5-App-Options SUBDIR += p5-App-Rad SUBDIR += p5-App-SD SUBDIR += p5-App-SVN-Bisect SUBDIR += p5-App-Trace SUBDIR += p5-App-cpanminus SUBDIR += p5-App-cpanminus-reporter SUBDIR += p5-App-cpanoutdated SUBDIR += p5-App-local-lib-helper SUBDIR += p5-App-perlbrew SUBDIR += p5-App-scan_prereqs_cpanfile SUBDIR += p5-AppConfig SUBDIR += p5-AppConfig-Std SUBDIR += p5-Array-Group SUBDIR += p5-Array-Heap SUBDIR += p5-Array-Iterator SUBDIR += p5-Array-Unique SUBDIR += p5-Array-Window SUBDIR += p5-Asm-Preproc SUBDIR += p5-Async-Interrupt SUBDIR += p5-Async-MergePoint SUBDIR += p5-AtExit SUBDIR += p5-Attribute-Handlers SUBDIR += p5-Attribute-Handlers-Prospective SUBDIR += p5-Attribute-Persistent SUBDIR += p5-AutoLoader SUBDIR += p5-AutoXS-Header SUBDIR += p5-Avro SUBDIR += p5-B-C SUBDIR += p5-B-COW SUBDIR += p5-B-Compiling SUBDIR += p5-B-Debug SUBDIR += p5-B-Deobfuscate SUBDIR += p5-B-Flags SUBDIR += p5-B-Generate SUBDIR += p5-B-Graph SUBDIR += p5-B-Hooks-AtRuntime SUBDIR += p5-B-Hooks-EndOfScope SUBDIR += p5-B-Hooks-OP-Annotation SUBDIR += p5-B-Hooks-OP-Check SUBDIR += p5-B-Hooks-OP-Check-EntersubForCV SUBDIR += p5-B-Hooks-OP-PPAddr SUBDIR += p5-B-Hooks-Parser SUBDIR += p5-B-Keywords SUBDIR += p5-B-OPCheck SUBDIR += p5-B-Size2 SUBDIR += p5-B-Utils SUBDIR += p5-BFD SUBDIR += p5-BS-Event SUBDIR += p5-BSD-Resource SUBDIR += p5-BSD-devstat SUBDIR += p5-BSD-stat SUBDIR += p5-BZ-Client SUBDIR += p5-Badger SUBDIR += p5-Benchmark-Timer SUBDIR += p5-Best SUBDIR += p5-Border-Style SUBDIR += p5-BorderStyle SUBDIR += p5-BorderStyleBase SUBDIR += p5-BorderStyles-Standard SUBDIR += p5-Brannigan SUBDIR += p5-Bread-Board SUBDIR += p5-Bread-Board-Declare SUBDIR += p5-Bundle-Perl6 SUBDIR += p5-C-Scan SUBDIR += p5-CBOR-XS SUBDIR += p5-CHI SUBDIR += p5-CHI-Driver-DBI SUBDIR += p5-CLASS SUBDIR += p5-CLI-Osprey SUBDIR += p5-CPAN-Changes SUBDIR += p5-CPAN-Checksums SUBDIR += p5-CPAN-DistnameInfo SUBDIR += p5-CPAN-Inject SUBDIR += p5-CPAN-Meta SUBDIR += p5-CPAN-Meta-Check SUBDIR += p5-CPAN-Meta-Requirements SUBDIR += p5-CPAN-Meta-YAML SUBDIR += p5-CPAN-Mini SUBDIR += p5-CPAN-Perl-Releases SUBDIR += p5-CPAN-Recent-Uploads SUBDIR += p5-CPAN-Reporter SUBDIR += p5-CPAN-Reporter-Smoker SUBDIR += p5-CPAN-Requirements-Dynamic SUBDIR += p5-CPAN-SQLite SUBDIR += p5-CPAN-Site SUBDIR += p5-CPAN-Testers-Common-Client SUBDIR += p5-CPAN-Testers-Report SUBDIR += p5-CPAN-Uploader SUBDIR += p5-CPAN-YACSmoke SUBDIR += p5-CPANPLUS SUBDIR += p5-CPANPLUS-Dist-Build SUBDIR += p5-CPS SUBDIR += p5-CPU-Z80-Assembler SUBDIR += p5-Cache SUBDIR += p5-Cache-AgainstFile SUBDIR += p5-Cache-Cache SUBDIR += p5-Cache-FastMmap SUBDIR += p5-Cache-LRU SUBDIR += p5-Cache-Memcached-Tie SUBDIR += p5-Cache-Mmap SUBDIR += p5-Cache-Simple-TimedExpiry SUBDIR += p5-Cairo-GObject SUBDIR += p5-Calendar-Simple SUBDIR += p5-Call-Context SUBDIR += p5-Callback-Frame SUBDIR += p5-Canary-Stability SUBDIR += p5-Capture-Tiny SUBDIR += p5-Capture-Tiny-Extended SUBDIR += p5-Carp SUBDIR += p5-Carp-Always SUBDIR += p5-Carp-Always-Color SUBDIR += p5-Carp-Assert SUBDIR += p5-Carp-Assert-More SUBDIR += p5-Carp-Clan SUBDIR += p5-Carp-Clan-Share SUBDIR += p5-Carp-Datum SUBDIR += p5-Carp-REPL SUBDIR += p5-Check-ISA SUBDIR += p5-Child SUBDIR += p5-Chooser SUBDIR += p5-Class-Accessor SUBDIR += p5-Class-Accessor-Chained SUBDIR += p5-Class-Accessor-Children SUBDIR += p5-Class-Accessor-Complex SUBDIR += p5-Class-Accessor-Constructor SUBDIR += p5-Class-Accessor-Fast-Contained SUBDIR += p5-Class-Accessor-Fast-XS SUBDIR += p5-Class-Accessor-Grouped SUBDIR += p5-Class-Accessor-Installer SUBDIR += p5-Class-Accessor-Lite SUBDIR += p5-Class-Accessor-Lvalue SUBDIR += p5-Class-Accessor-Named SUBDIR += p5-Class-Adapter SUBDIR += p5-Class-AlzaboWrapper SUBDIR += p5-Class-ArrayObjects SUBDIR += p5-Class-AutoClass SUBDIR += p5-Class-Autouse SUBDIR += p5-Class-Base SUBDIR += p5-Class-BlackHole SUBDIR += p5-Class-C3 SUBDIR += p5-Class-C3-Adopt-NEXT SUBDIR += p5-Class-C3-Componentised SUBDIR += p5-Class-C3-XS SUBDIR += p5-Class-Closure SUBDIR += p5-Class-CodeStyler SUBDIR += p5-Class-Component SUBDIR += p5-Class-Constant SUBDIR += p5-Class-Container SUBDIR += p5-Class-Contract SUBDIR += p5-Class-Data-ConfigHash SUBDIR += p5-Class-Data-Inheritable SUBDIR += p5-Class-Data-Lite SUBDIR += p5-Class-Date SUBDIR += p5-Class-Declare SUBDIR += p5-Class-Default SUBDIR += p5-Class-Delegation SUBDIR += p5-Class-EHierarchy SUBDIR += p5-Class-ErrorHandler SUBDIR += p5-Class-Factory SUBDIR += p5-Class-Factory-Util SUBDIR += p5-Class-Field SUBDIR += p5-Class-Fields SUBDIR += p5-Class-Forward SUBDIR += p5-Class-Generate SUBDIR += p5-Class-Gomor SUBDIR += p5-Class-Handle SUBDIR += p5-Class-Hook SUBDIR += p5-Class-ISA SUBDIR += p5-Class-Inner SUBDIR += p5-Class-InsideOut SUBDIR += p5-Class-Inspector SUBDIR += p5-Class-Interfaces SUBDIR += p5-Class-Load SUBDIR += p5-Class-Load-XS SUBDIR += p5-Class-Loader SUBDIR += p5-Class-MakeMethods SUBDIR += p5-Class-Measure SUBDIR += p5-Class-Method-Modifiers SUBDIR += p5-Class-Method-Modifiers-Fast SUBDIR += p5-Class-MethodMaker SUBDIR += p5-Class-MethodMapper SUBDIR += p5-Class-Mix SUBDIR += p5-Class-Mixin SUBDIR += p5-Class-MixinFactory SUBDIR += p5-Class-Multimethods SUBDIR += p5-Class-Multimethods-Pure SUBDIR += p5-Class-NamedParms SUBDIR += p5-Class-Null SUBDIR += p5-Class-OOorNO SUBDIR += p5-Class-ObjectTemplate SUBDIR += p5-Class-ObjectTemplate-DB SUBDIR += p5-Class-Observable SUBDIR += p5-Class-ParmList SUBDIR += p5-Class-Prototyped SUBDIR += p5-Class-ReturnValue SUBDIR += p5-Class-Roles SUBDIR += p5-Class-STL-Containers SUBDIR += p5-Class-Singleton SUBDIR += p5-Class-Spiffy SUBDIR += p5-Class-StateMachine SUBDIR += p5-Class-Std SUBDIR += p5-Class-Std-Fast SUBDIR += p5-Class-Std-Utils SUBDIR += p5-Class-StrongSingleton SUBDIR += p5-Class-Tangram SUBDIR += p5-Class-Throwable SUBDIR += p5-Class-Tiny SUBDIR += p5-Class-Tiny-Chained SUBDIR += p5-Class-Tom SUBDIR += p5-Class-Trigger SUBDIR += p5-Class-Unload SUBDIR += p5-Class-Virtual SUBDIR += p5-Class-WhiteHole SUBDIR += p5-Class-Workflow SUBDIR += p5-Class-XPath SUBDIR += p5-Class-XSAccessor SUBDIR += p5-Clone SUBDIR += p5-Clone-Choose SUBDIR += p5-Clone-Fast SUBDIR += p5-Clone-More SUBDIR += p5-Clone-PP SUBDIR += p5-Code-Perl SUBDIR += p5-Color-ANSI-Util SUBDIR += p5-Color-RGB-Util SUBDIR += p5-Color-Theme-Role SUBDIR += p5-ColorThemeBase-Static SUBDIR += p5-ColorThemeUtil-ANSI SUBDIR += p5-ColorThemes-Standard SUBDIR += p5-Commandable SUBDIR += p5-Commands-Guarded SUBDIR += p5-CommitBit SUBDIR += p5-Compiler-Lexer SUBDIR += p5-Complete-Common SUBDIR += p5-Complete-Path SUBDIR += p5-Complete-Sah SUBDIR += p5-Complete-Sequence SUBDIR += p5-Complete-Util SUBDIR += p5-Config-AST SUBDIR += p5-Config-AWS SUBDIR += p5-Config-Any SUBDIR += p5-Config-ApacheFormat SUBDIR += p5-Config-Auto SUBDIR += p5-Config-AutoConf SUBDIR += p5-Config-Fast SUBDIR += p5-Config-General SUBDIR += p5-Config-GitLike SUBDIR += p5-Config-Grammar SUBDIR += p5-Config-INI SUBDIR += p5-Config-INI-Reader-Ordered SUBDIR += p5-Config-INI-Simple SUBDIR += p5-Config-Identity SUBDIR += p5-Config-IniFiles SUBDIR += p5-Config-IniHash SUBDIR += p5-Config-IniRegEx SUBDIR += p5-Config-JFDI SUBDIR += p5-Config-JSON SUBDIR += p5-Config-MVP SUBDIR += p5-Config-MVP-Reader-INI SUBDIR += p5-Config-Merge SUBDIR += p5-Config-Model SUBDIR += p5-Config-Model-Backend-Yaml SUBDIR += p5-Config-Model-Tester SUBDIR += p5-Config-MySQL SUBDIR += p5-Config-Objective SUBDIR += p5-Config-Options SUBDIR += p5-Config-Parser SUBDIR += p5-Config-Parser-ldap SUBDIR += p5-Config-Perl-V SUBDIR += p5-Config-Properties SUBDIR += p5-Config-Record SUBDIR += p5-Config-Setting SUBDIR += p5-Config-Simple SUBDIR += p5-Config-Std SUBDIR += p5-Config-Tiny SUBDIR += p5-Config-Validator SUBDIR += p5-Config-Versioned SUBDIR += p5-Config-Wrest SUBDIR += p5-Config-YAML SUBDIR += p5-ConfigReader SUBDIR += p5-ConfigReader-Simple SUBDIR += p5-Connector SUBDIR += p5-Const-Exporter SUBDIR += p5-Const-Fast SUBDIR += p5-Context-Preserve SUBDIR += p5-Contextual-Return SUBDIR += p5-Convert-Age SUBDIR += p5-Convert-Scalar SUBDIR += p5-Coro SUBDIR += p5-Curses SUBDIR += p5-Curses-Application SUBDIR += p5-Curses-Forms SUBDIR += p5-Curses-UI SUBDIR += p5-Curses-Widgets SUBDIR += p5-Cvs SUBDIR += p5-Cwd-Guard SUBDIR += p5-DB_File-Lock SUBDIR += p5-Daemon-Control SUBDIR += p5-Dancer-Debug SUBDIR += p5-Dancer-Logger-Syslog SUBDIR += p5-Danga-Socket SUBDIR += p5-Danga-Socket-Callback SUBDIR += p5-Data-ACL SUBDIR += p5-Data-Alias SUBDIR += p5-Data-Binary SUBDIR += p5-Data-Bind SUBDIR += p5-Data-Capture SUBDIR += p5-Data-ClearSilver-HDF SUBDIR += p5-Data-Clone SUBDIR += p5-Data-Cmp SUBDIR += p5-Data-Compare SUBDIR += p5-Data-Diver SUBDIR += p5-Data-Dmp SUBDIR += p5-Data-Domain SUBDIR += p5-Data-Dump SUBDIR += p5-Data-Dump-Color SUBDIR += p5-Data-Dump-Streamer SUBDIR += p5-Data-DumpXML SUBDIR += p5-Data-Dumper SUBDIR += p5-Data-Dumper-Concise SUBDIR += p5-Data-Dumper-Interp SUBDIR += p5-Data-Dumper-Perltidy SUBDIR += p5-Data-Dumper-Simple SUBDIR += p5-Data-Flow SUBDIR += p5-Data-GUID SUBDIR += p5-Data-Grouper SUBDIR += p5-Data-HashArray SUBDIR += p5-Data-HexDump SUBDIR += p5-Data-HexDump-Range SUBDIR += p5-Data-Hexdumper SUBDIR += p5-Data-Hexify SUBDIR += p5-Data-Hierarchy SUBDIR += p5-Data-IEEE754 SUBDIR += p5-Data-Inherited SUBDIR += p5-Data-Inspect SUBDIR += p5-Data-Integer SUBDIR += p5-Data-JavaScript-Anon SUBDIR += p5-Data-Lazy SUBDIR += p5-Data-Localize SUBDIR += p5-Data-Lock SUBDIR += p5-Data-MessagePack SUBDIR += p5-Data-MessagePack-Stream SUBDIR += p5-Data-Miscellany SUBDIR += p5-Data-ModeMerge SUBDIR += p5-Data-Model SUBDIR += p5-Data-Munge SUBDIR += p5-Data-Object SUBDIR += p5-Data-Object-Args SUBDIR += p5-Data-Object-Attributes SUBDIR += p5-Data-Object-Cast SUBDIR += p5-Data-Object-Class SUBDIR += p5-Data-Object-ClassHas SUBDIR += p5-Data-Object-Data SUBDIR += p5-Data-Object-Exception SUBDIR += p5-Data-Object-Kind SUBDIR += p5-Data-Object-Name SUBDIR += p5-Data-Object-Opts SUBDIR += p5-Data-Object-Plugin SUBDIR += p5-Data-Object-Role SUBDIR += p5-Data-Object-Role-Arguable SUBDIR += p5-Data-Object-Role-Buildable SUBDIR += p5-Data-Object-Role-Dumpable SUBDIR += p5-Data-Object-Role-Errable SUBDIR += p5-Data-Object-Role-Formulatable SUBDIR += p5-Data-Object-Role-Immutable SUBDIR += p5-Data-Object-Role-Pluggable SUBDIR += p5-Data-Object-Role-Proxyable SUBDIR += p5-Data-Object-Role-Stashable SUBDIR += p5-Data-Object-Role-Throwable SUBDIR += p5-Data-Object-Role-Tryable SUBDIR += p5-Data-Object-RoleHas SUBDIR += p5-Data-Object-Space SUBDIR += p5-Data-Object-State SUBDIR += p5-Data-Object-Struct SUBDIR += p5-Data-Object-Try SUBDIR += p5-Data-Object-Types SUBDIR += p5-Data-Object-Vars SUBDIR += p5-Data-ObjectDriver SUBDIR += p5-Data-OptList SUBDIR += p5-Data-Page-NoTotalEntries SUBDIR += p5-Data-Page-Pageset SUBDIR += p5-Data-ParseBinary SUBDIR += p5-Data-Path SUBDIR += p5-Data-Peek SUBDIR += p5-Data-Perl SUBDIR += p5-Data-Printer SUBDIR += p5-Data-Properties SUBDIR += p5-Data-Rand SUBDIR += p5-Data-Rand-Obscure SUBDIR += p5-Data-Random SUBDIR += p5-Data-Range-Compare SUBDIR += p5-Data-Record SUBDIR += p5-Data-Recursive-Encode SUBDIR += p5-Data-Remember SUBDIR += p5-Data-Rmap SUBDIR += p5-Data-RoundRobin SUBDIR += p5-Data-Rx SUBDIR += p5-Data-SExpression SUBDIR += p5-Data-Sah SUBDIR += p5-Data-Sah-Coerce SUBDIR += p5-Data-Sah-DefaultValue SUBDIR += p5-Data-Sah-Filter SUBDIR += p5-Data-Sah-Normalize SUBDIR += p5-Data-Sah-Resolve SUBDIR += p5-Data-Section SUBDIR += p5-Data-Section-Simple SUBDIR += p5-Data-Serializable SUBDIR += p5-Data-Serializer SUBDIR += p5-Data-Serializer-Sereal SUBDIR += p5-Data-ShowTable SUBDIR += p5-Data-Stag SUBDIR += p5-Data-Stream-Bulk SUBDIR += p5-Data-Structure-Util SUBDIR += p5-Data-Swap SUBDIR += p5-Data-Table SUBDIR += p5-Data-Taxonomy-Tags SUBDIR += p5-Data-TemporaryBag SUBDIR += p5-Data-Throttler SUBDIR += p5-Data-Throttler-Memcached SUBDIR += p5-Data-Thunk SUBDIR += p5-Data-TreeDumper SUBDIR += p5-Data-TreeDumper-Renderer-GTK SUBDIR += p5-Data-Types SUBDIR += p5-Data-URIEncode SUBDIR += p5-Data-UUID SUBDIR += p5-Data-Uniqid SUBDIR += p5-Data-Unixish SUBDIR += p5-Data-Util SUBDIR += p5-Data-Validate SUBDIR += p5-Data-Validator SUBDIR += p5-Data-Visitor SUBDIR += p5-Data-Visitor-Encode SUBDIR += p5-Data-Visitor-Tiny SUBDIR += p5-Data-Walk SUBDIR += p5-DataStruct-Flat SUBDIR += p5-Date-Business SUBDIR += p5-Date-Calc SUBDIR += p5-Date-Calc-Iterator SUBDIR += p5-Date-Calc-XS SUBDIR += p5-Date-DayOfWeek SUBDIR += p5-Date-Easter SUBDIR += p5-Date-Extract SUBDIR += p5-Date-EzDate SUBDIR += p5-Date-Holidays-DK SUBDIR += p5-Date-ICal SUBDIR += p5-Date-ISO SUBDIR += p5-Date-Leapyear SUBDIR += p5-Date-Manip SUBDIR += p5-Date-Pcalc SUBDIR += p5-Date-Piece SUBDIR += p5-Date-Range SUBDIR += p5-Date-Roman SUBDIR += p5-Date-Simple SUBDIR += p5-DateConvert SUBDIR += p5-DateTime SUBDIR += p5-DateTime-Astro SUBDIR += p5-DateTime-Calendar-Chinese SUBDIR += p5-DateTime-Calendar-Christian SUBDIR += p5-DateTime-Calendar-Discordian SUBDIR += p5-DateTime-Calendar-FrenchRevolutionary SUBDIR += p5-DateTime-Calendar-Hebrew SUBDIR += p5-DateTime-Calendar-Japanese SUBDIR += p5-DateTime-Calendar-Julian SUBDIR += p5-DateTime-Calendar-Mayan SUBDIR += p5-DateTime-Calendar-Pataphysical SUBDIR += p5-DateTime-Cron-Simple SUBDIR += p5-DateTime-Event-Chinese SUBDIR += p5-DateTime-Event-Cron SUBDIR += p5-DateTime-Event-Easter SUBDIR += p5-DateTime-Event-ICal SUBDIR += p5-DateTime-Event-Lunar SUBDIR += p5-DateTime-Event-NameDay SUBDIR += p5-DateTime-Event-Random SUBDIR += p5-DateTime-Event-Recurrence SUBDIR += p5-DateTime-Event-Sunrise SUBDIR += p5-DateTime-Event-Zodiac SUBDIR += p5-DateTime-Fiscal-Year SUBDIR += p5-DateTime-Format-Baby SUBDIR += p5-DateTime-Format-Bork SUBDIR += p5-DateTime-Format-Builder SUBDIR += p5-DateTime-Format-DBI SUBDIR += p5-DateTime-Format-DateManip SUBDIR += p5-DateTime-Format-DateParse SUBDIR += p5-DateTime-Format-Duration SUBDIR += p5-DateTime-Format-Epoch SUBDIR += p5-DateTime-Format-Excel SUBDIR += p5-DateTime-Format-Flexible SUBDIR += p5-DateTime-Format-HTTP SUBDIR += p5-DateTime-Format-IBeat SUBDIR += p5-DateTime-Format-ICal SUBDIR += p5-DateTime-Format-ISO8601 SUBDIR += p5-DateTime-Format-Mail SUBDIR += p5-DateTime-Format-MySQL SUBDIR += p5-DateTime-Format-Natural SUBDIR += p5-DateTime-Format-Oracle SUBDIR += p5-DateTime-Format-Pg SUBDIR += p5-DateTime-Format-RFC3339 SUBDIR += p5-DateTime-Format-RSS SUBDIR += p5-DateTime-Format-Roman SUBDIR += p5-DateTime-Format-SQLite SUBDIR += p5-DateTime-Format-Strptime SUBDIR += p5-DateTime-Format-W3CDTF SUBDIR += p5-DateTime-Format-XSD SUBDIR += p5-DateTime-Functions SUBDIR += p5-DateTime-HiRes SUBDIR += p5-DateTime-Incomplete SUBDIR += p5-DateTime-Locale SUBDIR += p5-DateTime-Precise SUBDIR += p5-DateTime-Set SUBDIR += p5-DateTime-TimeZone SUBDIR += p5-DateTime-TimeZone-Alias SUBDIR += p5-DateTime-TimeZone-LMT SUBDIR += p5-DateTime-Util-Calc SUBDIR += p5-DateTimeX-Easy SUBDIR += p5-Debug-Client SUBDIR += p5-Decision-ACL SUBDIR += p5-Declare-Constraints-Simple SUBDIR += p5-DefHash SUBDIR += p5-Devel-ArgNames SUBDIR += p5-Devel-Autoflush SUBDIR += p5-Devel-Backtrace SUBDIR += p5-Devel-BeginLift SUBDIR += p5-Devel-CallChecker SUBDIR += p5-Devel-Caller SUBDIR += p5-Devel-Caller-IgnoreNamespaces SUBDIR += p5-Devel-Caller-Perl SUBDIR += p5-Devel-Callsite SUBDIR += p5-Devel-CheckBin SUBDIR += p5-Devel-CheckCompiler SUBDIR += p5-Devel-CheckLib SUBDIR += p5-Devel-CheckOS SUBDIR += p5-Devel-Confess SUBDIR += p5-Devel-Constants SUBDIR += p5-Devel-CoreStack SUBDIR += p5-Devel-Cover SUBDIR += p5-Devel-Cover-Report-Clover SUBDIR += p5-Devel-Cycle SUBDIR += p5-Devel-DProfPP SUBDIR += p5-Devel-Declare SUBDIR += p5-Devel-Declare-Parser SUBDIR += p5-Devel-Diagram SUBDIR += p5-Devel-Ditto SUBDIR += p5-Devel-Dumpvar SUBDIR += p5-Devel-EvalContext SUBDIR += p5-Devel-Events SUBDIR += p5-Devel-Events-Objects SUBDIR += p5-Devel-FindPerl SUBDIR += p5-Devel-Gladiator SUBDIR += p5-Devel-GlobalDestruction SUBDIR += p5-Devel-GlobalDestruction-XS SUBDIR += p5-Devel-Hide SUBDIR += p5-Devel-InheritNamespace SUBDIR += p5-Devel-KYTProf SUBDIR += p5-Devel-Leak SUBDIR += p5-Devel-Leak-Cb SUBDIR += p5-Devel-Leak-Object SUBDIR += p5-Devel-LeakGuard-Object SUBDIR += p5-Devel-LeakTrace SUBDIR += p5-Devel-LexAlias SUBDIR += p5-Devel-MAT SUBDIR += p5-Devel-MAT-Dumper SUBDIR += p5-Devel-Messenger SUBDIR += p5-Devel-Modlist SUBDIR += p5-Devel-NYTProf SUBDIR += p5-Devel-OverloadInfo SUBDIR += p5-Devel-PPPort SUBDIR += p5-Devel-PackagePath SUBDIR += p5-Devel-PartialDump SUBDIR += p5-Devel-PatchPerl SUBDIR += p5-Devel-Platform-Info SUBDIR += p5-Devel-Pointer SUBDIR += p5-Devel-Profile SUBDIR += p5-Devel-REPL SUBDIR += p5-Devel-Refactor SUBDIR += p5-Devel-Refcount SUBDIR += p5-Devel-Required SUBDIR += p5-Devel-RingBuffer SUBDIR += p5-Devel-STrace SUBDIR += p5-Devel-SimpleTrace SUBDIR += p5-Devel-Size SUBDIR += p5-Devel-Size-Report SUBDIR += p5-Devel-SmallProf SUBDIR += p5-Devel-StackTrace SUBDIR += p5-Devel-StackTrace-AsHTML SUBDIR += p5-Devel-StackTrace-WithLexicals SUBDIR += p5-Devel-StealthDebug SUBDIR += p5-Devel-StrictMode SUBDIR += p5-Devel-Symdump SUBDIR += p5-Devel-Timer SUBDIR += p5-Devel-Trace SUBDIR += p5-Devel-TraceCalls SUBDIR += p5-Devel-TraceUse SUBDIR += p5-Devel-ebug SUBDIR += p5-Devel-ptkdb SUBDIR += p5-Device-USB SUBDIR += p5-Digest-TransformPath SUBDIR += p5-Dir-Project SUBDIR += p5-Dir-Self SUBDIR += p5-Dir-Watch SUBDIR += p5-Directory-Queue SUBDIR += p5-Directory-Scratch SUBDIR += p5-Directory-Scratch-Structured SUBDIR += p5-Dist-CheckConflicts SUBDIR += p5-Dist-Joseki SUBDIR += p5-Dist-Metadata SUBDIR += p5-Dist-Zilla SUBDIR += p5-Doxygen-Filter-Perl SUBDIR += p5-DynaLoader-Functions SUBDIR += p5-EV SUBDIR += p5-Env-PS1 SUBDIR += p5-Env-Path SUBDIR += p5-Error-Helper SUBDIR += p5-Eval-Closure SUBDIR += p5-Eval-Context SUBDIR += p5-Eval-LineNumbers SUBDIR += p5-Eval-WithLexicals SUBDIR += p5-Event SUBDIR += p5-Event-ExecFlow SUBDIR += p5-Event-Join SUBDIR += p5-Event-Lib SUBDIR += p5-Event-Notify SUBDIR += p5-Event-RPC SUBDIR += p5-Every SUBDIR += p5-Exception-Class SUBDIR += p5-Exception-Class-TryCatch SUBDIR += p5-Exception-Handler SUBDIR += p5-Expect-Simple SUBDIR += p5-ExportTo SUBDIR += p5-Exporter SUBDIR += p5-Exporter-Declare SUBDIR += p5-Exporter-Easy SUBDIR += p5-Exporter-Lite SUBDIR += p5-Exporter-Tidy SUBDIR += p5-Exporter-Tiny SUBDIR += p5-ExtUtils-AutoInstall SUBDIR += p5-ExtUtils-Builder SUBDIR += p5-ExtUtils-Builder-Compiler SUBDIR += p5-ExtUtils-CBuilder SUBDIR += p5-ExtUtils-CChecker SUBDIR += p5-ExtUtils-Config SUBDIR += p5-ExtUtils-Constant SUBDIR += p5-ExtUtils-CppGuess SUBDIR += p5-ExtUtils-Depends SUBDIR += p5-ExtUtils-HasCompiler SUBDIR += p5-ExtUtils-Helpers SUBDIR += p5-ExtUtils-Install SUBDIR += p5-ExtUtils-InstallPaths SUBDIR += p5-ExtUtils-LibBuilder SUBDIR += p5-ExtUtils-MakeMaker SUBDIR += p5-ExtUtils-MakeMaker-CPANfile SUBDIR += p5-ExtUtils-MakeMaker-Coverage SUBDIR += p5-ExtUtils-Manifest SUBDIR += p5-ExtUtils-ParseXS SUBDIR += p5-ExtUtils-PkgConfig SUBDIR += p5-ExtUtils-XSBuilder SUBDIR += p5-ExtUtils-XSpp SUBDIR += p5-FFI-C-Stat SUBDIR += p5-FFI-CheckLib SUBDIR += p5-FFI-Platypus SUBDIR += p5-FFI-Platypus-Declare SUBDIR += p5-FFI-Platypus-Lang-Rust SUBDIR += p5-FFI-Platypus-Type-Enum SUBDIR += p5-FFI-Platypus-Type-PtrObject SUBDIR += p5-FSA-Rules SUBDIR += p5-Feature-Compat-Try SUBDIR += p5-Fennec-Lite SUBDIR += p5-File-Append-TempFile SUBDIR += p5-File-Assets SUBDIR += p5-File-Attributes SUBDIR += p5-File-Attributes-Recursive SUBDIR += p5-File-BOM SUBDIR += p5-File-BaseDir SUBDIR += p5-File-BasicFlock SUBDIR += p5-File-Binary SUBDIR += p5-File-Cache SUBDIR += p5-File-Cat SUBDIR += p5-File-ChangeNotify SUBDIR += p5-File-ConfigDir SUBDIR += p5-File-Copy-Link SUBDIR += p5-File-Copy-Recursive SUBDIR += p5-File-Copy-Recursive-Reduced SUBDIR += p5-File-CountLines SUBDIR += p5-File-CreationTime SUBDIR += p5-File-DesktopEntry SUBDIR += p5-File-Dir-Dumper SUBDIR += p5-File-DirSync SUBDIR += p5-File-ExtAttr SUBDIR += p5-File-FcntlLock SUBDIR += p5-File-Find-Closures SUBDIR += p5-File-Find-Object SUBDIR += p5-File-Find-Object-Rule SUBDIR += p5-File-Find-Rule SUBDIR += p5-File-Find-Rule-Filesys-Virtual SUBDIR += p5-File-Find-Rule-Perl SUBDIR += p5-File-Find-Rule-VCS SUBDIR += p5-File-Finder SUBDIR += p5-File-Flat SUBDIR += p5-File-Flock SUBDIR += p5-File-Flock-Retry SUBDIR += p5-File-FnMatch SUBDIR += p5-File-Grep SUBDIR += p5-File-HStore SUBDIR += p5-File-HomeDir SUBDIR += p5-File-HomeDir-PathClass SUBDIR += p5-File-HomeDir-Tiny SUBDIR += p5-File-Iterator SUBDIR += p5-File-LibMagic SUBDIR += p5-File-LoadLines SUBDIR += p5-File-MMagic SUBDIR += p5-File-MMagic-XS SUBDIR += p5-File-Map SUBDIR += p5-File-MimeInfo SUBDIR += p5-File-Modified SUBDIR += p5-File-Monitor SUBDIR += p5-File-NCopy SUBDIR += p5-File-NFSLock SUBDIR += p5-File-Path SUBDIR += p5-File-Path-Expand SUBDIR += p5-File-Path-Tiny SUBDIR += p5-File-PathConvert SUBDIR += p5-File-Pid SUBDIR += p5-File-Pid-Quick SUBDIR += p5-File-Policy SUBDIR += p5-File-Random SUBDIR += p5-File-ReadBackwards SUBDIR += p5-File-Remove SUBDIR += p5-File-SafeDO SUBDIR += p5-File-SearchPath SUBDIR += p5-File-Share SUBDIR += p5-File-ShareDir SUBDIR += p5-File-ShareDir-Dist SUBDIR += p5-File-ShareDir-Install SUBDIR += p5-File-ShareDir-PAR SUBDIR += p5-File-ShareDir-PathClass SUBDIR += p5-File-ShareDir-ProjectDistDir SUBDIR += p5-File-ShareDir-Tarball SUBDIR += p5-File-Slurp SUBDIR += p5-File-Slurp-Tiny SUBDIR += p5-File-Slurp-Tree SUBDIR += p5-File-Slurper SUBDIR += p5-File-Spec-Native SUBDIR += p5-File-Stream SUBDIR += p5-File-Sync SUBDIR += p5-File-Tail SUBDIR += p5-File-Tail-Dir SUBDIR += p5-File-Tail-Multi SUBDIR += p5-File-Tail-Scribe SUBDIR += p5-File-Temp SUBDIR += p5-File-Tempdir SUBDIR += p5-File-Touch SUBDIR += p5-File-TreeCreate SUBDIR += p5-File-Type SUBDIR += p5-File-Util SUBDIR += p5-File-Write-Rotate SUBDIR += p5-File-chdir SUBDIR += p5-File-chmod SUBDIR += p5-File-pushd SUBDIR += p5-FileHandle-Fmode SUBDIR += p5-FileHandle-Unget SUBDIR += p5-Filesys-Notify-KQueue SUBDIR += p5-Filesys-Notify-Simple SUBDIR += p5-Filesys-Virtual SUBDIR += p5-Filesys-Virtual-Plain SUBDIR += p5-Filter SUBDIR += p5-Filter-Template SUBDIR += p5-Find-Lib SUBDIR += p5-FindBin-libs SUBDIR += p5-Forest SUBDIR += p5-Form-Sensible SUBDIR += p5-FreeBSD-i386-Ptrace SUBDIR += p5-FreezeThaw SUBDIR += p5-Function-Fallback-CoreOrPP SUBDIR += p5-Function-Parameters SUBDIR += p5-Future SUBDIR += p5-Future-AsyncAwait SUBDIR += p5-Future-IO SUBDIR += p5-Gearman SUBDIR += p5-Gearman-Client-Async SUBDIR += p5-Gearman-Server SUBDIR += p5-Geo-JSON SUBDIR += p5-Geo-ShapeFile SUBDIR += p5-Getargs-Long SUBDIR += p5-Getopt-ArgvFile SUBDIR += p5-Getopt-Attribute SUBDIR += p5-Getopt-Compact SUBDIR += p5-Getopt-Compact-WithCmd SUBDIR += p5-Getopt-Declare SUBDIR += p5-Getopt-EX SUBDIR += p5-Getopt-Euclid SUBDIR += p5-Getopt-GUI-Long SUBDIR += p5-Getopt-Long SUBDIR += p5-Getopt-Long-Descriptive SUBDIR += p5-Getopt-Tabular SUBDIR += p5-Git-PurePerl SUBDIR += p5-Git-Repository SUBDIR += p5-Git-Repository-Plugin-Log SUBDIR += p5-Git-Sub SUBDIR += p5-Git-Version-Compare SUBDIR += p5-Git-Wrapper SUBDIR += p5-Glib SUBDIR += p5-Glib-Object-Introspection SUBDIR += p5-Goo-Canvas2 SUBDIR += p5-Google-Checkout SUBDIR += p5-Google-ProtocolBuffers SUBDIR += p5-GraphQL SUBDIR += p5-Gravatar-URL SUBDIR += p5-Gtk2-Notify SUBDIR += p5-Gtk2-Spell SUBDIR += p5-Guard SUBDIR += p5-HOP-Lexer SUBDIR += p5-HOP-Stream SUBDIR += p5-Hash-AsObject SUBDIR += p5-Hash-AutoHash SUBDIR += p5-Hash-AutoHash-Args SUBDIR += p5-Hash-Case SUBDIR += p5-Hash-Diff SUBDIR += p5-Hash-FieldHash SUBDIR += p5-Hash-Flatten SUBDIR += p5-Hash-Merge-Simple SUBDIR += p5-Hash-MoreUtils SUBDIR += p5-Hash-MultiKey SUBDIR += p5-Hash-MultiValue SUBDIR += p5-Hash-NoRef SUBDIR += p5-Hash-Objectify SUBDIR += p5-Hash-Ordered SUBDIR += p5-Hash-SharedMem SUBDIR += p5-Hash-Slice SUBDIR += p5-Hash-Union SUBDIR += p5-Hash-Util-FieldHash-Compat SUBDIR += p5-Hash-WithDefaults SUBDIR += p5-Heap SUBDIR += p5-Heap-Simple SUBDIR += p5-Heap-Simple-Perl SUBDIR += p5-Heap-Simple-XS SUBDIR += p5-Hook-LexWrap SUBDIR += p5-IO-AIO SUBDIR += p5-IO-All SUBDIR += p5-IO-All-LWP SUBDIR += p5-IO-Any SUBDIR += p5-IO-Async SUBDIR += p5-IO-BufferedSelect SUBDIR += p5-IO-Callback SUBDIR += p5-IO-Capture SUBDIR += p5-IO-CaptureOutput SUBDIR += p5-IO-Digest SUBDIR += p5-IO-Event SUBDIR += p5-IO-FDPass SUBDIR += p5-IO-File-AtomicChange SUBDIR += p5-IO-HTML SUBDIR += p5-IO-Handle-Util SUBDIR += p5-IO-Interactive SUBDIR += p5-IO-KQueue SUBDIR += p5-IO-Lambda SUBDIR += p5-IO-LockedFile SUBDIR += p5-IO-MultiPipe SUBDIR += p5-IO-Multiplex SUBDIR += p5-IO-NestedCapture SUBDIR += p5-IO-Null SUBDIR += p5-IO-Pager SUBDIR += p5-IO-Pipely SUBDIR += p5-IO-Prompt SUBDIR += p5-IO-Prompt-Simple SUBDIR += p5-IO-Prompt-Tiny SUBDIR += p5-IO-Prompter SUBDIR += p5-IO-Pty-Easy SUBDIR += p5-IO-SessionData SUBDIR += p5-IO-String SUBDIR += p5-IO-Stringy SUBDIR += p5-IO-Stty SUBDIR += p5-IO-Tee SUBDIR += p5-IO-TieCombine SUBDIR += p5-IO-Toolkit SUBDIR += p5-IO-Tty SUBDIR += p5-IO-Util SUBDIR += p5-IO-YAML SUBDIR += p5-IOC SUBDIR += p5-IPC-Cache SUBDIR += p5-IPC-Cmd SUBDIR += p5-IPC-DirQueue SUBDIR += p5-IPC-Locker SUBDIR += p5-IPC-MM SUBDIR += p5-IPC-MMA SUBDIR += p5-IPC-Mmap SUBDIR += p5-IPC-Mmap-Share SUBDIR += p5-IPC-Open3-Simple SUBDIR += p5-IPC-PerlSSH SUBDIR += p5-IPC-PubSub SUBDIR += p5-IPC-Run SUBDIR += p5-IPC-Run-SafeHandles SUBDIR += p5-IPC-Run3 SUBDIR += p5-IPC-ShareLite SUBDIR += p5-IPC-Shareable SUBDIR += p5-IPC-SharedCache SUBDIR += p5-IPC-ShellCmd SUBDIR += p5-IPC-Signal SUBDIR += p5-IPC-System-Options SUBDIR += p5-IPC-System-Simple SUBDIR += p5-IRI SUBDIR += p5-Import-Base SUBDIR += p5-Import-Into SUBDIR += p5-Importer SUBDIR += p5-Inline SUBDIR += p5-Inline-ASM SUBDIR += p5-Inline-C SUBDIR += p5-Inline-CPP SUBDIR += p5-Inline-Files SUBDIR += p5-Inline-Filters SUBDIR += p5-Inline-Java SUBDIR += p5-Inline-Python SUBDIR += p5-Inline-TT SUBDIR += p5-Inline-Tcl SUBDIR += p5-InlineX-C2XS SUBDIR += p5-InlineX-CPP2XS SUBDIR += p5-Input-Validator SUBDIR += p5-Ioctl SUBDIR += p5-Iodef-Pb-Simple SUBDIR += p5-Iterator SUBDIR += p5-Iterator-IO SUBDIR += p5-Iterator-Misc SUBDIR += p5-Iterator-Simple SUBDIR += p5-Iterator-Simple-Lookahead SUBDIR += p5-Iterator-Util SUBDIR += p5-JIRA-REST SUBDIR += p5-JQuery SUBDIR += p5-JSON-Hyper SUBDIR += p5-JSON-Parse SUBDIR += p5-JSON-Path SUBDIR += p5-JSON-Pointer SUBDIR += p5-JSON-RPC SUBDIR += p5-JSON-RPC-Common SUBDIR += p5-JSON-RPC-Dispatcher SUBDIR += p5-JSON-Schema SUBDIR += p5-Java SUBDIR += p5-Jonk SUBDIR += p5-Keyword-Declare SUBDIR += p5-Keyword-Pluggable SUBDIR += p5-Keyword-Simple SUBDIR += p5-LV SUBDIR += p5-Language-Expr SUBDIR += p5-Lexical-Alias SUBDIR += p5-Lexical-Import SUBDIR += p5-Lexical-Persistence SUBDIR += p5-Lexical-SealRequireHints SUBDIR += p5-Lexical-Var SUBDIR += p5-Lingua-JA-Fold SUBDIR += p5-Lingua-Translit SUBDIR += p5-List-AllUtils SUBDIR += p5-List-BinarySearch SUBDIR += p5-List-Cycle SUBDIR += p5-List-Flatten SUBDIR += p5-List-Gen SUBDIR += p5-List-Group SUBDIR += p5-List-Objects-Types SUBDIR += p5-List-Objects-WithUtils SUBDIR += p5-List-Pairwise SUBDIR += p5-List-Permutor SUBDIR += p5-List-PowerSet SUBDIR += p5-List-Regexp SUBDIR += p5-List-Rotation-Cycle SUBDIR += p5-List-SomeUtils SUBDIR += p5-List-SomeUtils-XS SUBDIR += p5-List-Uniq SUBDIR += p5-List-UtilsBy SUBDIR += p5-List-UtilsBy-XS SUBDIR += p5-Locale-Maketext SUBDIR += p5-Locale-Maketext-Fuzzy SUBDIR += p5-Locale-Maketext-Gettext SUBDIR += p5-Locale-Maketext-Lexicon SUBDIR += p5-Locale-Maketext-Simple SUBDIR += p5-Locale-Msgfmt SUBDIR += p5-Locale-PGetText SUBDIR += p5-Locale-PO SUBDIR += p5-Locale-XGettext SUBDIR += p5-Locale-gettext SUBDIR += p5-Locale-libintl SUBDIR += p5-Lock-File SUBDIR += p5-LockFile-Simple SUBDIR += p5-Log-Accounting-SVK SUBDIR += p5-Log-Accounting-SVN SUBDIR += p5-Log-Agent SUBDIR += p5-Log-Agent-Logger SUBDIR += p5-Log-Any SUBDIR += p5-Log-Any-Adapter-Dispatch SUBDIR += p5-Log-Any-Adapter-Log4perl SUBDIR += p5-Log-Any-App SUBDIR += p5-Log-Any-IfLOG SUBDIR += p5-Log-Contextual SUBDIR += p5-Log-Defer SUBDIR += p5-Log-Dispatch SUBDIR += p5-Log-Dispatch-Array SUBDIR += p5-Log-Dispatch-ArrayWithLimits SUBDIR += p5-Log-Dispatch-Colorful SUBDIR += p5-Log-Dispatch-Config SUBDIR += p5-Log-Dispatch-Configurator-Any SUBDIR += p5-Log-Dispatch-Configurator-YAML SUBDIR += p5-Log-Dispatch-DBI SUBDIR += p5-Log-Dispatch-Dir SUBDIR += p5-Log-Dispatch-Email-EmailSend SUBDIR += p5-Log-Dispatch-File-Rolling SUBDIR += p5-Log-Dispatch-File-Stamped SUBDIR += p5-Log-Dispatch-FileRotate SUBDIR += p5-Log-Dispatch-FileShared SUBDIR += p5-Log-Dispatch-FileWriteRotate SUBDIR += p5-Log-Dispatch-Perl SUBDIR += p5-Log-Dispatch-Screen-Color SUBDIR += p5-Log-Dispatch-Scribe SUBDIR += p5-Log-Dispatchouli SUBDIR += p5-Log-Dump SUBDIR += p5-Log-Handler SUBDIR += p5-Log-Log4perl SUBDIR += p5-Log-Log4perl-Appender-RabbitMQ SUBDIR += p5-Log-Log4perl-Appender-Socket-UNIX SUBDIR += p5-Log-Log4perl-Layout-JSON SUBDIR += p5-Log-Log4perl-Tiny SUBDIR += p5-Log-Message SUBDIR += p5-Log-Message-Simple SUBDIR += p5-Log-Minimal SUBDIR += p5-Log-Report SUBDIR += p5-Log-Report-Optional SUBDIR += p5-Log-Simple SUBDIR += p5-Log-Trace SUBDIR += p5-Log-TraceMessages SUBDIR += p5-Log-ger SUBDIR += p5-Logfile-Rotate SUBDIR += p5-Long-Jump SUBDIR += p5-Luka SUBDIR += p5-Lvalue SUBDIR += p5-MCE SUBDIR += p5-MCE-Shared SUBDIR += p5-MRO-Compat SUBDIR += p5-MRO-Define SUBDIR += p5-Mac-FileSpec-Unixish SUBDIR += p5-Mac-PropertyList SUBDIR += p5-Make SUBDIR += p5-Media-Type-Simple SUBDIR += p5-Memoize SUBDIR += p5-Memoize-ExpireLRU SUBDIR += p5-Meta-Builder SUBDIR += p5-MetaCPAN-Client SUBDIR += p5-Metabase-Client-Simple SUBDIR += p5-Metabase-Fact SUBDIR += p5-Method-Alias SUBDIR += p5-Method-Signatures SUBDIR += p5-Method-Signatures-Simple SUBDIR += p5-Metrics-Any SUBDIR += p5-Minilla SUBDIR += p5-Minion SUBDIR += p5-Mixin-Event-Dispatch SUBDIR += p5-Mixin-Linewise SUBDIR += p5-Mknod SUBDIR += p5-Mo SUBDIR += p5-Mock-MonkeyPatch SUBDIR += p5-Mock-Quick SUBDIR += p5-Mock-Sub SUBDIR += p5-Module-Build SUBDIR += p5-Module-Build-Convert SUBDIR += p5-Module-Build-Kwalitee SUBDIR += p5-Module-Build-Pluggable SUBDIR += p5-Module-Build-Pluggable-CPANfile SUBDIR += p5-Module-Build-Pluggable-ReadmeMarkdownFromPod SUBDIR += p5-Module-Build-Prereqs-FromCPANfile SUBDIR += p5-Module-Build-Tiny SUBDIR += p5-Module-Build-Using-PkgConfig SUBDIR += p5-Module-Build-WithXSpp SUBDIR += p5-Module-Build-XSUtil SUBDIR += p5-Module-CPANTS-Analyse SUBDIR += p5-Module-CPANfile SUBDIR += p5-Module-CheckDeps SUBDIR += p5-Module-CheckVersion SUBDIR += p5-Module-Collect SUBDIR += p5-Module-Compile SUBDIR += p5-Module-CoreList SUBDIR += p5-Module-Dependency SUBDIR += p5-Module-Depends SUBDIR += p5-Module-Extract SUBDIR += p5-Module-Extract-Use SUBDIR += p5-Module-Extract-VERSION SUBDIR += p5-Module-ExtractUse SUBDIR += p5-Module-Find SUBDIR += p5-Module-Functions SUBDIR += p5-Module-Implementation SUBDIR += p5-Module-Info SUBDIR += p5-Module-Info-File SUBDIR += p5-Module-Inspector SUBDIR += p5-Module-Install SUBDIR += p5-Module-Install-AuthorRequires SUBDIR += p5-Module-Install-AuthorTests SUBDIR += p5-Module-Install-ReadmeFromPod SUBDIR += p5-Module-Install-Repository SUBDIR += p5-Module-Install-Template SUBDIR += p5-Module-Install-TestBase SUBDIR += p5-Module-Install-XSUtil SUBDIR += p5-Module-Installed-Tiny SUBDIR += p5-Module-List SUBDIR += p5-Module-Load SUBDIR += p5-Module-Load-Conditional SUBDIR += p5-Module-Load-Util SUBDIR += p5-Module-Loaded SUBDIR += p5-Module-Loader SUBDIR += p5-Module-Manifest SUBDIR += p5-Module-Math-Depends SUBDIR += p5-Module-Metadata SUBDIR += p5-Module-Path SUBDIR += p5-Module-Path-More SUBDIR += p5-Module-Pluggable SUBDIR += p5-Module-Pluggable-Fast SUBDIR += p5-Module-Pluggable-Ordered SUBDIR += p5-Module-Reader SUBDIR += p5-Module-Recursive-Require SUBDIR += p5-Module-Refresh SUBDIR += p5-Module-Release SUBDIR += p5-Module-Reload SUBDIR += p5-Module-Reload-Sel SUBDIR += p5-Module-Runtime SUBDIR += p5-Module-Runtime-Conflicts SUBDIR += p5-Module-ScanDeps SUBDIR += p5-Module-Setup SUBDIR += p5-Module-Starter SUBDIR += p5-Module-Starter-PBP SUBDIR += p5-Module-Starter-Plugin-SimpleStore SUBDIR += p5-Module-Starter-Plugin-TT2 SUBDIR += p5-Module-Used SUBDIR += p5-Module-Util SUBDIR += p5-Module-Version SUBDIR += p5-Module-Versions SUBDIR += p5-Module-Versions-Report SUBDIR += p5-Mojo-Base-XS SUBDIR += p5-Mojo-Log-Clearable SUBDIR += p5-Mojolicious-Plugin-NYTProf SUBDIR += p5-Moo SUBDIR += p5-MooX-Aliases SUBDIR += p5-MooX-Attribute-ENV SUBDIR += p5-MooX-Cmd SUBDIR += p5-MooX-ConfigFromFile SUBDIR += p5-MooX-File-ConfigDir SUBDIR += p5-MooX-HandlesVia SUBDIR += p5-MooX-Locale-Passthrough SUBDIR += p5-MooX-Options SUBDIR += p5-MooX-Role-Parameterized SUBDIR += p5-MooX-Singleton SUBDIR += p5-MooX-StrictConstructor SUBDIR += p5-MooX-Thunking SUBDIR += p5-MooX-Traits SUBDIR += p5-MooX-TypeTiny SUBDIR += p5-MooX-Types-MooseLike SUBDIR += p5-MooX-Types-MooseLike-Numeric SUBDIR += p5-MooX-late SUBDIR += p5-Moos SUBDIR += p5-Moose SUBDIR += p5-Moose-Autobox SUBDIR += p5-Moose-Policy SUBDIR += p5-Moose-Test SUBDIR += p5-MooseX-Aliases SUBDIR += p5-MooseX-App SUBDIR += p5-MooseX-App-Cmd SUBDIR += p5-MooseX-ArrayRef SUBDIR += p5-MooseX-Async SUBDIR += p5-MooseX-Attribute-Chained SUBDIR += p5-MooseX-Attribute-ENV SUBDIR += p5-MooseX-AttributeHelpers SUBDIR += p5-MooseX-AttributeShortcuts SUBDIR += p5-MooseX-AuthorizedMethods SUBDIR += p5-MooseX-ClassAttribute SUBDIR += p5-MooseX-Clone SUBDIR += p5-MooseX-CompileTime-Traits SUBDIR += p5-MooseX-ConfigFromFile SUBDIR += p5-MooseX-CoverableModifiers SUBDIR += p5-MooseX-Daemonize SUBDIR += p5-MooseX-Declare SUBDIR += p5-MooseX-Emulate-Class-Accessor-Fast SUBDIR += p5-MooseX-Extended SUBDIR += p5-MooseX-FollowPBP SUBDIR += p5-MooseX-Getopt SUBDIR += p5-MooseX-Has-Options SUBDIR += p5-MooseX-Has-Sugar SUBDIR += p5-MooseX-HasDefaults SUBDIR += p5-MooseX-IOC SUBDIR += p5-MooseX-InsideOut SUBDIR += p5-MooseX-LazyRequire SUBDIR += p5-MooseX-Lists SUBDIR += p5-MooseX-Log-Log4perl SUBDIR += p5-MooseX-MarkAsMethods SUBDIR += p5-MooseX-Meta-TypeConstraint-ForceCoercion SUBDIR += p5-MooseX-Meta-TypeConstraint-Mooish SUBDIR += p5-MooseX-MetaDescription SUBDIR += p5-MooseX-Method-Signatures SUBDIR += p5-MooseX-MethodAttributes SUBDIR += p5-MooseX-MultiInitArg SUBDIR += p5-MooseX-MultiMethods SUBDIR += p5-MooseX-MungeHas SUBDIR += p5-MooseX-NonMoose SUBDIR += p5-MooseX-Object-Pluggable SUBDIR += p5-MooseX-OneArgNew SUBDIR += p5-MooseX-POE SUBDIR += p5-MooseX-Params-Validate SUBDIR += p5-MooseX-RelatedClassRoles SUBDIR += p5-MooseX-Role-Loggable SUBDIR += p5-MooseX-Role-Matcher SUBDIR += p5-MooseX-Role-Parameterized SUBDIR += p5-MooseX-Role-Strict SUBDIR += p5-MooseX-Role-WarnOnConflict SUBDIR += p5-MooseX-Runnable SUBDIR += p5-MooseX-SemiAffordanceAccessor SUBDIR += p5-MooseX-SetOnce SUBDIR += p5-MooseX-SimpleConfig SUBDIR += p5-MooseX-Singleton SUBDIR += p5-MooseX-Storage SUBDIR += p5-MooseX-StrictConstructor SUBDIR += p5-MooseX-Test-Role SUBDIR += p5-MooseX-TraitFor-Meta-Class-BetterAnonClassNames SUBDIR += p5-MooseX-Traits SUBDIR += p5-MooseX-Traits-Pluggable SUBDIR += p5-MooseX-TransactionalMethods SUBDIR += p5-MooseX-Types SUBDIR += p5-MooseX-Types-Common SUBDIR += p5-MooseX-Types-DateTime SUBDIR += p5-MooseX-Types-DateTime-ButMaintained SUBDIR += p5-MooseX-Types-DateTime-MoreCoercions SUBDIR += p5-MooseX-Types-DateTime-MySQL SUBDIR += p5-MooseX-Types-DateTimeX SUBDIR += p5-MooseX-Types-ISO8601 SUBDIR += p5-MooseX-Types-JSON SUBDIR += p5-MooseX-Types-LoadableClass SUBDIR += p5-MooseX-Types-Path-Class SUBDIR += p5-MooseX-Types-Path-Tiny SUBDIR += p5-MooseX-Types-Perl SUBDIR += p5-MooseX-Types-PortNumber SUBDIR += p5-MooseX-Types-Set-Object SUBDIR += p5-MooseX-Types-Signal SUBDIR += p5-MooseX-Types-Stringlike SUBDIR += p5-MooseX-Types-Structured SUBDIR += p5-MooseX-Types-URI SUBDIR += p5-MooseX-Types-VariantTable SUBDIR += p5-MooseX-Util SUBDIR += p5-Mouse SUBDIR += p5-MouseX-App-Cmd SUBDIR += p5-MouseX-AttributeHelpers SUBDIR += p5-MouseX-ConfigFromFile SUBDIR += p5-MouseX-Foreign SUBDIR += p5-MouseX-Getopt SUBDIR += p5-MouseX-NativeTraits SUBDIR += p5-MouseX-StrictConstructor SUBDIR += p5-MouseX-Traits SUBDIR += p5-MouseX-Types SUBDIR += p5-MouseX-Types-Path-Class SUBDIR += p5-Multiplex-CMD SUBDIR += p5-NEXT SUBDIR += p5-Net-DBus SUBDIR += p5-No-Worries SUBDIR += p5-Number-Bytes-Human SUBDIR += p5-Number-Tolerant SUBDIR += p5-OLE-Storage_Lite SUBDIR += p5-OOTools SUBDIR += p5-Object-Accessor SUBDIR += p5-Object-Array SUBDIR += p5-Object-Authority SUBDIR += p5-Object-Container SUBDIR += p5-Object-Declare SUBDIR += p5-Object-Destroyer SUBDIR += p5-Object-Enum SUBDIR += p5-Object-Event SUBDIR += p5-Object-Import SUBDIR += p5-Object-InsideOut SUBDIR += p5-Object-MultiType SUBDIR += p5-Object-Pad SUBDIR += p5-Object-Pluggable SUBDIR += p5-Object-Realize-Later SUBDIR += p5-Object-Role SUBDIR += p5-Object-Signature SUBDIR += p5-Object-Simple SUBDIR += p5-Object-Tiny SUBDIR += p5-Object-Tiny-Lvalue SUBDIR += p5-Object-Tiny-RW SUBDIR += p5-Olson-Abbreviations SUBDIR += p5-Opcodes SUBDIR += p5-OrePAN2 SUBDIR += p5-Ouch SUBDIR += p5-PAR SUBDIR += p5-PAR-Dist SUBDIR += p5-PAR-Packer SUBDIR += p5-PCSC-Card SUBDIR += p5-PHP-Serialization SUBDIR += p5-POE SUBDIR += p5-POE-API-Hooks SUBDIR += p5-POE-API-Peek SUBDIR += p5-POE-Component-Child SUBDIR += p5-POE-Component-Cron SUBDIR += p5-POE-Component-Daemon SUBDIR += p5-POE-Component-DebugShell SUBDIR += p5-POE-Component-DirWatch SUBDIR += p5-POE-Component-Hailo SUBDIR += p5-POE-Component-IKC SUBDIR += p5-POE-Component-JobQueue SUBDIR += p5-POE-Component-Logger SUBDIR += p5-POE-Component-Pluggable SUBDIR += p5-POE-Component-RSS SUBDIR += p5-POE-Component-RSSAggregator SUBDIR += p5-POE-Component-Schedule SUBDIR += p5-POE-Component-Server-XMLRPC SUBDIR += p5-POE-Component-Syndicator SUBDIR += p5-POE-Component-TSTP SUBDIR += p5-POE-Devel-Profiler SUBDIR += p5-POE-Loop-AnyEvent SUBDIR += p5-POE-Loop-Glib SUBDIR += p5-POE-Loop-Tk SUBDIR += p5-POE-Quickie SUBDIR += p5-POE-Session-MultiDispatch SUBDIR += p5-POE-Stage SUBDIR += p5-POE-Test-Loops SUBDIR += p5-POE-XS-Loop-Poll SUBDIR += p5-POE-XS-Queue-Array SUBDIR += p5-POEx-Role-SessionInstantiation SUBDIR += p5-POEx-Role-Streaming SUBDIR += p5-POEx-Types SUBDIR += p5-POSIX-strftime-Compiler SUBDIR += p5-POSIX-strptime SUBDIR += p5-PPR SUBDIR += p5-PPerl SUBDIR += p5-PV SUBDIR += p5-Package-Constants SUBDIR += p5-Package-DeprecationManager SUBDIR += p5-Package-Generator SUBDIR += p5-Package-MoreUtil SUBDIR += p5-Package-Stash SUBDIR += p5-Package-Stash-XS SUBDIR += p5-Package-Util-Lite SUBDIR += p5-Package-Variant SUBDIR += p5-PadWalker SUBDIR += p5-Parallel-Async SUBDIR += p5-Parallel-Fork-BossWorker SUBDIR += p5-Parallel-ForkManager SUBDIR += p5-Parallel-Iterator SUBDIR += p5-Parallel-Prefork SUBDIR += p5-Parallel-Scoreboard SUBDIR += p5-Params-CallbackRequest SUBDIR += p5-Params-Check SUBDIR += p5-Params-Classify SUBDIR += p5-Params-Coerce SUBDIR += p5-Params-Util SUBDIR += p5-Params-Validate SUBDIR += p5-Params-Validate-Dependencies SUBDIR += p5-Params-ValidationCompiler SUBDIR += p5-Paranoid SUBDIR += p5-Paranoid-Log-Email SUBDIR += p5-Paranoid-Log-Syslog SUBDIR += p5-Parse-CPAN-Packages SUBDIR += p5-Parse-CPAN-Packages-Fast SUBDIR += p5-Parse-Distname SUBDIR += p5-Parse-ErrorString-Perl SUBDIR += p5-Parse-ExuberantCTags SUBDIR += p5-Parse-LocalDistribution SUBDIR += p5-Parse-Method-Signatures SUBDIR += p5-Parse-PMFile SUBDIR += p5-Parse-PerlConfig SUBDIR += p5-Parse-PlainConfig SUBDIR += p5-Parse-RecDescent SUBDIR += p5-Parse-VarName SUBDIR += p5-Parse-Win32Registry SUBDIR += p5-Parse-Yapp SUBDIR += p5-ParseLex SUBDIR += p5-ParseTemplate SUBDIR += p5-Parser-MGC SUBDIR += p5-PatchReader SUBDIR += p5-Path-Abstract SUBDIR += p5-Path-Class SUBDIR += p5-Path-Class-File-Lockable SUBDIR += p5-Path-Dispatcher SUBDIR += p5-Path-Dispatcher-Declarative SUBDIR += p5-Path-Extended SUBDIR += p5-Path-FindDev SUBDIR += p5-Path-IsDev SUBDIR += p5-Path-Iterator-Rule SUBDIR += p5-Path-Resource SUBDIR += p5-Path-Tiny SUBDIR += p5-PathTools SUBDIR += p5-Paws SUBDIR += p5-Pegex SUBDIR += p5-Perl-Critic-Deprecated SUBDIR += p5-Perl-Metrics-Lite SUBDIR += p5-Perl-Metrics-Simple SUBDIR += p5-Perl-OSType SUBDIR += p5-Perl-PrereqScanner SUBDIR += p5-Perl-PrereqScanner-Lite SUBDIR += p5-Perl-PrereqScanner-NotQuiteLite SUBDIR += p5-Perl-Tidy SUBDIR += p5-Perl-Unsafe-Signals SUBDIR += p5-Perl-Version SUBDIR += p5-Perl-osnames SUBDIR += p5-Perl4-CoreLibs SUBDIR += p5-Perl6-Builtins SUBDIR += p5-Perl6-Export SUBDIR += p5-Perl6-Export-Attrs SUBDIR += p5-Perl6-Form SUBDIR += p5-Perl6-Junction SUBDIR += p5-Perl6-Rules SUBDIR += p5-Perl6-Say SUBDIR += p5-Perl6-Slurp SUBDIR += p5-PerlIO-Layers SUBDIR += p5-PerlIO-Util SUBDIR += p5-PerlIO-eol SUBDIR += p5-PerlIO-locale SUBDIR += p5-PerlIO-utf8_strict SUBDIR += p5-PerlIO-via-MD5 SUBDIR += p5-PerlIO-via-Timeout SUBDIR += p5-PerlIO-via-dynamic SUBDIR += p5-PerlIO-via-symlink SUBDIR += p5-PerlX-Maybe SUBDIR += p5-PerlX-Maybe-XS SUBDIR += p5-Pid-File-Flock SUBDIR += p5-Pipeline SUBDIR += p5-Pithub SUBDIR += p5-PkgConfig SUBDIR += p5-PkgConfig-LibPkgConf SUBDIR += p5-Pod-Coverage SUBDIR += p5-Pod-Coverage-Moose SUBDIR += p5-Pod-Coverage-TrustPod SUBDIR += p5-Pod-Tests SUBDIR += p5-Pod-Usage SUBDIR += p5-Pragmatic SUBDIR += p5-Proc-BackOff SUBDIR += p5-Proc-Background SUBDIR += p5-Proc-ChildError SUBDIR += p5-Proc-Daemon SUBDIR += p5-Proc-FastSpawn SUBDIR += p5-Proc-Find-Parents SUBDIR += p5-Proc-Fork SUBDIR += p5-Proc-Guard SUBDIR += p5-Proc-PID-File SUBDIR += p5-Proc-Pidfile SUBDIR += p5-Proc-ProcessTable SUBDIR += p5-Proc-Queue SUBDIR += p5-Proc-Reliable SUBDIR += p5-Proc-SafeExec SUBDIR += p5-Proc-Simple SUBDIR += p5-Proc-Wait3 SUBDIR += p5-Proc-WaitStat SUBDIR += p5-Process-Status SUBDIR += p5-Progress-Any SUBDIR += p5-Project-Gantt SUBDIR += p5-Project-Libs SUBDIR += p5-Pthread-GetThreadId SUBDIR += p5-Qudo SUBDIR += p5-RPSL-Parser SUBDIR += p5-RRDTool-OO SUBDIR += p5-Rcs SUBDIR += p5-Rcs-Agent SUBDIR += p5-Readonly SUBDIR += p5-Readonly-XS SUBDIR += p5-ReadonlyX SUBDIR += p5-Reaper SUBDIR += p5-Ref-Util SUBDIR += p5-Ref-Util-XS SUBDIR += p5-Reflex SUBDIR += p5-Regexp-Assemble SUBDIR += p5-Regexp-Assemble-Compressed SUBDIR += p5-Regexp-Bind SUBDIR += p5-Regexp-Compare SUBDIR += p5-Regexp-Grammars SUBDIR += p5-Regexp-Lexer SUBDIR += p5-Regexp-Pattern-Perl SUBDIR += p5-Regexp-RegGrp SUBDIR += p5-Regexp-Shellish SUBDIR += p5-Regexp-Stringify SUBDIR += p5-Regexp-Subst-Parallel SUBDIR += p5-Regexp-Trie SUBDIR += p5-Religion SUBDIR += p5-Reply SUBDIR += p5-ResourcePool SUBDIR += p5-Resources SUBDIR += p5-Return-MultiLevel SUBDIR += p5-Return-Type SUBDIR += p5-Return-Value SUBDIR += p5-Rinci SUBDIR += p5-Role-Basic SUBDIR += p5-Role-HasMessage SUBDIR += p5-Role-Hooks SUBDIR += p5-Role-Identifiable SUBDIR += p5-Role-Tiny SUBDIR += p5-Rose-DateTime SUBDIR += p5-Rose-Object SUBDIR += p5-Router-R3 SUBDIR += p5-Routes-Tiny SUBDIR += p5-RunApp SUBDIR += p5-SDL SUBDIR += p5-SNMP-Persist SUBDIR += p5-SOAP-WSDL SUBDIR += p5-SPOPS SUBDIR += p5-SSN-Validate SUBDIR += p5-SUPER SUBDIR += p5-SVN-ACL SUBDIR += p5-SVN-Access SUBDIR += p5-SVN-Agent SUBDIR += p5-SVN-Dump SUBDIR += p5-SVN-Dumpfile SUBDIR += p5-SVN-Hook SUBDIR += p5-SVN-Hooks SUBDIR += p5-SVN-Log SUBDIR += p5-SVN-Look SUBDIR += p5-SVN-Mirror SUBDIR += p5-SVN-Notify SUBDIR += p5-SVN-Notify-Config SUBDIR += p5-SVN-Notify-Filter-AuthZMail SUBDIR += p5-SVN-Notify-Filter-EmailFlatFileDB SUBDIR += p5-SVN-Notify-Filter-Markdown SUBDIR += p5-SVN-Notify-Filter-Watchers SUBDIR += p5-SVN-Notify-Mirror SUBDIR += p5-SVN-Notify-Snapshot SUBDIR += p5-SVN-S4 SUBDIR += p5-SVN-Simple SUBDIR += p5-SVN-Statistics SUBDIR += p5-SVN-Web SUBDIR += p5-Safe-Isa SUBDIR += p5-Sah SUBDIR += p5-Scalar-Defer SUBDIR += p5-Scalar-Does SUBDIR += p5-Scalar-Listify SUBDIR += p5-Scalar-String SUBDIR += p5-Scalar-Util-LooksLikeNumber SUBDIR += p5-Scalar-Util-Numeric SUBDIR += p5-Scalar-Util-Numeric-PP SUBDIR += p5-Scope-Container SUBDIR += p5-Scope-Guard SUBDIR += p5-Scope-Upper SUBDIR += p5-Script-isAperlScript SUBDIR += p5-Sentinel SUBDIR += p5-Sepia SUBDIR += p5-Set-Array SUBDIR += p5-Set-ConsistentHash SUBDIR += p5-Set-Crontab SUBDIR += p5-Set-CrossProduct SUBDIR += p5-Set-Infinite SUBDIR += p5-Set-NestedGroups SUBDIR += p5-Set-Object SUBDIR += p5-Set-Scalar SUBDIR += p5-Set-Tiny SUBDIR += p5-Shell-Base SUBDIR += p5-Shell-Config-Generate SUBDIR += p5-Shell-EnvImporter SUBDIR += p5-Shell-GetEnv SUBDIR += p5-Shell-Guess SUBDIR += p5-Shell-Parser SUBDIR += p5-Shell-Source SUBDIR += p5-ShipIt SUBDIR += p5-ShipIt-Step-Manifest SUBDIR += p5-Signal-Mask SUBDIR += p5-Slurp SUBDIR += p5-Smart-Comments SUBDIR += p5-Sort-Array SUBDIR += p5-Sort-ArrayOfArrays SUBDIR += p5-Sort-Key SUBDIR += p5-Sort-Key-DateTime SUBDIR += p5-Sort-Key-Top SUBDIR += p5-Sort-Maker SUBDIR += p5-Sort-Sub SUBDIR += p5-Sort-Tree SUBDIR += p5-Sort-Versions SUBDIR += p5-Specio SUBDIR += p5-Spiffy SUBDIR += p5-Spoon SUBDIR += p5-Storable SUBDIR += p5-Stream SUBDIR += p5-Stream-Buffered SUBDIR += p5-Stream-Reader SUBDIR += p5-String-Approx SUBDIR += p5-String-CRC32 SUBDIR += p5-String-Checker SUBDIR += p5-String-Diff SUBDIR += p5-String-Dump SUBDIR += p5-String-Ediff SUBDIR += p5-String-Errf SUBDIR += p5-String-Formatter SUBDIR += p5-String-Interpolate-Named SUBDIR += p5-String-KeyboardDistance SUBDIR += p5-String-LRC SUBDIR += p5-String-Parity SUBDIR += p5-String-Random SUBDIR += p5-String-RexxParse SUBDIR += p5-String-Similarity SUBDIR += p5-String-TT SUBDIR += p5-Struct-Dumb SUBDIR += p5-Sub-Alias SUBDIR += p5-Sub-Current SUBDIR += p5-Sub-Delete SUBDIR += p5-Sub-Exporter SUBDIR += p5-Sub-Exporter-ForMethods SUBDIR += p5-Sub-Exporter-GlobExporter SUBDIR += p5-Sub-Exporter-Lexical SUBDIR += p5-Sub-Exporter-Progressive SUBDIR += p5-Sub-HandlesVia SUBDIR += p5-Sub-Identify SUBDIR += p5-Sub-Infix SUBDIR += p5-Sub-Info SUBDIR += p5-Sub-Install SUBDIR += p5-Sub-Installer SUBDIR += p5-Sub-Multi SUBDIR += p5-Sub-Name SUBDIR += p5-Sub-Override SUBDIR += p5-Sub-Prototype SUBDIR += p5-Sub-Quote SUBDIR += p5-Sub-Signatures SUBDIR += p5-Sub-Uplevel SUBDIR += p5-Sub-WrapPackages SUBDIR += p5-Symbol-Get SUBDIR += p5-Symbol-Global-Name SUBDIR += p5-Symbol-Util SUBDIR += p5-Syntax-Keyword-Dynamically SUBDIR += p5-Syntax-Keyword-Gather SUBDIR += p5-Syntax-Keyword-Junction SUBDIR += p5-Syntax-Keyword-Match SUBDIR += p5-Syntax-Keyword-Try SUBDIR += p5-Sys-CPU SUBDIR += p5-Sys-Info SUBDIR += p5-Sys-Info-Base SUBDIR += p5-Sys-Info-Driver-BSD SUBDIR += p5-Sys-MemInfo SUBDIR += p5-Sys-Mmap SUBDIR += p5-Sys-RunAlone SUBDIR += p5-Sys-RunAlways SUBDIR += p5-Sys-Sendfile SUBDIR += p5-Sys-Sendfile-FreeBSD SUBDIR += p5-Sys-Sig SUBDIR += p5-Sys-SigAction SUBDIR += p5-Sys-Syscall SUBDIR += p5-Sys-Trace SUBDIR += p5-Sys-Virt SUBDIR += p5-System-Command SUBDIR += p5-System-Info SUBDIR += p5-System-Sub SUBDIR += p5-System2 SUBDIR += p5-TAP-Formatter-JUnit SUBDIR += p5-TAP-Harness-JUnit SUBDIR += p5-TAP-SimpleOutput SUBDIR += p5-Taint-Runtime SUBDIR += p5-Taint-Util SUBDIR += p5-Task-Tiny SUBDIR += p5-Task-Weaken SUBDIR += p5-Tee SUBDIR += p5-Template-Provider-Encode SUBDIR += p5-Term-ANSIColor SUBDIR += p5-Term-ANSIScreen SUBDIR += p5-Term-Animation SUBDIR += p5-Term-App-Roles SUBDIR += p5-Term-App-Util-Color SUBDIR += p5-Term-App-Util-Interactive SUBDIR += p5-Term-App-Util-Size SUBDIR += p5-Term-CallEditor SUBDIR += p5-Term-Choose SUBDIR += p5-Term-Choose-Util SUBDIR += p5-Term-Clui SUBDIR += p5-Term-Detect-Software SUBDIR += p5-Term-EditLine SUBDIR += p5-Term-Encoding SUBDIR += p5-Term-Form SUBDIR += p5-Term-Menus SUBDIR += p5-Term-ProgressBar SUBDIR += p5-Term-ProgressBar-Quiet SUBDIR += p5-Term-ProgressBar-Simple SUBDIR += p5-Term-Prompt SUBDIR += p5-Term-Query SUBDIR += p5-Term-RawInput SUBDIR += p5-Term-ReadKey SUBDIR += p5-Term-ReadLine SUBDIR += p5-Term-ReadLine-Gnu SUBDIR += p5-Term-ReadLine-Perl SUBDIR += p5-Term-ReadLine-TTYtter SUBDIR += p5-Term-ReadLine-Zoid SUBDIR += p5-Term-ReadPassword SUBDIR += p5-Term-Screen SUBDIR += p5-Term-ScreenColor SUBDIR += p5-Term-Shell SUBDIR += p5-Term-Size SUBDIR += p5-Term-Size-Any SUBDIR += p5-Term-Size-Perl SUBDIR += p5-Term-Sk SUBDIR += p5-Term-Table SUBDIR += p5-Term-TablePrint SUBDIR += p5-Term-TermKey SUBDIR += p5-Term-Title SUBDIR += p5-Term-UI SUBDIR += p5-Term-VT102 SUBDIR += p5-Term-VT102-Boundless SUBDIR += p5-Term-Visual SUBDIR += p5-Test-API SUBDIR += p5-Test-Able SUBDIR += p5-Test-Able-Runner SUBDIR += p5-Test-Aggregate SUBDIR += p5-Test-Archive-Libarchive SUBDIR += p5-Test-Assertions SUBDIR += p5-Test-Auto SUBDIR += p5-Test-Base SUBDIR += p5-Test-Benchmark SUBDIR += p5-Test-BinaryData SUBDIR += p5-Test-Bits SUBDIR += p5-Test-CPAN-Meta SUBDIR += p5-Test-CPAN-Meta-YAML SUBDIR += p5-Test-CheckDeps SUBDIR += p5-Test-CheckManifest SUBDIR += p5-Test-Class SUBDIR += p5-Test-Class-Most SUBDIR += p5-Test-ClassAPI SUBDIR += p5-Test-Classy SUBDIR += p5-Test-CleanNamespaces SUBDIR += p5-Test-Cmd SUBDIR += p5-Test-Command SUBDIR += p5-Test-Command-Simple SUBDIR += p5-Test-Compile SUBDIR += p5-Test-DBIC-ExpectedQueries SUBDIR += p5-Test-DBIx-Class SUBDIR += p5-Test-Data SUBDIR += p5-Test-Debugger SUBDIR += p5-Test-Declare SUBDIR += p5-Test-Deep SUBDIR += p5-Test-Deep-UnorderedPairs SUBDIR += p5-Test-Dependencies SUBDIR += p5-Test-DependentModules SUBDIR += p5-Test-DiagINC SUBDIR += p5-Test-Differences SUBDIR += p5-Test-Distribution SUBDIR += p5-Test-EOL SUBDIR += p5-Test-Exception SUBDIR += p5-Test-Exit SUBDIR += p5-Test-Expect SUBDIR += p5-Test-ExpectAndCheck SUBDIR += p5-Test-FailWarnings SUBDIR += p5-Test-Fake-HTTPD SUBDIR += p5-Test-Fatal SUBDIR += p5-Test-File SUBDIR += p5-Test-File-Contents SUBDIR += p5-Test-File-ShareDir SUBDIR += p5-Test-Filename SUBDIR += p5-Test-Fixme SUBDIR += p5-Test-Fixture-DBIC-Schema SUBDIR += p5-Test-Future-IO-Impl SUBDIR += p5-Test-Group SUBDIR += p5-Test-HTML-Tidy SUBDIR += p5-Test-Harness SUBDIR += p5-Test-Harness-Straps SUBDIR += p5-Test-HasVersion SUBDIR += p5-Test-HexDifferences SUBDIR += p5-Test-HexString SUBDIR += p5-Test-Identity SUBDIR += p5-Test-If SUBDIR += p5-Test-InDistDir SUBDIR += p5-Test-Inline SUBDIR += p5-Test-Inter SUBDIR += p5-Test-JSON SUBDIR += p5-Test-Kwalitee SUBDIR += p5-Test-Lazy SUBDIR += p5-Test-LeakTrace SUBDIR += p5-Test-LectroTest SUBDIR += p5-Test-Lib SUBDIR += p5-Test-Lives SUBDIR += p5-Test-LoadAllModules SUBDIR += p5-Test-Log-Log4perl SUBDIR += p5-Test-Log4perl SUBDIR += p5-Test-LongString SUBDIR += p5-Test-Manifest SUBDIR += p5-Test-ManyParams SUBDIR += p5-Test-Memory-Cycle SUBDIR += p5-Test-Metrics-Any SUBDIR += p5-Test-Mini SUBDIR += p5-Test-Mini-Unit SUBDIR += p5-Test-Mock-Guard SUBDIR += p5-Test-Mock-LWP SUBDIR += p5-Test-Mock-LWP-Dispatch SUBDIR += p5-Test-Mock-One SUBDIR += p5-Test-Mock-Redis SUBDIR += p5-Test-MockDateTime SUBDIR += p5-Test-MockModule SUBDIR += p5-Test-MockObject SUBDIR += p5-Test-MockRandom SUBDIR += p5-Test-MockTime SUBDIR += p5-Test-MockTime-HiRes SUBDIR += p5-Test-Modern SUBDIR += p5-Test-Module-Used SUBDIR += p5-Test-Moose-More SUBDIR += p5-Test-More-UTF8 SUBDIR += p5-Test-Most SUBDIR += p5-Test-Name-FromLine SUBDIR += p5-Test-Needs SUBDIR += p5-Test-Net-LDAP SUBDIR += p5-Test-Net-RabbitMQ SUBDIR += p5-Test-NoTabs SUBDIR += p5-Test-NoWarnings SUBDIR += p5-Test-Number-Delta SUBDIR += p5-Test-Object SUBDIR += p5-Test-OpenLDAP SUBDIR += p5-Test-Output SUBDIR += p5-Test-POE-Client-TCP SUBDIR += p5-Test-POE-Server-TCP SUBDIR += p5-Test-Parser SUBDIR += p5-Test-PerlTidy SUBDIR += p5-Test-Pod SUBDIR += p5-Test-Pod-Coverage SUBDIR += p5-Test-Pod-Coverage-Permissive SUBDIR += p5-Test-Portability-Files SUBDIR += p5-Test-Prereq SUBDIR += p5-Test-RandomResults SUBDIR += p5-Test-Refcount SUBDIR += p5-Test-Reporter SUBDIR += p5-Test-Reporter-Transport-Metabase SUBDIR += p5-Test-Requires SUBDIR += p5-Test-Requires-Git SUBDIR += p5-Test-RequiresInternet SUBDIR += p5-Test-Roo SUBDIR += p5-Test-Script SUBDIR += p5-Test-Script-Run SUBDIR += p5-Test-SharedFork SUBDIR += p5-Test-Signature SUBDIR += p5-Test-Simple SUBDIR += p5-Test-Singleton SUBDIR += p5-Test-Snapshot SUBDIR += p5-Test-Spec SUBDIR += p5-Test-Spelling SUBDIR += p5-Test-Strict SUBDIR += p5-Test-SubCalls SUBDIR += p5-Test-Synopsis SUBDIR += p5-Test-Sys-Info SUBDIR += p5-Test-TAP-HTMLMatrix SUBDIR += p5-Test-TAP-Model SUBDIR += p5-Test-TCP SUBDIR += p5-Test-TableDriven SUBDIR += p5-Test-Taint SUBDIR += p5-Test-TempDir-Tiny SUBDIR += p5-Test-Time SUBDIR += p5-Test-Timer SUBDIR += p5-Test-TinyMocker SUBDIR += p5-Test-TrailingSpace SUBDIR += p5-Test-Trap SUBDIR += p5-Test-UNIXSock SUBDIR += p5-Test-Unit SUBDIR += p5-Test-UseAllModules SUBDIR += p5-Test-Version SUBDIR += p5-Test-WWW-Declare SUBDIR += p5-Test-WWW-Mechanize SUBDIR += p5-Test-WWW-Mechanize-CGI SUBDIR += p5-Test-WWW-Mechanize-CGIApp SUBDIR += p5-Test-WWW-Mechanize-Catalyst SUBDIR += p5-Test-WWW-Mechanize-PSGI SUBDIR += p5-Test-WWW-Selenium SUBDIR += p5-Test-Warn SUBDIR += p5-Test-Warnings SUBDIR += p5-Test-Weaken SUBDIR += p5-Test-Without-Module SUBDIR += p5-Test-XML SUBDIR += p5-Test-XML-Valid SUBDIR += p5-Test-YAML SUBDIR += p5-Test-YAML-Meta SUBDIR += p5-Test-YAML-Valid SUBDIR += p5-Test-utf8 SUBDIR += p5-Test2-Harness SUBDIR += p5-Test2-Harness-UI SUBDIR += p5-Test2-Plugin-Cover SUBDIR += p5-Test2-Plugin-DBIProfile SUBDIR += p5-Test2-Plugin-IOEvents SUBDIR += p5-Test2-Plugin-MemUsage SUBDIR += p5-Test2-Plugin-NoWarnings SUBDIR += p5-Test2-Plugin-UUID SUBDIR += p5-Test2-Tools-Explain SUBDIR += p5-Test2-Tools-FFI SUBDIR += p5-Test2-Tools-LoadModule SUBDIR += p5-Test2-Tools-MemoryCycle SUBDIR += p5-Text-Levenshtein SUBDIR += p5-Text-Levenshtein-Damerau SUBDIR += p5-Text-Levenshtein-Damerau-XS SUBDIR += p5-Text-LevenshteinXS SUBDIR += p5-Text-Outdent SUBDIR += p5-Text-vFile-asData SUBDIR += p5-TheSchwartz SUBDIR += p5-TheSchwartz-Simple SUBDIR += p5-TheSchwartz-Worker-SendEmail SUBDIR += p5-Thread-Apartment SUBDIR += p5-Thread-Cancel SUBDIR += p5-Thread-Pool-Simple SUBDIR += p5-Thread-Queue SUBDIR += p5-Thread-Queue-Duplex SUBDIR += p5-Thread-Suspend SUBDIR += p5-Thrift SUBDIR += p5-Thrift-XS SUBDIR += p5-Throwable SUBDIR += p5-Tickit SUBDIR += p5-Tickit-Widget-Table SUBDIR += p5-Tickit-Widgets SUBDIR += p5-Tie-Array-Pack SUBDIR += p5-Tie-Array-Sorted SUBDIR += p5-Tie-CPHash SUBDIR += p5-Tie-Cache SUBDIR += p5-Tie-DB_File-SplitHash SUBDIR += p5-Tie-DB_FileLock SUBDIR += p5-Tie-File SUBDIR += p5-Tie-File-AsHash SUBDIR += p5-Tie-FileLRUCache SUBDIR += p5-Tie-Function SUBDIR += p5-Tie-Hash-Indexed SUBDIR += p5-Tie-Hash-MultiValue SUBDIR += p5-Tie-Hash-Regex SUBDIR += p5-Tie-Hash-Sorted SUBDIR += p5-Tie-Hash-TwoWay SUBDIR += p5-Tie-IxHash SUBDIR += p5-Tie-LLHash SUBDIR += p5-Tie-RefHash SUBDIR += p5-Tie-RefHash-Weak SUBDIR += p5-Tie-RegexpHash SUBDIR += p5-Tie-Restore SUBDIR += p5-Tie-ShareLite SUBDIR += p5-Tie-Simple SUBDIR += p5-Tie-Sub SUBDIR += p5-Tie-ToObject SUBDIR += p5-Tie-Util SUBDIR += p5-Tie-iCal SUBDIR += p5-Time-Clock SUBDIR += p5-Time-Crontab SUBDIR += p5-Time-Duration SUBDIR += p5-Time-Duration-Parse SUBDIR += p5-Time-Duration-Parse-AsHash SUBDIR += p5-Time-Elapsed SUBDIR += p5-Time-Format SUBDIR += p5-Time-HiRes SUBDIR += p5-Time-Interval SUBDIR += p5-Time-Local SUBDIR += p5-Time-Mock SUBDIR += p5-Time-Moment SUBDIR += p5-Time-Moment-Role-TimeZone SUBDIR += p5-Time-Object SUBDIR += p5-Time-Out SUBDIR += p5-Time-ParseDate SUBDIR += p5-Time-Period SUBDIR += p5-Time-Piece SUBDIR += p5-Time-Piece-Range SUBDIR += p5-Time-Progress SUBDIR += p5-Time-Stopwatch SUBDIR += p5-Time-Warp SUBDIR += p5-Time-modules SUBDIR += p5-Time-timegm SUBDIR += p5-TimeDate SUBDIR += p5-ToolSet SUBDIR += p5-TraceFuncs SUBDIR += p5-Tree-Binary SUBDIR += p5-Tree-Binary-Dictionary SUBDIR += p5-Tree-DAG_Node SUBDIR += p5-Tree-Node SUBDIR += p5-Tree-Parser SUBDIR += p5-Tree-R SUBDIR += p5-Tree-RedBlack SUBDIR += p5-Tree-Simple SUBDIR += p5-Tree-Simple-View SUBDIR += p5-Tree-Simple-VisitorFactory SUBDIR += p5-Tree-Trie SUBDIR += p5-Type-Tiny SUBDIR += p5-Type-Tiny-Signatures SUBDIR += p5-Type-Tiny-XS SUBDIR += p5-Types-Core SUBDIR += p5-Types-Path-Tiny SUBDIR += p5-Types-Self SUBDIR += p5-Types-Serialiser SUBDIR += p5-Types-URI SUBDIR += p5-Types-UUID SUBDIR += p5-UDCode SUBDIR += p5-UI-Dialog SUBDIR += p5-UNIVERSAL-can SUBDIR += p5-UNIVERSAL-isa SUBDIR += p5-UNIVERSAL-moniker SUBDIR += p5-UNIVERSAL-ref SUBDIR += p5-UNIVERSAL-require SUBDIR += p5-UNIVERSAL-which SUBDIR += p5-UUID SUBDIR += p5-UUID-Random SUBDIR += p5-UUID-Random-Patch-UseMRS SUBDIR += p5-UUID-Tiny SUBDIR += p5-UUID-URandom SUBDIR += p5-Uniq SUBDIR += p5-Unix-Groups SUBDIR += p5-Unix-Groups-FFI SUBDIR += p5-Unix-Statgrab SUBDIR += p5-Unix-Uptime SUBDIR += p5-User-Identity SUBDIR += p5-Util-Any SUBDIR += p5-VCP-Dest-svk SUBDIR += p5-VCP-Source-cvsbk SUBDIR += p5-VCP-autrijus SUBDIR += p5-VCS SUBDIR += p5-VCS-CVS SUBDIR += p5-VCS-Lite SUBDIR += p5-Validation-Class SUBDIR += p5-Variable-Disposition SUBDIR += p5-Variable-Eject SUBDIR += p5-Variable-Magic SUBDIR += p5-Venus SUBDIR += p5-Want SUBDIR += p5-WeakRef SUBDIR += p5-Workflow SUBDIR += p5-X-Tiny SUBDIR += p5-XML-Compile-Tester SUBDIR += p5-XML-Pastor SUBDIR += p5-XS-Object-Magic SUBDIR += p5-XS-Parse-Keyword SUBDIR += p5-XS-Parse-Sublike SUBDIR += p5-XSLoader SUBDIR += p5-XXX SUBDIR += p5-Xporter SUBDIR += p5-YAML-AppConfig SUBDIR += p5-Yada-Yada-Yada SUBDIR += p5-ZML SUBDIR += p5-accessors SUBDIR += p5-accessors-fast SUBDIR += p5-alias-module SUBDIR += p5-aliased SUBDIR += p5-asa SUBDIR += p5-autobox SUBDIR += p5-autobox-Core SUBDIR += p5-autobox-Transform SUBDIR += p5-autodie SUBDIR += p5-autovivification SUBDIR += p5-bareword-filehandles SUBDIR += p5-boolean SUBDIR += p5-capitalization SUBDIR += p5-carton SUBDIR += p5-common-sense SUBDIR += p5-constant SUBDIR += p5-constant-boolean SUBDIR += p5-constant-def SUBDIR += p5-constant-defer SUBDIR += p5-constant-lexical SUBDIR += p5-cpan-listchanges SUBDIR += p5-curry SUBDIR += p5-enum SUBDIR += p5-ex-lib SUBDIR += p5-experimental SUBDIR += p5-forks SUBDIR += p5-github_creator SUBDIR += p5-goto-file SUBDIR += p5-iCal-Parser SUBDIR += p5-indirect SUBDIR += p5-interface SUBDIR += p5-latest SUBDIR += p5-lexical-underscore SUBDIR += p5-lib-abs SUBDIR += p5-lib-filter SUBDIR += p5-libalarm SUBDIR += p5-libxml-enno SUBDIR += p5-local-lib SUBDIR += p5-match-simple SUBDIR += p5-match-simple-XS SUBDIR += p5-mem SUBDIR += p5-meta SUBDIR += p5-mixin SUBDIR += p5-mocked SUBDIR += p5-multidimensional SUBDIR += p5-namespace-autoclean SUBDIR += p5-namespace-clean SUBDIR += p5-namespace-clean-xs SUBDIR += p5-namespace-sweep SUBDIR += p5-orz SUBDIR += p5-parent SUBDIR += p5-pip SUBDIR += p5-prefork SUBDIR += p5-relative SUBDIR += p5-routines SUBDIR += p5-self SUBDIR += p5-self-init SUBDIR += p5-strictures SUBDIR += p5-subatom SUBDIR += p5-subroutines SUBDIR += p5-subversion SUBDIR += p5-superclass SUBDIR += p5-syntax SUBDIR += p5-threads SUBDIR += p5-threads-shared SUBDIR += p5-true SUBDIR += p5-uni-perl SUBDIR += p5-version SUBDIR += p8-platform SUBDIR += packr SUBDIR += paexec SUBDIR += pam_wrapper SUBDIR += papi SUBDIR += papilio-loader SUBDIR += paq-nvim SUBDIR += parallel-hashmap SUBDIR += parol SUBDIR += parol-ls SUBDIR += pas2dox SUBDIR += pasm SUBDIR += patch SUBDIR += patsh SUBDIR += pcc-libs SUBDIR += pcg-cpp SUBDIR += pcl SUBDIR += pcre SUBDIR += pcre2 SUBDIR += pcsc-cyberjack SUBDIR += pcsc-lite SUBDIR += pdcurses SUBDIR += pear SUBDIR += pear-Config SUBDIR += pear-Console_Color SUBDIR += pear-Console_CommandLine SUBDIR += pear-Console_Getargs SUBDIR += pear-Console_Table SUBDIR += pear-Date SUBDIR += pear-Date_Holidays SUBDIR += pear-Date_Holidays_Austria SUBDIR += pear-Date_Holidays_Brazil SUBDIR += pear-Date_Holidays_Denmark SUBDIR += pear-Date_Holidays_Discordian SUBDIR += pear-Date_Holidays_EnglandWales SUBDIR += pear-Date_Holidays_Germany SUBDIR += pear-Date_Holidays_Iceland SUBDIR += pear-Date_Holidays_Ireland SUBDIR += pear-Date_Holidays_Italy SUBDIR += pear-Date_Holidays_Japan SUBDIR += pear-Date_Holidays_Netherlands SUBDIR += pear-Date_Holidays_Norway SUBDIR += pear-Date_Holidays_PHPdotNet SUBDIR += pear-Date_Holidays_Romania SUBDIR += pear-Date_Holidays_Slovenia SUBDIR += pear-Date_Holidays_Sweden SUBDIR += pear-Date_Holidays_UNO SUBDIR += pear-Date_Holidays_USA SUBDIR += pear-Date_Holidays_Ukraine SUBDIR += pear-Event_Dispatcher SUBDIR += pear-FSM SUBDIR += pear-File_Iterator SUBDIR += pear-HTML_BBCodeParser SUBDIR += pear-HTML_CSS SUBDIR += pear-HTML_Common SUBDIR += pear-HTML_Common2 SUBDIR += pear-HTML_Form SUBDIR += pear-HTML_Javascript SUBDIR += pear-HTML_Page2 SUBDIR += pear-HTML_QuickForm SUBDIR += pear-HTML_QuickForm2 SUBDIR += pear-HTML_QuickForm_Controller SUBDIR += pear-HTML_QuickForm_Livesearch SUBDIR += pear-HTML_QuickForm_Renderer_Tableless SUBDIR += pear-HTML_QuickForm_SelectFilter SUBDIR += pear-HTML_QuickForm_advmultiselect SUBDIR += pear-HTML_Select SUBDIR += pear-HTML_Select_Common SUBDIR += pear-HTML_Table SUBDIR += pear-HTML_Template_Flexy SUBDIR += pear-HTML_Template_IT SUBDIR += pear-HTML_Template_PHPLIB SUBDIR += pear-HTML_Template_Sigma SUBDIR += pear-HTML_TreeMenu SUBDIR += pear-Horde_Alarm SUBDIR += pear-Horde_Argv SUBDIR += pear-Horde_Autoloader SUBDIR += pear-Horde_Autoloader_Cache SUBDIR += pear-Horde_Cache SUBDIR += pear-Horde_Cli SUBDIR += pear-Horde_Constraint SUBDIR += pear-Horde_Controller SUBDIR += pear-Horde_Core SUBDIR += pear-Horde_Data SUBDIR += pear-Horde_Date SUBDIR += pear-Horde_Date_Parser SUBDIR += pear-Horde_Exception SUBDIR += pear-Horde_History SUBDIR += pear-Horde_Icalendar SUBDIR += pear-Horde_Injector SUBDIR += pear-Horde_Itip SUBDIR += pear-Horde_Lock SUBDIR += pear-Horde_LoginTasks SUBDIR += pear-Horde_Nls SUBDIR += pear-Horde_Notification SUBDIR += pear-Horde_Prefs SUBDIR += pear-Horde_Queue SUBDIR += pear-Horde_Rdo SUBDIR += pear-Horde_Role SUBDIR += pear-Horde_Scheduler SUBDIR += pear-Horde_Serialize SUBDIR += pear-Horde_Stream SUBDIR += pear-Horde_Stream_Filter SUBDIR += pear-Horde_Stream_Wrapper SUBDIR += pear-Horde_Support SUBDIR += pear-Horde_Thrift SUBDIR += pear-Horde_Timezone SUBDIR += pear-Horde_Token SUBDIR += pear-Horde_Translation SUBDIR += pear-Horde_Tree SUBDIR += pear-Horde_Util SUBDIR += pear-Horde_View SUBDIR += pear-I18N SUBDIR += pear-Math_Fraction SUBDIR += pear-Net_Gearman SUBDIR += pear-OLE SUBDIR += pear-PEAR_Info SUBDIR += pear-PEAR_PackageFileManager SUBDIR += pear-PEAR_PackageFileManager2 SUBDIR += pear-PEAR_PackageFileManager_Plugins SUBDIR += pear-PHPTAL SUBDIR += pear-PHPUnit_MockObject SUBDIR += pear-PHP_ArrayOf SUBDIR += pear-PHP_Beautifier SUBDIR += pear-PHP_CodeCoverage SUBDIR += pear-PHP_CodeSniffer SUBDIR += pear-PHP_Compat SUBDIR += pear-PHP_CompatInfo SUBDIR += pear-PHP_Parser SUBDIR += pear-PHP_ParserGenerator SUBDIR += pear-PHP_Timer SUBDIR += pear-PHP_TokenStream SUBDIR += pear-PHP_UML SUBDIR += pear-Pager SUBDIR += pear-PhpDocumentor SUBDIR += pear-Pirum SUBDIR += pear-SebastianBergmann_FinderFacade SUBDIR += pear-SebastianBergmann_Git SUBDIR += pear-SebastianBergmann_PHPCPD SUBDIR += pear-SebastianBergmann_PHPLOC SUBDIR += pear-SebastianBergmann_Version SUBDIR += pear-Structure_LinkedList SUBDIR += pear-Structures_DataGrid SUBDIR += pear-Structures_DataGrid_Renderer_Console SUBDIR += pear-Structures_DataGrid_Renderer_HTMLSortForm SUBDIR += pear-Structures_DataGrid_Renderer_HTMLTable SUBDIR += pear-Structures_DataGrid_Renderer_XUL SUBDIR += pear-Symfony_Component_Console SUBDIR += pear-Symfony_Component_Finder SUBDIR += pear-System_Command SUBDIR += pear-Testing_Selenium SUBDIR += pear-Text_Diff SUBDIR += pear-TheSeer_DirectoryScanner SUBDIR += pear-TheSeer_fDOMDocument SUBDIR += pear-TheSeer_fXSL SUBDIR += pear-VFS SUBDIR += pear-Validate SUBDIR += pear-Validate_AU SUBDIR += pear-Validate_Finance SUBDIR += pear-Validate_Finance_CreditCard SUBDIR += pear-Validate_US SUBDIR += pear-Var_Dump SUBDIR += pear-VersionControl_Git SUBDIR += pear-VersionControl_SVN SUBDIR += pear-XML_NITF SUBDIR += pear-XML_Parser SUBDIR += pear-XML_RSS SUBDIR += pear-XML_SVG SUBDIR += pear-XML_Serializer SUBDIR += pear-XML_Transformer SUBDIR += pear-XML_Tree SUBDIR += pear-XML_Util SUBDIR += pear-channel-doctrine SUBDIR += pear-channel-ezc SUBDIR += pear-channel-geshi SUBDIR += pear-channel-horde SUBDIR += pear-channel-openpear SUBDIR += pear-channel-pdepend SUBDIR += pear-channel-phing SUBDIR += pear-channel-phpdoc SUBDIR += pear-channel-phpmd SUBDIR += pear-channel-pirum SUBDIR += pear-channel-symfony SUBDIR += pear-channel-symfony2 SUBDIR += pear-channel-theseer SUBDIR += pear-channel-twig SUBDIR += pear-codegen SUBDIR += pear-ezc_Base SUBDIR += pear-ezc_ConsoleTools SUBDIR += pear-geshi SUBDIR += pear-pdepend-staticReflection SUBDIR += pear-phing SUBDIR += pecl-APCu SUBDIR += pecl-ast SUBDIR += pecl-dio SUBDIR += pecl-ds SUBDIR += pecl-eio SUBDIR += pecl-ev SUBDIR += pecl-event SUBDIR += pecl-excimer SUBDIR += pecl-expect SUBDIR += pecl-grpc SUBDIR += pecl-inotify SUBDIR += pecl-json_post SUBDIR += pecl-msgpack SUBDIR += pecl-mustache SUBDIR += pecl-protobuf SUBDIR += pecl-psr SUBDIR += pecl-raphf2 SUBDIR += pecl-runkit7 SUBDIR += pecl-swoole SUBDIR += pecl-sync SUBDIR += pecl-uploadprogress SUBDIR += pecl-uuid SUBDIR += pecl-uv SUBDIR += pecl-vld SUBDIR += pecl-xdebug SUBDIR += pecl-yac SUBDIR += pecl-yaconf SUBDIR += pecl-zookeeper SUBDIR += peg.el SUBDIR += pegtl SUBDIR += pep8 SUBDIR += performance SUBDIR += perlconsole SUBDIR += phabricator SUBDIR += phasar SUBDIR += phorgeit-arcanist SUBDIR += phorgeit-arcanist-lib SUBDIR += phorgeit-phorge SUBDIR += php-Psr_Log SUBDIR += php-composer SUBDIR += php-geshi SUBDIR += php-ice37 SUBDIR += php-libawl SUBDIR += php-maxminddb SUBDIR += php81-ffi SUBDIR += php81-gettext SUBDIR += php81-intl SUBDIR += php81-pcntl SUBDIR += php81-readline SUBDIR += php81-shmop SUBDIR += php81-sysvmsg SUBDIR += php81-sysvsem SUBDIR += php81-sysvshm SUBDIR += php81-tokenizer SUBDIR += php82-ffi SUBDIR += php82-gettext SUBDIR += php82-intl SUBDIR += php82-pcntl SUBDIR += php82-readline SUBDIR += php82-shmop SUBDIR += php82-sysvmsg SUBDIR += php82-sysvsem SUBDIR += php82-sysvshm SUBDIR += php82-tokenizer SUBDIR += php83-ffi SUBDIR += php83-gettext SUBDIR += php83-intl SUBDIR += php83-pcntl SUBDIR += php83-readline SUBDIR += php83-shmop SUBDIR += php83-sysvmsg SUBDIR += php83-sysvsem SUBDIR += php83-sysvshm SUBDIR += php83-tokenizer SUBDIR += php84-ffi SUBDIR += php84-gettext SUBDIR += php84-intl SUBDIR += php84-pcntl SUBDIR += php84-readline SUBDIR += php84-shmop SUBDIR += php84-sysvmsg SUBDIR += php84-sysvsem SUBDIR += php84-sysvshm SUBDIR += php84-tokenizer SUBDIR += phpunit10 SUBDIR += phpunit11 SUBDIR += phpunit8 SUBDIR += phpunit9 SUBDIR += physfs SUBDIR += pickle SUBDIR += picojson SUBDIR += picprog SUBDIR += pijul SUBDIR += pika SUBDIR += pipelight SUBDIR += pipestatus SUBDIR += pire SUBDIR += pit SUBDIR += pkg-info.el SUBDIR += pkgconf SUBDIR += plan9port SUBDIR += plasma SUBDIR += plasma5-khotkeys SUBDIR += plasma5-kwrited SUBDIR += plasma5-plasma-sdk SUBDIR += plasma6-kwrited SUBDIR += plasma6-plasma-sdk SUBDIR += plasma6-plasma5support SUBDIR += please SUBDIR += pmccabe SUBDIR += pmd SUBDIR += poco SUBDIR += popt SUBDIR += poser SUBDIR += poxml SUBDIR += ppl SUBDIR += pprof SUBDIR += premake4 SUBDIR += premake5 SUBDIR += projectcenter SUBDIR += protobuf SUBDIR += protobuf-c SUBDIR += protobuf-java SUBDIR += protobuf25 SUBDIR += protobuf3 SUBDIR += prototool SUBDIR += protozero SUBDIR += pructl SUBDIR += psimd SUBDIR += pstreams SUBDIR += psvn SUBDIR += pth SUBDIR += pth-hard SUBDIR += pthreadpool SUBDIR += pthsem SUBDIR += ptl SUBDIR += ptlib SUBDIR += publib SUBDIR += purescript-language-server SUBDIR += pushmi SUBDIR += py-Automat SUBDIR += py-BTrees SUBDIR += py-DateTime SUBDIR += py-Dumper SUBDIR += py-ExtensionClass SUBDIR += py-Faker SUBDIR += py-IBMQuantumExperience SUBDIR += py-Jinja2 SUBDIR += py-Jinja2-doc SUBDIR += py-Js2Py SUBDIR += py-Levenshtein SUBDIR += py-PYB11Generator SUBDIR += py-PeachPy SUBDIR += py-Products.ExternalEditor SUBDIR += py-Products.PloneLanguageTool SUBDIR += py-PyExecJS SUBDIR += py-PyGithub SUBDIR += py-PyLD SUBDIR += py-PyPubSub SUBDIR += py-PyUtilib SUBDIR += py-QtPy SUBDIR += py-RPyC SUBDIR += py-about-time SUBDIR += py-absl SUBDIR += py-absl-py SUBDIR += py-acstore SUBDIR += py-adb SUBDIR += py-addict SUBDIR += py-aenum SUBDIR += py-aioapns SUBDIR += py-aiobotocore SUBDIR += py-aiocontextvars SUBDIR += py-aiofiles SUBDIR += py-aiohttp-apispec SUBDIR += py-aioice SUBDIR += py-aioitertools SUBDIR += py-aiologger SUBDIR += py-aiorpcX SUBDIR += py-aiorpcX-legacy SUBDIR += py-aiortc SUBDIR += py-aiorwlock SUBDIR += py-aiosignal SUBDIR += py-airtable-python-wrapper SUBDIR += py-all-repos SUBDIR += py-amalgamate SUBDIR += py-aniso8601 SUBDIR += py-aniso86016 SUBDIR += py-anndata SUBDIR += py-annotated-types SUBDIR += py-ansi SUBDIR += py-antlr4-python3-runtime SUBDIR += py-anyconfig SUBDIR += py-anyio SUBDIR += py-anyio3 SUBDIR += py-anyjson SUBDIR += py-anytree SUBDIR += py-anywidget SUBDIR += py-apache_conf_parser SUBDIR += py-apipkg SUBDIR += py-apispec SUBDIR += py-apispec-webframeworks SUBDIR += py-appdirs SUBDIR += py-applicationinsights SUBDIR += py-apptools SUBDIR += py-apscheduler SUBDIR += py-archinfo SUBDIR += py-archspec SUBDIR += py-argcomplete SUBDIR += py-argh SUBDIR += py-argparse SUBDIR += py-argparse-manpage SUBDIR += py-argparse_addons SUBDIR += py-args SUBDIR += py-ariadne SUBDIR += py-arpeggio SUBDIR += py-array-api-compat SUBDIR += py-arrow SUBDIR += py-asciimatics SUBDIR += py-asgi-lifespan SUBDIR += py-asn1 SUBDIR += py-asn1crypto SUBDIR += py-aspectlib SUBDIR += py-aspy.yaml SUBDIR += py-assertpy SUBDIR += py-ast-decompiler SUBDIR += py-ast2json SUBDIR += py-asteval SUBDIR += py-astor SUBDIR += py-astroid SUBDIR += py-astroid2 SUBDIR += py-asttokens SUBDIR += py-astunparse SUBDIR += py-async-lru SUBDIR += py-async_generator SUBDIR += py-async_timeout SUBDIR += py-asynctest SUBDIR += py-atomiclong SUBDIR += py-atomicwrites SUBDIR += py-atpublic SUBDIR += py-attrdict SUBDIR += py-attrs SUBDIR += py-attrs-strict SUBDIR += py-autocommand SUBDIR += py-autoflake SUBDIR += py-automaton SUBDIR += py-autopage SUBDIR += py-autoprop SUBDIR += py-avro SUBDIR += py-awesomeversion SUBDIR += py-aws-lambda-builders SUBDIR += py-aws-requests-auth SUBDIR += py-aws-sam-translator SUBDIR += py-aws-xray-sdk SUBDIR += py-awscli SUBDIR += py-awscrt SUBDIR += py-azure-appconfiguration SUBDIR += py-azure-batch SUBDIR += py-azure-core SUBDIR += py-azure-cosmos SUBDIR += py-azure-data-tables SUBDIR += py-azure-datalake-store SUBDIR += py-azure-functions-devops-build SUBDIR += py-azure-graphrbac SUBDIR += py-azure-identity SUBDIR += py-azure-keyvault SUBDIR += py-azure-keyvault-administration SUBDIR += py-azure-loganalytics SUBDIR += py-azure-mgmt-advisor SUBDIR += py-azure-mgmt-apimanagement SUBDIR += py-azure-mgmt-appconfiguration SUBDIR += py-azure-mgmt-appcontainers SUBDIR += py-azure-mgmt-applicationinsights SUBDIR += py-azure-mgmt-authorization SUBDIR += py-azure-mgmt-batch SUBDIR += py-azure-mgmt-batchai SUBDIR += py-azure-mgmt-billing SUBDIR += py-azure-mgmt-botservice SUBDIR += py-azure-mgmt-cdn SUBDIR += py-azure-mgmt-cognitiveservices SUBDIR += py-azure-mgmt-compute SUBDIR += py-azure-mgmt-consumption SUBDIR += py-azure-mgmt-containerinstance SUBDIR += py-azure-mgmt-containerregistry SUBDIR += py-azure-mgmt-containerservice SUBDIR += py-azure-mgmt-core SUBDIR += py-azure-mgmt-cosmosdb SUBDIR += py-azure-mgmt-databoxedge SUBDIR += py-azure-mgmt-datalake-analytics SUBDIR += py-azure-mgmt-datalake-store SUBDIR += py-azure-mgmt-datamigration SUBDIR += py-azure-mgmt-deploymentmanager SUBDIR += py-azure-mgmt-devtestlabs SUBDIR += py-azure-mgmt-dns SUBDIR += py-azure-mgmt-eventgrid SUBDIR += py-azure-mgmt-eventhub SUBDIR += py-azure-mgmt-extendedlocation SUBDIR += py-azure-mgmt-hdinsight SUBDIR += py-azure-mgmt-imagebuilder SUBDIR += py-azure-mgmt-iotcentral SUBDIR += py-azure-mgmt-iothub SUBDIR += py-azure-mgmt-iothubprovisioningservices SUBDIR += py-azure-mgmt-keyvault SUBDIR += py-azure-mgmt-kusto SUBDIR += py-azure-mgmt-loganalytics SUBDIR += py-azure-mgmt-managedservices SUBDIR += py-azure-mgmt-managementgroups SUBDIR += py-azure-mgmt-maps SUBDIR += py-azure-mgmt-marketplaceordering SUBDIR += py-azure-mgmt-media SUBDIR += py-azure-mgmt-monitor SUBDIR += py-azure-mgmt-msi SUBDIR += py-azure-mgmt-netapp SUBDIR += py-azure-mgmt-network SUBDIR += py-azure-mgmt-policyinsights SUBDIR += py-azure-mgmt-privatedns SUBDIR += py-azure-mgmt-rdbms SUBDIR += py-azure-mgmt-recoveryservices SUBDIR += py-azure-mgmt-recoveryservicesbackup SUBDIR += py-azure-mgmt-redhatopenshift SUBDIR += py-azure-mgmt-redis SUBDIR += py-azure-mgmt-relay SUBDIR += py-azure-mgmt-reservations SUBDIR += py-azure-mgmt-resource SUBDIR += py-azure-mgmt-search SUBDIR += py-azure-mgmt-security SUBDIR += py-azure-mgmt-servicebus SUBDIR += py-azure-mgmt-servicefabric SUBDIR += py-azure-mgmt-servicefabricmanagedclusters SUBDIR += py-azure-mgmt-servicelinker SUBDIR += py-azure-mgmt-signalr SUBDIR += py-azure-mgmt-sql SUBDIR += py-azure-mgmt-sqlvirtualmachine SUBDIR += py-azure-mgmt-storage SUBDIR += py-azure-mgmt-synapse SUBDIR += py-azure-mgmt-trafficmanager SUBDIR += py-azure-mgmt-web SUBDIR += py-azure-multiapi-storage SUBDIR += py-azure-storage-blob SUBDIR += py-azure-storage-common SUBDIR += py-azure-synapse-accesscontrol SUBDIR += py-azure-synapse-artifacts SUBDIR += py-azure-synapse-managedprivateendpoints SUBDIR += py-azure-synapse-spark SUBDIR += py-b2sdk SUBDIR += py-babel SUBDIR += py-babelfish SUBDIR += py-babi_grammars SUBDIR += py-backcall SUBDIR += py-backoff SUBDIR += py-backports SUBDIR += py-backports.cached-property SUBDIR += py-backports.csv SUBDIR += py-backports.entry-points-selectable SUBDIR += py-backports.tarfile SUBDIR += py-backports.zoneinfo SUBDIR += py-banal SUBDIR += py-bandit SUBDIR += py-bcdoc SUBDIR += py-beartype SUBDIR += py-beautifultable SUBDIR += py-behave SUBDIR += py-beniget SUBDIR += py-bidict SUBDIR += py-billiard SUBDIR += py-binary_file_search SUBDIR += py-binaryornot SUBDIR += py-biplist SUBDIR += py-bitarray SUBDIR += py-bitstring SUBDIR += py-black SUBDIR += py-blessed SUBDIR += py-blessings SUBDIR += py-blinker SUBDIR += py-blist SUBDIR += py-bluelet SUBDIR += py-boltons SUBDIR += py-boolean.py SUBDIR += py-boto SUBDIR += py-botocore SUBDIR += py-bps-restpy SUBDIR += py-breathe SUBDIR += py-bsd SUBDIR += py-btest SUBDIR += py-build SUBDIR += py-buildbot SUBDIR += py-buildbot-badges SUBDIR += py-buildbot-console-view SUBDIR += py-buildbot-grid-view SUBDIR += py-buildbot-pkg SUBDIR += py-buildbot-react-console-view SUBDIR += py-buildbot-waterfall-view SUBDIR += py-buildbot-worker SUBDIR += py-buildbot-www SUBDIR += py-bullet3 SUBDIR += py-bump2version SUBDIR += py-bytecode SUBDIR += py-cabby SUBDIR += py-cached-property SUBDIR += py-cachetools SUBDIR += py-cacheyou SUBDIR += py-cachy SUBDIR += py-cadquery-pywrap SUBDIR += py-calver SUBDIR += py-canonicaljson SUBDIR += py-capstone SUBDIR += py-capturer SUBDIR += py-case SUBDIR += py-castellan SUBDIR += py-catalogue SUBDIR += py-cattrs SUBDIR += py-cattrs23 SUBDIR += py-cbor SUBDIR += py-cbor2 SUBDIR += py-cclib SUBDIR += py-cdg SUBDIR += py-celery SUBDIR += py-celery-progress SUBDIR += py-celery-singleton SUBDIR += py-cerberus SUBDIR += py-cereslib SUBDIR += py-certsrv SUBDIR += py-cffi SUBDIR += py-cfgv SUBDIR += py-cfn-lint SUBDIR += py-cftime SUBDIR += py-chai SUBDIR += py-chainmap SUBDIR += py-characteristic SUBDIR += py-check-jsonschema SUBDIR += py-check-manifest SUBDIR += py-check-sdist SUBDIR += py-cheetah3 SUBDIR += py-circuitbreaker SUBDIR += py-circuits SUBDIR += py-ciso8601 SUBDIR += py-ckanapi SUBDIR += py-clang SUBDIR += py-cld SUBDIR += py-cle SUBDIR += py-cleo SUBDIR += py-cli-helpers SUBDIR += py-cliapp SUBDIR += py-click SUBDIR += py-click-aliases SUBDIR += py-click-command-tree SUBDIR += py-click-completion SUBDIR += py-click-creds SUBDIR += py-click-default-group SUBDIR += py-click-default-group-wheel SUBDIR += py-click-didyoumean SUBDIR += py-click-help-colors SUBDIR += py-click-log SUBDIR += py-click-option-group SUBDIR += py-click-plugins SUBDIR += py-click-repl SUBDIR += py-click-threading SUBDIR += py-click7 SUBDIR += py-cliff SUBDIR += py-cligj SUBDIR += py-clikit SUBDIR += py-clint SUBDIR += py-clldutils SUBDIR += py-cloc SUBDIR += py-cloudpathlib SUBDIR += py-cloudpickle SUBDIR += py-cluster SUBDIR += py-cmd2 SUBDIR += py-cmdtest SUBDIR += py-codecov SUBDIR += py-codegen SUBDIR += py-cog SUBDIR += py-collective.monkeypatcher SUBDIR += py-colorama SUBDIR += py-colored-traceback SUBDIR += py-coloredlogs SUBDIR += py-colorful SUBDIR += py-colorlog SUBDIR += py-colorspacious SUBDIR += py-columnize SUBDIR += py-comm SUBDIR += py-commandlines SUBDIR += py-commentjson SUBDIR += py-conditional SUBDIR += py-confection SUBDIR += py-configargparse SUBDIR += py-configobj SUBDIR += py-configparser SUBDIR += py-configupdater SUBDIR += py-confusable_homoglyphs SUBDIR += py-confuse SUBDIR += py-connection_pool SUBDIR += py-connexion SUBDIR += py-cons SUBDIR += py-constantly SUBDIR += py-construct SUBDIR += py-construct-classes SUBDIR += py-contextlib-chdir SUBDIR += py-contextlib2 SUBDIR += py-convertdate SUBDIR += py-cookiecutter SUBDIR += py-copier SUBDIR += py-coreapi SUBDIR += py-coreschema SUBDIR += py-country SUBDIR += py-cov-core SUBDIR += py-covdefaults SUBDIR += py-coverage SUBDIR += py-coverage_enable_subprocess SUBDIR += py-coveralls SUBDIR += py-cppheaderparser SUBDIR += py-cppy SUBDIR += py-crank SUBDIR += py-crashtest SUBDIR += py-crc32c SUBDIR += py-crcmod SUBDIR += py-crick SUBDIR += py-crontab SUBDIR += py-crosshair-tool SUBDIR += py-cson SUBDIR += py-csv23 SUBDIR += py-ctags SUBDIR += py-ctypesgen SUBDIR += py-curio SUBDIR += py-cursive SUBDIR += py-curtsies SUBDIR += py-custodian SUBDIR += py-cvss SUBDIR += py-cwcwidth SUBDIR += py-cxx SUBDIR += py-cycler SUBDIR += py-cykhash SUBDIR += py-cymbal SUBDIR += py-cymem SUBDIR += py-cysignals SUBDIR += py-cython-test-exception-raiser SUBDIR += py-cytoolz SUBDIR += py-d2to1 SUBDIR += py-daemon SUBDIR += py-daemon-runner SUBDIR += py-daemonize SUBDIR += py-daemons SUBDIR += py-dal SUBDIR += py-darts.util.lru SUBDIR += py-dask SUBDIR += py-dask-awkward SUBDIR += py-dask-expr SUBDIR += py-dask-histogram SUBDIR += py-dataclass-array SUBDIR += py-dataclasses-json SUBDIR += py-datadog SUBDIR += py-datapackage SUBDIR += py-datasette SUBDIR += py-datatest SUBDIR += py-dateparser SUBDIR += py-dateutils SUBDIR += py-datrie SUBDIR += py-dbt-extractor SUBDIR += py-dbus SUBDIR += py-ddsketch SUBDIR += py-ddt SUBDIR += py-ddtrace SUBDIR += py-debtcollector SUBDIR += py-debugpy SUBDIR += py-debugtools SUBDIR += py-decli SUBDIR += py-decopatch SUBDIR += py-decorator SUBDIR += py-decoratortools SUBDIR += py-deepdiff SUBDIR += py-deepmerge SUBDIR += py-defusedxml SUBDIR += py-demjson SUBDIR += py-dep-logic SUBDIR += py-deprecat SUBDIR += py-deprecated SUBDIR += py-deprecation SUBDIR += py-deptry SUBDIR += py-devtools SUBDIR += py-dexml2 SUBDIR += py-diazo SUBDIR += py-diff-cover SUBDIR += py-dill SUBDIR += py-dirspec SUBDIR += py-dirty-equals SUBDIR += py-diskcache SUBDIR += py-distlib SUBDIR += py-distributed SUBDIR += py-dj50-django-rq SUBDIR += py-dj50-strawberry-graphql SUBDIR += py-django-rq SUBDIR += py-dm-tree SUBDIR += py-docformatter SUBDIR += py-dockerpty SUBDIR += py-docopt SUBDIR += py-doctest-ignore-unicode SUBDIR += py-dodgy SUBDIR += py-dogpile.cache SUBDIR += py-doit SUBDIR += py-domdf-python-tools SUBDIR += py-donut-shellcode SUBDIR += py-dotted SUBDIR += py-dotty-dict SUBDIR += py-dpcontracts SUBDIR += py-dtfabric SUBDIR += py-dukpy SUBDIR += py-dulwich SUBDIR += py-dunamai SUBDIR += py-durus SUBDIR += py-dynrules SUBDIR += py-easydict SUBDIR += py-easyprocess SUBDIR += py-editables SUBDIR += py-editdistance SUBDIR += py-eggtestinfo SUBDIR += py-ejson SUBDIR += py-enlighten SUBDIR += py-entrypoint2 SUBDIR += py-entrypoints SUBDIR += py-enum-compat SUBDIR += py-envier SUBDIR += py-envisage SUBDIR += py-envs SUBDIR += py-epc SUBDIR += py-epdb SUBDIR += py-epsilon SUBDIR += py-etils SUBDIR += py-etuples SUBDIR += py-evdev SUBDIR += py-eventlib SUBDIR += py-ewah-bool-utils SUBDIR += py-ewmh SUBDIR += py-exam SUBDIR += py-exceptiongroup SUBDIR += py-executing SUBDIR += py-expandvars SUBDIR += py-expecttest SUBDIR += py-expiringdict SUBDIR += py-extras SUBDIR += py-extremes SUBDIR += py-fabric SUBDIR += py-fabric3 SUBDIR += py-face SUBDIR += py-factory-boy SUBDIR += py-fam SUBDIR += py-fastbencode SUBDIR += py-fastcache SUBDIR += py-fasteners SUBDIR += py-fastentrypoints SUBDIR += py-fastf1 SUBDIR += py-fastimport SUBDIR += py-fastjsonschema SUBDIR += py-fastnumbers SUBDIR += py-fastprogress SUBDIR += py-fbprophet SUBDIR += py-fields SUBDIR += py-filebytes SUBDIR += py-filedepot SUBDIR += py-filemagic SUBDIR += py-filetype SUBDIR += py-find-libpython SUBDIR += py-findlibs SUBDIR += py-findpython SUBDIR += py-fire SUBDIR += py-fireREST SUBDIR += py-first SUBDIR += py-fixtures SUBDIR += py-flake8 SUBDIR += py-flake8-black SUBDIR += py-flake8-bugbear SUBDIR += py-flake8-builtins SUBDIR += py-flake8-comprehensions SUBDIR += py-flake8-docstrings SUBDIR += py-flake8-future-annotations SUBDIR += py-flake8-import-order SUBDIR += py-flake8-polyfill SUBDIR += py-flake8-print SUBDIR += py-flake8-pyi SUBDIR += py-flake8-quotes SUBDIR += py-flake8_simplify SUBDIR += py-flaky SUBDIR += py-flask-babel SUBDIR += py-flatbuffers SUBDIR += py-flatdict SUBDIR += py-flatland SUBDIR += py-flatten-dict SUBDIR += py-flex SUBDIR += py-flexmock SUBDIR += py-flit SUBDIR += py-flit-core SUBDIR += py-flit-scm SUBDIR += py-fluent SUBDIR += py-fluent-logger SUBDIR += py-flufl.i18n SUBDIR += py-flufl.lock SUBDIR += py-flynt SUBDIR += py-foolscap SUBDIR += py-freebsd SUBDIR += py-freebsd-sysctl SUBDIR += py-freenas.utils SUBDIR += py-freezegun SUBDIR += py-frictionless SUBDIR += py-frictionless-ckan-mapper SUBDIR += py-frozendict SUBDIR += py-frozenlist SUBDIR += py-fs SUBDIR += py-fs2 SUBDIR += py-fsspec SUBDIR += py-fsspec-xrootd SUBDIR += py-fudge SUBDIR += py-funcparserlib SUBDIR += py-funcsigs SUBDIR += py-funcy SUBDIR += py-furl SUBDIR += py-fusepy SUBDIR += py-future SUBDIR += py-futurist SUBDIR += py-fuzzywuzzy SUBDIR += py-fypp SUBDIR += py-game SUBDIR += py-game_sdl2 SUBDIR += py-gapic-generator SUBDIR += py-gast SUBDIR += py-gcsfs SUBDIR += py-gelidum SUBDIR += py-genson SUBDIR += py-genty SUBDIR += py-geocoder SUBDIR += py-geojson SUBDIR += py-get-reader SUBDIR += py-gevent SUBDIR += py-geventhttpclient SUBDIR += py-git-semver SUBDIR += py-git-up SUBDIR += py-git-url-parse SUBDIR += py-gitdb SUBDIR += py-gitlab-webhook-handler SUBDIR += py-gitless SUBDIR += py-gitpython SUBDIR += py-giturlparse SUBDIR += py-glance-store SUBDIR += py-glob2 SUBDIR += py-glom SUBDIR += py-gobject3 SUBDIR += py-google-cloud-iam SUBDIR += py-google-crc32c SUBDIR += py-google-i18n-address SUBDIR += py-google-pasta SUBDIR += py-google-re2 SUBDIR += py-googleapis-common-protos SUBDIR += py-gptscript SUBDIR += py-gpxpy SUBDIR += py-graal SUBDIR += py-grab SUBDIR += py-graphene SUBDIR += py-graphene-django SUBDIR += py-graphene-django300 SUBDIR += py-graphene-sqlalchemy SUBDIR += py-graphene2 SUBDIR += py-graphql-core SUBDIR += py-graphql-core2 SUBDIR += py-graphql-relay SUBDIR += py-graphql-relay2 SUBDIR += py-greenlet SUBDIR += py-grimoirelab-toolkit SUBDIR += py-grizzled SUBDIR += py-grpc-google-iam-v1 SUBDIR += py-grpc-stubs SUBDIR += py-grpcio SUBDIR += py-grpcio-gcp SUBDIR += py-grpcio-status SUBDIR += py-grpcio-tools SUBDIR += py-gs_api_client SUBDIR += py-guppy3 SUBDIR += py-gyp SUBDIR += py-hacking SUBDIR += py-hammett SUBDIR += py-hash_ring SUBDIR += py-hatch SUBDIR += py-hatch-autorun SUBDIR += py-hatch-fancy-pypi-readme SUBDIR += py-hatch-jupyter-builder SUBDIR += py-hatch-mypyc SUBDIR += py-hatch-nodejs-version SUBDIR += py-hatch-requirements-txt SUBDIR += py-hatch-semver SUBDIR += py-hatch-vcs SUBDIR += py-hatchling SUBDIR += py-heapdict SUBDIR += py-helpdev SUBDIR += py-hg-evolve SUBDIR += py-hglib SUBDIR += py-hgtools SUBDIR += py-hidraw SUBDIR += py-hishel SUBDIR += py-holidays SUBDIR += py-hologram SUBDIR += py-homebase SUBDIR += py-http-prompt SUBDIR += py-humanize SUBDIR += py-hunter SUBDIR += py-hupper SUBDIR += py-hvac SUBDIR += py-hypothesis SUBDIR += py-hypothesis-crosshair SUBDIR += py-hypothesmith SUBDIR += py-icalendar SUBDIR += py-ice SUBDIR += py-ice37 SUBDIR += py-identify SUBDIR += py-ijson SUBDIR += py-imgkit SUBDIR += py-immutabledict SUBDIR += py-immutables SUBDIR += py-importlab SUBDIR += py-importlib-metadata SUBDIR += py-importlib-metadata6 SUBDIR += py-importlib-metadata7 SUBDIR += py-importlib-resources SUBDIR += py-incremental SUBDIR += py-infinity SUBDIR += py-inflect SUBDIR += py-inflection SUBDIR += py-iniconfig SUBDIR += py-inifile SUBDIR += py-iniparse SUBDIR += py-inotify-simple SUBDIR += py-inotifyrecursive SUBDIR += py-installer SUBDIR += py-intbitset SUBDIR += py-intelhex SUBDIR += py-interface-meta SUBDIR += py-intervals SUBDIR += py-intervaltree SUBDIR += py-invoke SUBDIR += py-ioflo SUBDIR += py-iopath SUBDIR += py-ipaddr SUBDIR += py-ipdb SUBDIR += py-ipydatawidgets SUBDIR += py-ipykernel SUBDIR += py-ipympl SUBDIR += py-ipyparallel SUBDIR += py-ipython_genutils SUBDIR += py-ipywidgets SUBDIR += py-iso8601 SUBDIR += py-isodate SUBDIR += py-isoduration SUBDIR += py-isort SUBDIR += py-itanium_demangler SUBDIR += py-itemadapter SUBDIR += py-itemloaders SUBDIR += py-iterable-io SUBDIR += py-iteration-utilities SUBDIR += py-itertree SUBDIR += py-itypes SUBDIR += py-janus SUBDIR += py-jaraco.classes SUBDIR += py-jaraco.collections SUBDIR += py-jaraco.context SUBDIR += py-jaraco.env SUBDIR += py-jaraco.envs SUBDIR += py-jaraco.functools SUBDIR += py-jaraco.itertools SUBDIR += py-jaraco.logging SUBDIR += py-jaraco.packaging SUBDIR += py-jaraco.path SUBDIR += py-jaraco.stream SUBDIR += py-jaraco.text SUBDIR += py-jaraco.util SUBDIR += py-javaproperties SUBDIR += py-jaxtyping SUBDIR += py-jdcal SUBDIR += py-jedi SUBDIR += py-jeepney SUBDIR += py-jellyfish SUBDIR += py-jenkins-job-builder SUBDIR += py-jep SUBDIR += py-jinja2-ansible-filters SUBDIR += py-jinja2-time SUBDIR += py-jira SUBDIR += py-jitterentropy SUBDIR += py-jmespath SUBDIR += py-joblib SUBDIR += py-johnnydep SUBDIR += py-jsbeautifier SUBDIR += py-jschema-to-python SUBDIR += py-jschon SUBDIR += py-jsmin SUBDIR += py-json5 SUBDIR += py-json_tricks SUBDIR += py-jsonargparse SUBDIR += py-jsondiff SUBDIR += py-jsonform SUBDIR += py-jsonlines SUBDIR += py-jsonnet SUBDIR += py-jsonpatch SUBDIR += py-jsonpath-ng SUBDIR += py-jsonpath-rw SUBDIR += py-jsonpickle SUBDIR += py-jsonpointer SUBDIR += py-jsonref SUBDIR += py-jsonrpclib-pelix SUBDIR += py-jsonschema SUBDIR += py-jsonschema-path SUBDIR += py-jsonschema-spec SUBDIR += py-jsonschema-specifications SUBDIR += py-jsonschema3 SUBDIR += py-jsonsir SUBDIR += py-junitparser SUBDIR += py-jupyter SUBDIR += py-jupyter-client SUBDIR += py-jupyter-collaboration SUBDIR += py-jupyter-core SUBDIR += py-jupyter-events SUBDIR += py-jupyter-kernel-test SUBDIR += py-jupyter-lsp SUBDIR += py-jupyter-packaging SUBDIR += py-jupyter-rfb SUBDIR += py-jupyter-server SUBDIR += py-jupyter-server-fileid SUBDIR += py-jupyter-server-mathjax SUBDIR += py-jupyter-server-terminals SUBDIR += py-jupyter-telemetry SUBDIR += py-jupyter-ydoc SUBDIR += py-jupyter_console SUBDIR += py-jupyterlab SUBDIR += py-jupyterlab-lsp SUBDIR += py-jupyterlab-server SUBDIR += py-jupyterlab-widgets SUBDIR += py-jupyterlab_launcher SUBDIR += py-kaitaistruct SUBDIR += py-kaptan SUBDIR += py-kazoo SUBDIR += py-keystone-engine SUBDIR += py-keystoneauth1 SUBDIR += py-keystonemiddleware SUBDIR += py-kitchen SUBDIR += py-klepto SUBDIR += py-knack SUBDIR += py-l18n SUBDIR += py-lark SUBDIR += py-launchpadlib SUBDIR += py-lazr.config SUBDIR += py-lazr.delegates SUBDIR += py-lazr.restfulclient SUBDIR += py-lazr.uri SUBDIR += py-lazy SUBDIR += py-lazy-object-proxy SUBDIR += py-lazy_loader SUBDIR += py-libcst SUBDIR += py-libcst03 SUBDIR += py-libioc SUBDIR += py-libpeas SUBDIR += py-libplist SUBDIR += py-libtaxii SUBDIR += py-libtmux SUBDIR += py-libusb-package SUBDIR += py-libusb1 SUBDIR += py-libversion SUBDIR += py-libvirt SUBDIR += py-libzfs SUBDIR += py-lief SUBDIR += py-line-profiler SUBDIR += py-linear-tsv SUBDIR += py-linecache2 SUBDIR += py-lineedit SUBDIR += py-littleutils SUBDIR += py-livemark SUBDIR += py-lizard SUBDIR += py-llfuse SUBDIR += py-llvmcpy SUBDIR += py-llvmlite SUBDIR += py-lml SUBDIR += py-localstack-client SUBDIR += py-locket SUBDIR += py-lockfile SUBDIR += py-logan SUBDIR += py-logbook SUBDIR += py-logfury SUBDIR += py-logilab-common SUBDIR += py-loguru SUBDIR += py-logutils SUBDIR += py-logzero SUBDIR += py-looseversion SUBDIR += py-louie SUBDIR += py-lru-dict SUBDIR += py-lsprotocol SUBDIR += py-lunardate SUBDIR += py-lxml SUBDIR += py-lxml-stubs SUBDIR += py-lxml5 SUBDIR += py-mac-vendor-lookup SUBDIR += py-macholib SUBDIR += py-magic SUBDIR += py-magnet2torrent SUBDIR += py-mailcap-fix SUBDIR += py-makefun SUBDIR += py-manuel SUBDIR += py-marisa-trie SUBDIR += py-marrow.mailer SUBDIR += py-marrow.util SUBDIR += py-marshmallow SUBDIR += py-marshmallow-enum SUBDIR += py-mashumaro SUBDIR += py-matrix-angular-sdk SUBDIR += py-matrix-common SUBDIR += py-maturin SUBDIR += py-mccabe SUBDIR += py-mdv SUBDIR += py-mediafile SUBDIR += py-mediapy SUBDIR += py-medikit SUBDIR += py-memory-allocator SUBDIR += py-memory-profiler SUBDIR += py-mergedeep SUBDIR += py-methodtools SUBDIR += py-microversion-parse SUBDIR += py-milc SUBDIR += py-mime SUBDIR += py-miniKanren SUBDIR += py-minidump SUBDIR += py-minimal-snowplow-tracker SUBDIR += py-minimongo SUBDIR += py-minio SUBDIR += py-mmh3 SUBDIR += py-mock SUBDIR += py-molecule SUBDIR += py-mondrian SUBDIR += py-mongokit SUBDIR += py-monkeytype SUBDIR += py-monotonic SUBDIR += py-monty SUBDIR += py-more-itertools SUBDIR += py-moreorless SUBDIR += py-moto SUBDIR += py-mox SUBDIR += py-mrkd SUBDIR += py-msal SUBDIR += py-msal-extensions SUBDIR += py-msgpack SUBDIR += py-msgspec SUBDIR += py-mulpyplexer SUBDIR += py-multi_key_dict SUBDIR += py-multimethod SUBDIR += py-multipart SUBDIR += py-multipledispatch SUBDIR += py-multiprocess SUBDIR += py-multiset SUBDIR += py-multitasking SUBDIR += py-munch SUBDIR += py-murmurhash SUBDIR += py-mutf8 SUBDIR += py-mutmut SUBDIR += py-mygpoclient SUBDIR += py-mypy SUBDIR += py-mypy-boto3-s3 SUBDIR += py-mypy-protobuf SUBDIR += py-mypy_extensions SUBDIR += py-mystic SUBDIR += py-naiveBayesClassifier SUBDIR += py-nanobind SUBDIR += py-nanotime SUBDIR += py-natsort SUBDIR += py-natural SUBDIR += py-nbclassic SUBDIR += py-nbclient SUBDIR += py-nbconvert SUBDIR += py-nbdime SUBDIR += py-nbformat SUBDIR += py-nbval SUBDIR += py-nest-asyncio SUBDIR += py-node-semver SUBDIR += py-nodeenv SUBDIR += py-nose SUBDIR += py-nose-cov SUBDIR += py-nose-timer SUBDIR += py-nose2 SUBDIR += py-nose3 SUBDIR += py-noseofyeti SUBDIR += py-nosexcover SUBDIR += py-notebook-shim SUBDIR += py-notify2 SUBDIR += py-num2words SUBDIR += py-numba SUBDIR += py-objgraph SUBDIR += py-objprint SUBDIR += py-objsize SUBDIR += py-oci SUBDIR += py-odfpy SUBDIR += py-offtrac SUBDIR += py-olefile SUBDIR += py-oletools SUBDIR += py-omnijson SUBDIR += py-omniorb SUBDIR += py-onigurumacffi SUBDIR += py-opcodes SUBDIR += py-openapi-codec SUBDIR += py-openapi-core SUBDIR += py-openapi-schema-validator SUBDIR += py-openapi-spec-validator SUBDIR += py-opencensus SUBDIR += py-opencensus-context SUBDIR += py-opendht SUBDIR += py-opengrok-tools SUBDIR += py-openstacksdk SUBDIR += py-opentelemetry-api SUBDIR += py-opentelemetry-exporter-otlp SUBDIR += py-opentelemetry-exporter-otlp-proto-common SUBDIR += py-opentelemetry-exporter-otlp-proto-grpc SUBDIR += py-opentelemetry-exporter-otlp-proto-http SUBDIR += py-opentelemetry-proto SUBDIR += py-opentelemetry-sdk SUBDIR += py-opentelemetry-semantic-conventions SUBDIR += py-opentracing SUBDIR += py-opster SUBDIR += py-optik SUBDIR += py-optree SUBDIR += py-orange-canvas-core SUBDIR += py-orange-widget-base SUBDIR += py-orca SUBDIR += py-ordered-set SUBDIR += py-ordereddict SUBDIR += py-orderedmultidict SUBDIR += py-orderly-set SUBDIR += py-orjson SUBDIR += py-os-brick SUBDIR += py-os-client-config SUBDIR += py-os-service-types SUBDIR += py-os-vif SUBDIR += py-os-win SUBDIR += py-osc-lib SUBDIR += py-oslo.cache SUBDIR += py-oslo.concurrency SUBDIR += py-oslo.config SUBDIR += py-oslo.context SUBDIR += py-oslo.db SUBDIR += py-oslo.i18n SUBDIR += py-oslo.limit SUBDIR += py-oslo.log SUBDIR += py-oslo.messaging SUBDIR += py-oslo.metrics SUBDIR += py-oslo.middleware SUBDIR += py-oslo.policy SUBDIR += py-oslo.privsep SUBDIR += py-oslo.reports SUBDIR += py-oslo.rootwrap SUBDIR += py-oslo.serialization SUBDIR += py-oslo.service SUBDIR += py-oslo.upgradecheck SUBDIR += py-oslo.utils SUBDIR += py-oslo.versionedobjects SUBDIR += py-oslo.vmware SUBDIR += py-oslotest SUBDIR += py-osprofiler SUBDIR += py-outcome SUBDIR += py-overrides SUBDIR += py-ovs SUBDIR += py-ovsdbapp SUBDIR += py-oyaml SUBDIR += py-p4python SUBDIR += py-packaging SUBDIR += py-parallax SUBDIR += py-param SUBDIR += py-parameterized SUBDIR += py-parsedatetime SUBDIR += py-parsley SUBDIR += py-parver SUBDIR += py-pastel SUBDIR += py-patch SUBDIR += py-patch-ng SUBDIR += py-path SUBDIR += py-path.py SUBDIR += py-pathable SUBDIR += py-pathlib2 SUBDIR += py-pathos SUBDIR += py-pathspec SUBDIR += py-pathtools SUBDIR += py-pathvalidate SUBDIR += py-paver SUBDIR += py-pbr SUBDIR += py-pbs-installer SUBDIR += py-pcodedmp SUBDIR += py-pcpp SUBDIR += py-pdm SUBDIR += py-pdm-autoexport SUBDIR += py-pdm-backend SUBDIR += py-pdm-build-locked SUBDIR += py-pdm-pep517 SUBDIR += py-pdoc SUBDIR += py-pebble SUBDIR += py-pefile SUBDIR += py-pendulum SUBDIR += py-pep440 SUBDIR += py-pep517 SUBDIR += py-pep562 SUBDIR += py-pep621 SUBDIR += py-pep8-naming SUBDIR += py-perceval SUBDIR += py-perceval-mozilla SUBDIR += py-perceval-opnfv SUBDIR += py-perceval-puppet SUBDIR += py-perceval-weblate SUBDIR += py-period SUBDIR += py-persistent SUBDIR += py-petname SUBDIR += py-pew SUBDIR += py-pex SUBDIR += py-phabricator SUBDIR += py-phonenumbers SUBDIR += py-phply SUBDIR += py-phpserialize SUBDIR += py-phx-class-registry SUBDIR += py-pid SUBDIR += py-pika SUBDIR += py-pika-pool SUBDIR += py-pinocchio SUBDIR += py-pint SUBDIR += py-pint-pandas SUBDIR += py-pip SUBDIR += py-pip-api SUBDIR += py-pip-audit SUBDIR += py-pip-licenses SUBDIR += py-pip-requirements-parser SUBDIR += py-pip-run SUBDIR += py-pip-shims SUBDIR += py-pip-tools SUBDIR += py-pip-tools4 SUBDIR += py-pipdeptree SUBDIR += py-pipenv SUBDIR += py-pipreqs SUBDIR += py-pipx SUBDIR += py-pkgconfig SUBDIR += py-pkgutil-resolve-name SUBDIR += py-plac SUBDIR += py-plan SUBDIR += py-platformdirs SUBDIR += py-plette SUBDIR += py-plex SUBDIR += py-plucky SUBDIR += py-pluggy SUBDIR += py-pluggy0 SUBDIR += py-pluginbase SUBDIR += py-plux SUBDIR += py-ply SUBDIR += py-pnio-dcp SUBDIR += py-pnu-libpnu SUBDIR += py-pockets SUBDIR += py-podcastparser SUBDIR += py-poetry SUBDIR += py-poetry-core SUBDIR += py-poetry-dynamic-versioning SUBDIR += py-poetry-plugin-export SUBDIR += py-poetry-semver SUBDIR += py-poetry-types SUBDIR += py-poetry2setup SUBDIR += py-polib SUBDIR += py-pooch SUBDIR += py-pop SUBDIR += py-pop-config SUBDIR += py-portalocker SUBDIR += py-positional SUBDIR += py-posix_ipc SUBDIR += py-pox SUBDIR += py-poyo SUBDIR += py-ppft SUBDIR += py-pprintpp SUBDIR += py-prance SUBDIR += py-pre-commit SUBDIR += py-pre-commit-hooks SUBDIR += py-prefixed SUBDIR += py-preshed SUBDIR += py-preshed3 SUBDIR += py-pretend SUBDIR += py-prettyprinter SUBDIR += py-prettytable SUBDIR += py-prettytable0 SUBDIR += py-printree SUBDIR += py-process-tests SUBDIR += py-proglog SUBDIR += py-progress SUBDIR += py-promise SUBDIR += py-prompt-toolkit SUBDIR += py-prompt-toolkit1 SUBDIR += py-prompt-toolkit2 SUBDIR += py-property-cached SUBDIR += py-proselint SUBDIR += py-prospector SUBDIR += py-proto-plus SUBDIR += py-protobuf SUBDIR += py-protobuf-compiler SUBDIR += py-protobuf4 SUBDIR += py-proxmoxer SUBDIR += py-psygnal SUBDIR += py-ptable SUBDIR += py-ptpython SUBDIR += py-ptvsd SUBDIR += py-pudb SUBDIR += py-pure-eval SUBDIR += py-purl SUBDIR += py-py SUBDIR += py-py-partiql-parser SUBDIR += py-py-serializable SUBDIR += py-py-stackexchange SUBDIR += py-py-ubjson SUBDIR += py-py3nvml SUBDIR += py-pyTooling SUBDIR += py-py_interface SUBDIR += py-pyaml-env SUBDIR += py-pyasn1 SUBDIR += py-pyasn1-modules SUBDIR += py-pybind11 SUBDIR += py-pybix SUBDIR += py-pycadf SUBDIR += py-pycalendar SUBDIR += py-pycallgraph SUBDIR += py-pycapsicum SUBDIR += py-pycerberus SUBDIR += py-pycmd SUBDIR += py-pycnite SUBDIR += py-pycocotools SUBDIR += py-pycodeexport SUBDIR += py-pycodestyle SUBDIR += py-pycognito SUBDIR += py-pycompilation SUBDIR += py-pycomplete SUBDIR += py-pycparser SUBDIR += py-pycrdt SUBDIR += py-pycrdt-websocket SUBDIR += py-pydantic SUBDIR += py-pydantic-core SUBDIR += py-pydantic-extra-types SUBDIR += py-pydantic-settings SUBDIR += py-pydantic-vault SUBDIR += py-pydantic-yaml SUBDIR += py-pydantic2 SUBDIR += py-pydash SUBDIR += py-pydbus SUBDIR += py-pydecor SUBDIR += py-pydenticon SUBDIR += py-pydevd SUBDIR += py-pydispatcher SUBDIR += py-pydocstyle SUBDIR += py-pydrive SUBDIR += py-pyee SUBDIR += py-pyee11 SUBDIR += py-pyelftools SUBDIR += py-pyface SUBDIR += py-pyfakefs SUBDIR += py-pyfcm SUBDIR += py-pyflakes SUBDIR += py-pyformance SUBDIR += py-pygdbmi SUBDIR += py-pygit2 SUBDIR += py-pygls SUBDIR += py-pygpx SUBDIR += py-pyhashxx SUBDIR += py-pyhcl SUBDIR += py-pyicu SUBDIR += py-pyina SUBDIR += py-pyinotify SUBDIR += py-pyinquirer SUBDIR += py-pyinstaller SUBDIR += py-pyinstaller-hooks-contrib SUBDIR += py-pyintelowl SUBDIR += py-pyjq SUBDIR += py-pyjsparser SUBDIR += py-pykdtree SUBDIR += py-pylama SUBDIR += py-pyleri SUBDIR += py-pylev SUBDIR += py-pylibsrtp SUBDIR += py-pylint-django SUBDIR += py-pylint-flask SUBDIR += py-pylint-plugin-utils SUBDIR += py-pylint-venv SUBDIR += py-pylru SUBDIR += py-pylru-cache SUBDIR += py-pyls-black SUBDIR += py-pymarc SUBDIR += py-pymaven-patch SUBDIR += py-pymisp SUBDIR += py-pympler SUBDIR += py-pymsgbox SUBDIR += py-pymtbl SUBDIR += py-pynest2d SUBDIR += py-pynvml SUBDIR += py-pyopencl SUBDIR += py-pyparsing SUBDIR += py-pyparsing2 SUBDIR += py-pypemicro SUBDIR += py-pyperclip SUBDIR += py-pyperf SUBDIR += py-pyperscan SUBDIR += py-pyplusplus SUBDIR += py-pyproject-api SUBDIR += py-pyproject-flake8 SUBDIR += py-pyproject-fmt SUBDIR += py-pyproject-fmt-rust SUBDIR += py-pyproject-hooks SUBDIR += py-pyproject-metadata SUBDIR += py-pypugjs SUBDIR += py-pyqtree SUBDIR += py-pyquery SUBDIR += py-pyquil SUBDIR += py-pyral SUBDIR += py-pyrepl SUBDIR += py-pyrfc3339 SUBDIR += py-pyright SUBDIR += py-pyro SUBDIR += py-pyroma SUBDIR += py-pyrsistent SUBDIR += py-pyscaffold SUBDIR += py-pysdl2 SUBDIR += py-pyshp SUBDIR += py-pysimdjson SUBDIR += py-pysparklines SUBDIR += py-pystorm SUBDIR += py-pyte SUBDIR += py-pytest SUBDIR += py-pytest-aiohttp SUBDIR += py-pytest-alembic SUBDIR += py-pytest-asyncio SUBDIR += py-pytest-azurepipelines SUBDIR += py-pytest-benchmark SUBDIR += py-pytest-black SUBDIR += py-pytest-black-multipy SUBDIR += py-pytest-cache SUBDIR += py-pytest-canonical-data SUBDIR += py-pytest-capturelog SUBDIR += py-pytest-cases SUBDIR += py-pytest-checkdocs SUBDIR += py-pytest-codspeed SUBDIR += py-pytest-console-scripts SUBDIR += py-pytest-cov SUBDIR += py-pytest-cpp SUBDIR += py-pytest-datadir SUBDIR += py-pytest-dependency SUBDIR += py-pytest-django SUBDIR += py-pytest-doctestplus SUBDIR += py-pytest-drop-dup-tests SUBDIR += py-pytest-enabler SUBDIR += py-pytest-env SUBDIR += py-pytest-examples SUBDIR += py-pytest-factoryboy SUBDIR += py-pytest-fixture-config SUBDIR += py-pytest-flake8 SUBDIR += py-pytest-flakes SUBDIR += py-pytest-flask SUBDIR += py-pytest-forked SUBDIR += py-pytest-freezer SUBDIR += py-pytest-helpers-namespace SUBDIR += py-pytest-html SUBDIR += py-pytest-httpbin SUBDIR += py-pytest-httpserver SUBDIR += py-pytest-httpx SUBDIR += py-pytest-instafail SUBDIR += py-pytest-isort SUBDIR += py-pytest-jupyter SUBDIR += py-pytest-lazy-fixture SUBDIR += py-pytest-lazy-fixtures SUBDIR += py-pytest-localserver SUBDIR += py-pytest-markdown SUBDIR += py-pytest-metadata SUBDIR += py-pytest-mock SUBDIR += py-pytest-mpl SUBDIR += py-pytest-mutagen SUBDIR += py-pytest-mypy SUBDIR += py-pytest-mypy-plugins SUBDIR += py-pytest-nunit SUBDIR += py-pytest-order SUBDIR += py-pytest-parallel SUBDIR += py-pytest-pep8 SUBDIR += py-pytest-plus SUBDIR += py-pytest-pretty SUBDIR += py-pytest-profiling SUBDIR += py-pytest-pycodestyle SUBDIR += py-pytest-qt SUBDIR += py-pytest-random-order SUBDIR += py-pytest-randomly SUBDIR += py-pytest-regressions SUBDIR += py-pytest-regtest SUBDIR += py-pytest-relaxed SUBDIR += py-pytest-remotedata SUBDIR += py-pytest-rerunfailures SUBDIR += py-pytest-ruff SUBDIR += py-pytest-runner SUBDIR += py-pytest-services SUBDIR += py-pytest-shutil SUBDIR += py-pytest-socket SUBDIR += py-pytest-subprocess SUBDIR += py-pytest-subtests SUBDIR += py-pytest-sugar SUBDIR += py-pytest-timeout SUBDIR += py-pytest-tornado SUBDIR += py-pytest-tornasync SUBDIR += py-pytest-translations SUBDIR += py-pytest-trio SUBDIR += py-pytest-twisted SUBDIR += py-pytest-verbose-parametrize SUBDIR += py-pytest-virtualenv SUBDIR += py-pytest-watcher SUBDIR += py-pytest-xdist SUBDIR += py-pytest-xprocess SUBDIR += py-pytest4 SUBDIR += py-pytest4-cache SUBDIR += py-pytest4-cov SUBDIR += py-pytest4-flakes SUBDIR += py-python-application SUBDIR += py-python-bugzilla SUBDIR += py-python-dateutil SUBDIR += py-python-dbusmock SUBDIR += py-python-decouple SUBDIR += py-python-distutils-extra SUBDIR += py-python-dtrace SUBDIR += py-python-easyconfig SUBDIR += py-python-editor SUBDIR += py-python-engineio SUBDIR += py-python-gflags SUBDIR += py-python-gilt SUBDIR += py-python-gist SUBDIR += py-python-gitlab SUBDIR += py-python-jenkins SUBDIR += py-python-json-logger SUBDIR += py-python-jsonrpc-server SUBDIR += py-python-magic SUBDIR += py-python-mimeparse SUBDIR += py-python-pcre SUBDIR += py-python-ptrace SUBDIR += py-python-rapidjson SUBDIR += py-python-semantic-release SUBDIR += py-python-socketio SUBDIR += py-python-statsd SUBDIR += py-python-subunit SUBDIR += py-python-xcaplib SUBDIR += py-pythonbrew SUBDIR += py-pythondialog SUBDIR += py-pythonfinder SUBDIR += py-pythran SUBDIR += py-pytimeparse SUBDIR += py-pytoolconfig SUBDIR += py-pytools SUBDIR += py-pytrie SUBDIR += py-pytvmaze SUBDIR += py-pytweening SUBDIR += py-pytz SUBDIR += py-pytz-deprecation-shim SUBDIR += py-pytzdata SUBDIR += py-pyuca SUBDIR += py-pyudev SUBDIR += py-pyupgrade SUBDIR += py-pyusb SUBDIR += py-pyvisa SUBDIR += py-pyvisa-py SUBDIR += py-pyxb-x SUBDIR += py-pyyaml SUBDIR += py-pyyaml-include SUBDIR += py-pyyaml_env_tag SUBDIR += py-pyzipper SUBDIR += py-q SUBDIR += py-qasync SUBDIR += py-qcs-api-client SUBDIR += py-qcs-sdk-python SUBDIR += py-qstylizer SUBDIR += py-qt5 SUBDIR += py-qt5-pyqt SUBDIR += py-qt5-qscintilla2 SUBDIR += py-qt5-sip SUBDIR += py-qt6 SUBDIR += py-qt6-pyqt SUBDIR += py-qt6-qscintilla2 SUBDIR += py-qt6-sip SUBDIR += py-qtbuilder SUBDIR += py-qtconsole SUBDIR += py-querystring-parser SUBDIR += py-questionary SUBDIR += py-qutip SUBDIR += py-qutip-qip SUBDIR += py-ramlfications SUBDIR += py-rapidfuzz SUBDIR += py-rapidfuzz-capi SUBDIR += py-ratelim SUBDIR += py-ratelimiter SUBDIR += py-rauth SUBDIR += py-raven SUBDIR += py-rchitect SUBDIR += py-re-assert SUBDIR += py-readme-renderer SUBDIR += py-rebulk SUBDIR += py-recordclass SUBDIR += py-recurring-ical-events SUBDIR += py-red-black-tree-mod SUBDIR += py-rednose SUBDIR += py-reedsolo SUBDIR += py-referencing SUBDIR += py-regress SUBDIR += py-remote-pdb SUBDIR += py-repoze.lru SUBDIR += py-repoze.sphinx.autointerface SUBDIR += py-repoze.tm2 SUBDIR += py-repoze.who SUBDIR += py-repoze.xmliter SUBDIR += py-represent SUBDIR += py-requestsexceptions SUBDIR += py-requirements-detector SUBDIR += py-requirementslib SUBDIR += py-resolvelib SUBDIR += py-resolvelib05 SUBDIR += py-resolvelib07 SUBDIR += py-resolvelib1 SUBDIR += py-resolver SUBDIR += py-resource SUBDIR += py-responses SUBDIR += py-retry2 SUBDIR += py-retrying SUBDIR += py-rfc3339 SUBDIR += py-rfc3339-validator SUBDIR += py-rfc3986-validator SUBDIR += py-rich-click SUBDIR += py-robotframework SUBDIR += py-robotframework-databaselibrary SUBDIR += py-robotframework-pabot SUBDIR += py-robotframework-pythonlibcore SUBDIR += py-robotframework-requests SUBDIR += py-robotframework-seleniumlibrary SUBDIR += py-robotframework-stacktrace SUBDIR += py-robotremoteserver SUBDIR += py-rope SUBDIR += py-rose SUBDIR += py-rpcq SUBDIR += py-rpds-py SUBDIR += py-rply SUBDIR += py-rq SUBDIR += py-rq-scheduler SUBDIR += py-rstr SUBDIR += py-rtree SUBDIR += py-rtslib-fb SUBDIR += py-ruamel.yaml SUBDIR += py-ruamel.yaml.clib SUBDIR += py-rubymarshal SUBDIR += py-ruff SUBDIR += py-rush SUBDIR += py-rx SUBDIR += py-rx1 SUBDIR += py-s3fs SUBDIR += py-saneyaml SUBDIR += py-sarge SUBDIR += py-sarif-om SUBDIR += py-scantree SUBDIR += py-schedule SUBDIR += py-scheduler SUBDIR += py-schema SUBDIR += py-schematics-patched SUBDIR += py-scikit-base SUBDIR += py-scikit-build SUBDIR += py-scikit-build-core SUBDIR += py-scooby SUBDIR += py-scripttest SUBDIR += py-selection SUBDIR += py-semantic-version SUBDIR += py-semver SUBDIR += py-sentry-sdk SUBDIR += py-serializable SUBDIR += py-serpent SUBDIR += py-session-info SUBDIR += py-setoptconf SUBDIR += py-setproctitle SUBDIR += py-setuptools SUBDIR += py-setuptools-declarative-requirements SUBDIR += py-setuptools-dso SUBDIR += py-setuptools-gettext SUBDIR += py-setuptools-git SUBDIR += py-setuptools-git-versioning SUBDIR += py-setuptools-pkg SUBDIR += py-setuptools-rust SUBDIR += py-setuptools-scm SUBDIR += py-setuptools44 SUBDIR += py-setuptools58 SUBDIR += py-setuptools_git_ls_files SUBDIR += py-setuptools_hg SUBDIR += py-setuptools_scm7 SUBDIR += py-setuptools_scm_git_archive SUBDIR += py-sexpdata SUBDIR += py-sgmllib3k SUBDIR += py-sgqlc SUBDIR += py-sh SUBDIR += py-shapely SUBDIR += py-shellingham SUBDIR += py-shpyx SUBDIR += py-shtab SUBDIR += py-signalr-client-aio SUBDIR += py-simple-parsing SUBDIR += py-simple-term-menu SUBDIR += py-simpleeval SUBDIR += py-simplegeneric SUBDIR += py-simplejson SUBDIR += py-simpleparse SUBDIR += py-simpletal SUBDIR += py-simpy SUBDIR += py-single-version SUBDIR += py-sip SUBDIR += py-sirmordred SUBDIR += py-six SUBDIR += py-smmap SUBDIR += py-snakeviz SUBDIR += py-sniffio SUBDIR += py-sortedcontainers SUBDIR += py-sortinghat SUBDIR += py-sourcemap SUBDIR += py-spark-parser SUBDIR += py-sparse SUBDIR += py-speaklater SUBDIR += py-speg SUBDIR += py-spyder-kernels SUBDIR += py-spyder-unittest SUBDIR += py-sqids SUBDIR += py-squint SUBDIR += py-sre-yield SUBDIR += py-srsly SUBDIR += py-stack-data SUBDIR += py-statgrab SUBDIR += py-statsd SUBDIR += py-stdlib-list SUBDIR += py-stdlibs SUBDIR += py-stdnum SUBDIR += py-stestr SUBDIR += py-stevedore SUBDIR += py-stone SUBDIR += py-stopit SUBDIR += py-strategies SUBDIR += py-strawberry-graphql SUBDIR += py-streamparse SUBDIR += py-strenum SUBDIR += py-strict-rfc3339 SUBDIR += py-strictyaml SUBDIR += py-stringbrewer SUBDIR += py-stringcase SUBDIR += py-structlog SUBDIR += py-subprocess-tee SUBDIR += py-subversion SUBDIR += py-sure SUBDIR += py-swagger-spec-validator SUBDIR += py-synr SUBDIR += py-syrupy SUBDIR += py-sysctl SUBDIR += py-sysv_ipc SUBDIR += py-tables SUBDIR += py-tabulate SUBDIR += py-tabulator SUBDIR += py-tailer SUBDIR += py-tapi SUBDIR += py-tarantool-queue SUBDIR += py-tartiflette SUBDIR += py-tartiflette-aiohttp SUBDIR += py-taskflow SUBDIR += py-taskgroup SUBDIR += py-tasklib SUBDIR += py-tblib SUBDIR += py-tdworkflow SUBDIR += py-telepath SUBDIR += py-tempora SUBDIR += py-tenacity SUBDIR += py-tenacity8 SUBDIR += py-tendo SUBDIR += py-termcolor SUBDIR += py-termcolor-whl SUBDIR += py-terminaltexteffects SUBDIR += py-termstyle SUBDIR += py-test-utils SUBDIR += py-testfixtures SUBDIR += py-testinfra SUBDIR += py-testoob SUBDIR += py-testpath SUBDIR += py-testrepository SUBDIR += py-testresources SUBDIR += py-testscenarios SUBDIR += py-testtools SUBDIR += py-textualeffects SUBDIR += py-thefuzz SUBDIR += py-thinc SUBDIR += py-thinc8 SUBDIR += py-threadpoolctl SUBDIR += py-threema-msgapi SUBDIR += py-thrift SUBDIR += py-thriftpy2 SUBDIR += py-tiamat SUBDIR += py-time-machine SUBDIR += py-timelib SUBDIR += py-timeout-decorator SUBDIR += py-tinyarray SUBDIR += py-tinynetrc SUBDIR += py-tinyrpc SUBDIR += py-tipper SUBDIR += py-tokenize-rt SUBDIR += py-toolz SUBDIR += py-tooz SUBDIR += py-toposort SUBDIR += py-tox SUBDIR += py-traceback2 SUBDIR += py-trailrunner SUBDIR += py-traitlets SUBDIR += py-traits SUBDIR += py-traittypes SUBDIR += py-transaction SUBDIR += py-transitions SUBDIR += py-tree-format SUBDIR += py-tree-sitter SUBDIR += py-tree-sitter-languages SUBDIR += py-treelib SUBDIR += py-trimesh SUBDIR += py-trove-classifiers SUBDIR += py-ttictoc SUBDIR += py-ttkbootstrap SUBDIR += py-ttystatus SUBDIR += py-twiggy SUBDIR += py-twilio SUBDIR += py-twine SUBDIR += py-twisted SUBDIR += py-txaio SUBDIR += py-txi2p-tahoe SUBDIR += py-typechecks SUBDIR += py-typeguard SUBDIR += py-typer SUBDIR += py-types-Flask SUBDIR += py-types-Jinja2 SUBDIR += py-types-MarkupSafe SUBDIR += py-types-Pillow SUBDIR += py-types-PyYAML SUBDIR += py-types-Werkzeug SUBDIR += py-types-click SUBDIR += py-types-cryptography SUBDIR += py-types-decorator SUBDIR += py-types-docutils SUBDIR += py-types-futures SUBDIR += py-types-jsonschema SUBDIR += py-types-mock SUBDIR += py-types-protobuf SUBDIR += py-types-psutil SUBDIR += py-types-psycopg2 SUBDIR += py-types-python-dateutil SUBDIR += py-types-requests SUBDIR += py-types-retry SUBDIR += py-types-setuptools SUBDIR += py-types-toml SUBDIR += py-types-typed-ast SUBDIR += py-types-urllib3 SUBDIR += py-typeshed-client SUBDIR += py-typing-extensions SUBDIR += py-typing-inspect SUBDIR += py-tzdata SUBDIR += py-tzlocal SUBDIR += py-u-msgpack-python SUBDIR += py-ua_parser SUBDIR += py-ubelt SUBDIR += py-ufmt SUBDIR += py-uhid-freebsd SUBDIR += py-ujson SUBDIR += py-undefined SUBDIR += py-unearth SUBDIR += py-unicodecsv SUBDIR += py-unicodedata2 SUBDIR += py-unidep SUBDIR += py-unidiff SUBDIR += py-unipath SUBDIR += py-unittest2 SUBDIR += py-unittest2pytest SUBDIR += py-unpaddedbase64 SUBDIR += py-untokenize SUBDIR += py-update_checker SUBDIR += py-uproot SUBDIR += py-urlimport SUBDIR += py-urwid SUBDIR += py-urwid-readline SUBDIR += py-urwidgets SUBDIR += py-urwidtrees SUBDIR += py-us SUBDIR += py-user_agents SUBDIR += py-userpath SUBDIR += py-usort SUBDIR += py-uvloop SUBDIR += py-validate-pyproject SUBDIR += py-validators SUBDIR += py-validictory SUBDIR += py-vcrpy SUBDIR += py-vcver SUBDIR += py-vcversioner SUBDIR += py-vendy SUBDIR += py-venusian SUBDIR += py-verboselogs SUBDIR += py-versioneer SUBDIR += py-versioneer-518 SUBDIR += py-versioningit SUBDIR += py-versiontools SUBDIR += py-verspec SUBDIR += py-vine SUBDIR += py-virtualenv SUBDIR += py-virtualenv-api SUBDIR += py-virtualenv-clone SUBDIR += py-virtualenvwrapper SUBDIR += py-visidata SUBDIR += py-visitor SUBDIR += py-vistir SUBDIR += py-voluptuous SUBDIR += py-voluptuous-serialize SUBDIR += py-vsts SUBDIR += py-vsts-cd-manager SUBDIR += py-vulture SUBDIR += py-wadllib SUBDIR += py-warlock SUBDIR += py-watchdog SUBDIR += py-watchfiles SUBDIR += py-watchgod SUBDIR += py-watermark SUBDIR += py-wcwidth SUBDIR += py-weasel SUBDIR += py-weblib SUBDIR += py-websockets SUBDIR += py-websockify SUBDIR += py-wheel SUBDIR += py-whichcraft SUBDIR += py-whistle SUBDIR += py-widgetsnbextension SUBDIR += py-wimpy SUBDIR += py-wirerope SUBDIR += py-wlc SUBDIR += py-woops SUBDIR += py-wrapt SUBDIR += py-wsgi-intercept SUBDIR += py-wsgi_xmlrpc SUBDIR += py-wsgitools SUBDIR += py-wsgiutils SUBDIR += py-wsme SUBDIR += py-x-wr-timezone SUBDIR += py-xarray SUBDIR += py-xarray-einstats SUBDIR += py-xarray-simlab SUBDIR += py-xasm SUBDIR += py-xattr SUBDIR += py-xdg SUBDIR += py-xdis SUBDIR += py-xdoctest SUBDIR += py-xerox SUBDIR += py-xmltodict SUBDIR += py-xsdata SUBDIR += py-xstatic SUBDIR += py-xstatic-angular SUBDIR += py-xstatic-angular-bootstrap SUBDIR += py-xstatic-angular-fileupload SUBDIR += py-xstatic-angular-gettext SUBDIR += py-xstatic-angular-lrdragndrop SUBDIR += py-xstatic-angular-schema-form SUBDIR += py-xstatic-autosize SUBDIR += py-xstatic-bootstrap SUBDIR += py-xstatic-bootstrap-datepicker SUBDIR += py-xstatic-bootstrap-scss SUBDIR += py-xstatic-bootstrap3 SUBDIR += py-xstatic-bootswatch SUBDIR += py-xstatic-ckeditor SUBDIR += py-xstatic-d3 SUBDIR += py-xstatic-font-awesome SUBDIR += py-xstatic-hogan SUBDIR += py-xstatic-jasmine SUBDIR += py-xstatic-jquery SUBDIR += py-xstatic-jquery-file-upload SUBDIR += py-xstatic-jquery-migrate SUBDIR += py-xstatic-jquery-ui SUBDIR += py-xstatic-jquery.quicksearch SUBDIR += py-xstatic-jquery.tablesorter SUBDIR += py-xstatic-jsencrypt SUBDIR += py-xstatic-mdi SUBDIR += py-xstatic-objectpath SUBDIR += py-xstatic-pygments SUBDIR += py-xstatic-rickshaw SUBDIR += py-xstatic-roboto-fontface SUBDIR += py-xstatic-smart-table SUBDIR += py-xstatic-spin SUBDIR += py-xstatic-svg-edit-moin SUBDIR += py-xstatic-term.js SUBDIR += py-xstatic-tv4 SUBDIR += py-xxhash SUBDIR += py-yacs SUBDIR += py-yamllint SUBDIR += py-yamlordereddictloader SUBDIR += py-yandex-money-sdk SUBDIR += py-yappi SUBDIR += py-yapps2 SUBDIR += py-yarg SUBDIR += py-yaspin SUBDIR += py-yattag SUBDIR += py-yg.lockfile SUBDIR += py-yunomi SUBDIR += py-zarr SUBDIR += py-zc.lockfile SUBDIR += py-zclockfile SUBDIR += py-zconfig SUBDIR += py-zfp SUBDIR += py-zict SUBDIR += py-zipp SUBDIR += py-zope.component SUBDIR += py-zope.configuration SUBDIR += py-zope.deprecation SUBDIR += py-zope.event SUBDIR += py-zope.interface SUBDIR += py-zope.schema SUBDIR += py-zope.testbrowser SUBDIR += py3c SUBDIR += pybind11 SUBDIR += pybind11-json SUBDIR += pybind11_abseil SUBDIR += pybind11_protobuf SUBDIR += pybugz SUBDIR += pycanberra SUBDIR += pycdc SUBDIR += pycharm-ce SUBDIR += pycharm-pro SUBDIR += pycomposefile SUBDIR += pycos SUBDIR += pycount SUBDIR += pydbus-common SUBDIR += pydeps SUBDIR += pyderasn SUBDIR += pyenv SUBDIR += pygobject3-common SUBDIR += pylint SUBDIR += pylyzer SUBDIR += pymsteams SUBDIR += pyobfuscate SUBDIR += pyotherside-qt5 SUBDIR += pyside2 SUBDIR += pyside2-tools SUBDIR += pyside6 SUBDIR += pyside6-tools SUBDIR += pystring SUBDIR += pysvn SUBDIR += pythontidy SUBDIR += pytype SUBDIR += qbe SUBDIR += qca SUBDIR += qconf SUBDIR += qcoro SUBDIR += qgit SUBDIR += qjson SUBDIR += qmake SUBDIR += qschematic SUBDIR += qscintilla2 SUBDIR += qscintilla2-designerplugin SUBDIR += qt-maybe SUBDIR += qt5 SUBDIR += qt5-assistant SUBDIR += qt5-buildtools SUBDIR += qt5-concurrent SUBDIR += qt5-core SUBDIR += qt5-dbus SUBDIR += qt5-designer SUBDIR += qt5-help SUBDIR += qt5-linguist SUBDIR += qt5-linguisttools SUBDIR += qt5-location SUBDIR += qt5-qdbus SUBDIR += qt5-qdbusviewer SUBDIR += qt5-qdoc SUBDIR += qt5-qdoc-data SUBDIR += qt5-qmake SUBDIR += qt5-remoteobjects SUBDIR += qt5-script SUBDIR += qt5-scripttools SUBDIR += qt5-scxml SUBDIR += qt5-testlib SUBDIR += qt5-uitools SUBDIR += qt6 SUBDIR += qt6-5compat SUBDIR += qt6-base SUBDIR += qt6-grpc SUBDIR += qt6-languageserver SUBDIR += qt6-location SUBDIR += qt6-positioning SUBDIR += qt6-remoteobjects SUBDIR += qt6-scxml SUBDIR += qt6-tools SUBDIR += qt6-translations SUBDIR += qtcreator SUBDIR += qtutilities SUBDIR += quantum SUBDIR += quickcheck++ SUBDIR += quickcpplib SUBDIR += quill SUBDIR += quilt SUBDIR += qxlsx SUBDIR += rabs SUBDIR += radare2 SUBDIR += radian SUBDIR += radicle SUBDIR += ragel SUBDIR += raknet SUBDIR += random123 SUBDIR += rang SUBDIR += range-v3 SUBDIR += rapidcheck SUBDIR += rapidfuzz-cpp SUBDIR += rapidjson SUBDIR += rapidyaml SUBDIR += rationl SUBDIR += raylib SUBDIR += rbenv SUBDIR += rbtools SUBDIR += rclint SUBDIR += rcs SUBDIR += rcs57 SUBDIR += re2 SUBDIR += re2c SUBDIR += readerwriterqueue SUBDIR += readline SUBDIR += rebar SUBDIR += rebar3 SUBDIR += recycle SUBDIR += redasm SUBDIR += redo SUBDIR += regexx SUBDIR += regexxer SUBDIR += remake SUBDIR += remotery SUBDIR += replay SUBDIR += replxx SUBDIR += reproc SUBDIR += resolv_wrapper SUBDIR += revive SUBDIR += rgbds SUBDIR += rgxg SUBDIR += rhtvision SUBDIR += rinutils SUBDIR += riscv32-unknown-elf-gcc SUBDIR += riscv64-none-elf-gcc SUBDIR += rkcommon SUBDIR += rlog SUBDIR += rlwrap SUBDIR += robin-hood-hashing SUBDIR += robin-map SUBDIR += roboctl SUBDIR += robodoc SUBDIR += root SUBDIR += ros-catkin SUBDIR += ros-catkin_pkg SUBDIR += ros-console_bridge SUBDIR += ros-rosdep SUBDIR += ros-rosdistro SUBDIR += ros-rosinstall_generator SUBDIR += ros-rospkg SUBDIR += ros-urdfdom SUBDIR += ros-urdfdom_headers SUBDIR += ros-vcstool SUBDIR += ros-vcstools SUBDIR += ros-wstool SUBDIR += roswell SUBDIR += rote SUBDIR += rpc2 SUBDIR += rpclib SUBDIR += rsvndump SUBDIR += rttr SUBDIR += ruby-bsearch SUBDIR += ruby-build SUBDIR += ruby-gems SUBDIR += ruby-install SUBDIR += ruby-rbprof SUBDIR += ruby-setup.rb SUBDIR += ruby-subversion SUBDIR += rubygem-CFPropertyList SUBDIR += rubygem-abstract SUBDIR += rubygem-actionpack-action_caching SUBDIR += rubygem-actionpack-page_caching SUBDIR += rubygem-actionview4 SUBDIR += rubygem-actionview5 SUBDIR += rubygem-actionview50 SUBDIR += rubygem-actionview52 SUBDIR += rubygem-actionview60 SUBDIR += rubygem-actionview61 SUBDIR += rubygem-actionview70 SUBDIR += rubygem-actionview71 SUBDIR += rubygem-actionview72 SUBDIR += rubygem-active_hash SUBDIR += rubygem-active_scaffold SUBDIR += rubygem-activejob4 SUBDIR += rubygem-activejob5 SUBDIR += rubygem-activejob50 SUBDIR += rubygem-activejob52 SUBDIR += rubygem-activejob60 SUBDIR += rubygem-activejob61 SUBDIR += rubygem-activejob70 SUBDIR += rubygem-activejob71 SUBDIR += rubygem-activejob72 SUBDIR += rubygem-activemessaging SUBDIR += rubygem-activerecord-deprecated_finders SUBDIR += rubygem-activesupport4 SUBDIR += rubygem-activesupport5 SUBDIR += rubygem-activesupport50 SUBDIR += rubygem-activesupport52 SUBDIR += rubygem-activesupport60 SUBDIR += rubygem-activesupport61 SUBDIR += rubygem-activesupport70 SUBDIR += rubygem-activesupport71 SUBDIR += rubygem-activesupport72 SUBDIR += rubygem-airborne SUBDIR += rubygem-akismet SUBDIR += rubygem-algebrick SUBDIR += rubygem-algorithms SUBDIR += rubygem-aliyun-sdk SUBDIR += rubygem-allison SUBDIR += rubygem-amazing_print SUBDIR += rubygem-analogger SUBDIR += rubygem-annoy SUBDIR += rubygem-ansi SUBDIR += rubygem-apipie-bindings SUBDIR += rubygem-apipie-params SUBDIR += rubygem-app_config SUBDIR += rubygem-appraisal SUBDIR += rubygem-arr-pm SUBDIR += rubygem-arrayfields SUBDIR += rubygem-ascii85 SUBDIR += rubygem-asetus SUBDIR += rubygem-aspectr SUBDIR += rubygem-ast SUBDIR += rubygem-astrolabe SUBDIR += rubygem-async SUBDIR += rubygem-async-io SUBDIR += rubygem-async212 SUBDIR += rubygem-atomic SUBDIR += rubygem-attic SUBDIR += rubygem-attr_required SUBDIR += rubygem-authlogic SUBDIR += rubygem-avro SUBDIR += rubygem-awesome_print SUBDIR += rubygem-awrence SUBDIR += rubygem-aws-crt SUBDIR += rubygem-aws-eventstream SUBDIR += rubygem-aws-partitions SUBDIR += rubygem-aws-sdk SUBDIR += rubygem-aws-sdk-accessanalyzer SUBDIR += rubygem-aws-sdk-account SUBDIR += rubygem-aws-sdk-acm SUBDIR += rubygem-aws-sdk-acmpca SUBDIR += rubygem-aws-sdk-alexaforbusiness SUBDIR += rubygem-aws-sdk-amplify SUBDIR += rubygem-aws-sdk-amplifybackend SUBDIR += rubygem-aws-sdk-amplifyuibuilder SUBDIR += rubygem-aws-sdk-apigateway SUBDIR += rubygem-aws-sdk-apigatewaymanagementapi SUBDIR += rubygem-aws-sdk-apigatewayv2 SUBDIR += rubygem-aws-sdk-appconfig SUBDIR += rubygem-aws-sdk-appconfigdata SUBDIR += rubygem-aws-sdk-appfabric SUBDIR += rubygem-aws-sdk-appflow SUBDIR += rubygem-aws-sdk-appintegrationsservice SUBDIR += rubygem-aws-sdk-applicationautoscaling SUBDIR += rubygem-aws-sdk-applicationcostprofiler SUBDIR += rubygem-aws-sdk-applicationdiscoveryservice SUBDIR += rubygem-aws-sdk-applicationinsights SUBDIR += rubygem-aws-sdk-applicationsignals SUBDIR += rubygem-aws-sdk-appmesh SUBDIR += rubygem-aws-sdk-appregistry SUBDIR += rubygem-aws-sdk-apprunner SUBDIR += rubygem-aws-sdk-appstream SUBDIR += rubygem-aws-sdk-appsync SUBDIR += rubygem-aws-sdk-apptest SUBDIR += rubygem-aws-sdk-arczonalshift SUBDIR += rubygem-aws-sdk-artifact SUBDIR += rubygem-aws-sdk-athena SUBDIR += rubygem-aws-sdk-auditmanager SUBDIR += rubygem-aws-sdk-augmentedairuntime SUBDIR += rubygem-aws-sdk-autoscaling SUBDIR += rubygem-aws-sdk-autoscalingplans SUBDIR += rubygem-aws-sdk-b2bi SUBDIR += rubygem-aws-sdk-backup SUBDIR += rubygem-aws-sdk-backupgateway SUBDIR += rubygem-aws-sdk-backupstorage SUBDIR += rubygem-aws-sdk-batch SUBDIR += rubygem-aws-sdk-bcmdataexports SUBDIR += rubygem-aws-sdk-bedrock SUBDIR += rubygem-aws-sdk-bedrockagent SUBDIR += rubygem-aws-sdk-bedrockagentruntime SUBDIR += rubygem-aws-sdk-bedrockruntime SUBDIR += rubygem-aws-sdk-billingconductor SUBDIR += rubygem-aws-sdk-braket SUBDIR += rubygem-aws-sdk-budgets SUBDIR += rubygem-aws-sdk-chatbot SUBDIR += rubygem-aws-sdk-chime SUBDIR += rubygem-aws-sdk-chimesdkidentity SUBDIR += rubygem-aws-sdk-chimesdkmediapipelines SUBDIR += rubygem-aws-sdk-chimesdkmeetings SUBDIR += rubygem-aws-sdk-chimesdkmessaging SUBDIR += rubygem-aws-sdk-chimesdkvoice SUBDIR += rubygem-aws-sdk-cleanrooms SUBDIR += rubygem-aws-sdk-cleanroomsml SUBDIR += rubygem-aws-sdk-cloud9 SUBDIR += rubygem-aws-sdk-cloudcontrolapi SUBDIR += rubygem-aws-sdk-clouddirectory SUBDIR += rubygem-aws-sdk-cloudformation SUBDIR += rubygem-aws-sdk-cloudformation-gitlab SUBDIR += rubygem-aws-sdk-cloudfront SUBDIR += rubygem-aws-sdk-cloudfrontkeyvaluestore SUBDIR += rubygem-aws-sdk-cloudhsm SUBDIR += rubygem-aws-sdk-cloudhsmv2 SUBDIR += rubygem-aws-sdk-cloudsearch SUBDIR += rubygem-aws-sdk-cloudsearchdomain SUBDIR += rubygem-aws-sdk-cloudtrail SUBDIR += rubygem-aws-sdk-cloudtraildata SUBDIR += rubygem-aws-sdk-cloudwatch SUBDIR += rubygem-aws-sdk-cloudwatchevents SUBDIR += rubygem-aws-sdk-cloudwatchevidently SUBDIR += rubygem-aws-sdk-cloudwatchlogs SUBDIR += rubygem-aws-sdk-cloudwatchrum SUBDIR += rubygem-aws-sdk-codeartifact SUBDIR += rubygem-aws-sdk-codebuild SUBDIR += rubygem-aws-sdk-codecatalyst SUBDIR += rubygem-aws-sdk-codecommit SUBDIR += rubygem-aws-sdk-codeconnections SUBDIR += rubygem-aws-sdk-codedeploy SUBDIR += rubygem-aws-sdk-codeguruprofiler SUBDIR += rubygem-aws-sdk-codegurureviewer SUBDIR += rubygem-aws-sdk-codegurusecurity SUBDIR += rubygem-aws-sdk-codepipeline SUBDIR += rubygem-aws-sdk-codestar SUBDIR += rubygem-aws-sdk-codestarconnections SUBDIR += rubygem-aws-sdk-codestarnotifications SUBDIR += rubygem-aws-sdk-cognitoidentity SUBDIR += rubygem-aws-sdk-cognitoidentityprovider SUBDIR += rubygem-aws-sdk-cognitosync SUBDIR += rubygem-aws-sdk-comprehend SUBDIR += rubygem-aws-sdk-comprehendmedical SUBDIR += rubygem-aws-sdk-computeoptimizer SUBDIR += rubygem-aws-sdk-configservice SUBDIR += rubygem-aws-sdk-connect SUBDIR += rubygem-aws-sdk-connectcampaignservice SUBDIR += rubygem-aws-sdk-connectcases SUBDIR += rubygem-aws-sdk-connectcontactlens SUBDIR += rubygem-aws-sdk-connectparticipant SUBDIR += rubygem-aws-sdk-connectwisdomservice SUBDIR += rubygem-aws-sdk-controlcatalog SUBDIR += rubygem-aws-sdk-controltower SUBDIR += rubygem-aws-sdk-core SUBDIR += rubygem-aws-sdk-core-gitlab SUBDIR += rubygem-aws-sdk-core2 SUBDIR += rubygem-aws-sdk-costandusagereportservice SUBDIR += rubygem-aws-sdk-costexplorer SUBDIR += rubygem-aws-sdk-costoptimizationhub SUBDIR += rubygem-aws-sdk-customerprofiles SUBDIR += rubygem-aws-sdk-databasemigrationservice SUBDIR += rubygem-aws-sdk-dataexchange SUBDIR += rubygem-aws-sdk-datapipeline SUBDIR += rubygem-aws-sdk-datasync SUBDIR += rubygem-aws-sdk-datazone SUBDIR += rubygem-aws-sdk-dax SUBDIR += rubygem-aws-sdk-deadline SUBDIR += rubygem-aws-sdk-detective SUBDIR += rubygem-aws-sdk-devicefarm SUBDIR += rubygem-aws-sdk-devopsguru SUBDIR += rubygem-aws-sdk-directconnect SUBDIR += rubygem-aws-sdk-directoryservice SUBDIR += rubygem-aws-sdk-directoryservicedata SUBDIR += rubygem-aws-sdk-dlm SUBDIR += rubygem-aws-sdk-docdb SUBDIR += rubygem-aws-sdk-docdbelastic SUBDIR += rubygem-aws-sdk-drs SUBDIR += rubygem-aws-sdk-dynamodb SUBDIR += rubygem-aws-sdk-dynamodbstreams SUBDIR += rubygem-aws-sdk-ebs SUBDIR += rubygem-aws-sdk-ec2 SUBDIR += rubygem-aws-sdk-ec2instanceconnect SUBDIR += rubygem-aws-sdk-ecr SUBDIR += rubygem-aws-sdk-ecrpublic SUBDIR += rubygem-aws-sdk-ecs SUBDIR += rubygem-aws-sdk-efs SUBDIR += rubygem-aws-sdk-eks SUBDIR += rubygem-aws-sdk-eksauth SUBDIR += rubygem-aws-sdk-elasticache SUBDIR += rubygem-aws-sdk-elasticbeanstalk SUBDIR += rubygem-aws-sdk-elasticinference SUBDIR += rubygem-aws-sdk-elasticloadbalancing SUBDIR += rubygem-aws-sdk-elasticloadbalancingv2 SUBDIR += rubygem-aws-sdk-elasticsearchservice SUBDIR += rubygem-aws-sdk-elastictranscoder SUBDIR += rubygem-aws-sdk-emr SUBDIR += rubygem-aws-sdk-emrcontainers SUBDIR += rubygem-aws-sdk-emrserverless SUBDIR += rubygem-aws-sdk-entityresolution SUBDIR += rubygem-aws-sdk-eventbridge SUBDIR += rubygem-aws-sdk-finspace SUBDIR += rubygem-aws-sdk-finspacedata SUBDIR += rubygem-aws-sdk-firehose SUBDIR += rubygem-aws-sdk-fis SUBDIR += rubygem-aws-sdk-fms SUBDIR += rubygem-aws-sdk-forecastqueryservice SUBDIR += rubygem-aws-sdk-forecastservice SUBDIR += rubygem-aws-sdk-frauddetector SUBDIR += rubygem-aws-sdk-freetier SUBDIR += rubygem-aws-sdk-fsx SUBDIR += rubygem-aws-sdk-gamelift SUBDIR += rubygem-aws-sdk-gamesparks SUBDIR += rubygem-aws-sdk-glacier SUBDIR += rubygem-aws-sdk-globalaccelerator SUBDIR += rubygem-aws-sdk-glue SUBDIR += rubygem-aws-sdk-gluedatabrew SUBDIR += rubygem-aws-sdk-greengrass SUBDIR += rubygem-aws-sdk-greengrassv2 SUBDIR += rubygem-aws-sdk-groundstation SUBDIR += rubygem-aws-sdk-guardduty SUBDIR += rubygem-aws-sdk-health SUBDIR += rubygem-aws-sdk-healthlake SUBDIR += rubygem-aws-sdk-honeycode SUBDIR += rubygem-aws-sdk-iam SUBDIR += rubygem-aws-sdk-identitystore SUBDIR += rubygem-aws-sdk-imagebuilder SUBDIR += rubygem-aws-sdk-importexport SUBDIR += rubygem-aws-sdk-inspector SUBDIR += rubygem-aws-sdk-inspector2 SUBDIR += rubygem-aws-sdk-inspectorscan SUBDIR += rubygem-aws-sdk-internetmonitor SUBDIR += rubygem-aws-sdk-iot SUBDIR += rubygem-aws-sdk-iot1clickdevicesservice SUBDIR += rubygem-aws-sdk-iot1clickprojects SUBDIR += rubygem-aws-sdk-iotanalytics SUBDIR += rubygem-aws-sdk-iotdataplane SUBDIR += rubygem-aws-sdk-iotdeviceadvisor SUBDIR += rubygem-aws-sdk-iotevents SUBDIR += rubygem-aws-sdk-ioteventsdata SUBDIR += rubygem-aws-sdk-iotfleethub SUBDIR += rubygem-aws-sdk-iotfleetwise SUBDIR += rubygem-aws-sdk-iotjobsdataplane SUBDIR += rubygem-aws-sdk-iotroborunner SUBDIR += rubygem-aws-sdk-iotsecuretunneling SUBDIR += rubygem-aws-sdk-iotsitewise SUBDIR += rubygem-aws-sdk-iotthingsgraph SUBDIR += rubygem-aws-sdk-iottwinmaker SUBDIR += rubygem-aws-sdk-iotwireless SUBDIR += rubygem-aws-sdk-ivs SUBDIR += rubygem-aws-sdk-ivschat SUBDIR += rubygem-aws-sdk-ivsrealtime SUBDIR += rubygem-aws-sdk-kafka SUBDIR += rubygem-aws-sdk-kafkaconnect SUBDIR += rubygem-aws-sdk-kendra SUBDIR += rubygem-aws-sdk-kendraranking SUBDIR += rubygem-aws-sdk-keyspaces SUBDIR += rubygem-aws-sdk-kinesis SUBDIR += rubygem-aws-sdk-kinesisanalytics SUBDIR += rubygem-aws-sdk-kinesisanalyticsv2 SUBDIR += rubygem-aws-sdk-kinesisvideo SUBDIR += rubygem-aws-sdk-kinesisvideoarchivedmedia SUBDIR += rubygem-aws-sdk-kinesisvideomedia SUBDIR += rubygem-aws-sdk-kinesisvideosignalingchannels SUBDIR += rubygem-aws-sdk-kinesisvideowebrtcstorage SUBDIR += rubygem-aws-sdk-kms SUBDIR += rubygem-aws-sdk-kms-gitlab SUBDIR += rubygem-aws-sdk-lakeformation SUBDIR += rubygem-aws-sdk-lambda SUBDIR += rubygem-aws-sdk-lambdapreview SUBDIR += rubygem-aws-sdk-launchwizard SUBDIR += rubygem-aws-sdk-lex SUBDIR += rubygem-aws-sdk-lexmodelbuildingservice SUBDIR += rubygem-aws-sdk-lexmodelsv2 SUBDIR += rubygem-aws-sdk-lexruntimev2 SUBDIR += rubygem-aws-sdk-licensemanager SUBDIR += rubygem-aws-sdk-licensemanagerlinuxsubscriptions SUBDIR += rubygem-aws-sdk-licensemanagerusersubscriptions SUBDIR += rubygem-aws-sdk-lightsail SUBDIR += rubygem-aws-sdk-locationservice SUBDIR += rubygem-aws-sdk-lookoutequipment SUBDIR += rubygem-aws-sdk-lookoutforvision SUBDIR += rubygem-aws-sdk-lookoutmetrics SUBDIR += rubygem-aws-sdk-machinelearning SUBDIR += rubygem-aws-sdk-macie2 SUBDIR += rubygem-aws-sdk-mailmanager SUBDIR += rubygem-aws-sdk-mainframemodernization SUBDIR += rubygem-aws-sdk-managedblockchain SUBDIR += rubygem-aws-sdk-managedblockchainquery SUBDIR += rubygem-aws-sdk-managedgrafana SUBDIR += rubygem-aws-sdk-marketplaceagreement SUBDIR += rubygem-aws-sdk-marketplacecatalog SUBDIR += rubygem-aws-sdk-marketplacecommerceanalytics SUBDIR += rubygem-aws-sdk-marketplacedeployment SUBDIR += rubygem-aws-sdk-marketplaceentitlementservice SUBDIR += rubygem-aws-sdk-marketplacemetering SUBDIR += rubygem-aws-sdk-marketplacereporting SUBDIR += rubygem-aws-sdk-mediaconnect SUBDIR += rubygem-aws-sdk-mediaconvert SUBDIR += rubygem-aws-sdk-medialive SUBDIR += rubygem-aws-sdk-mediapackage SUBDIR += rubygem-aws-sdk-mediapackagev2 SUBDIR += rubygem-aws-sdk-mediapackagevod SUBDIR += rubygem-aws-sdk-mediastore SUBDIR += rubygem-aws-sdk-mediastoredata SUBDIR += rubygem-aws-sdk-mediatailor SUBDIR += rubygem-aws-sdk-medicalimaging SUBDIR += rubygem-aws-sdk-memorydb SUBDIR += rubygem-aws-sdk-mgn SUBDIR += rubygem-aws-sdk-migrationhub SUBDIR += rubygem-aws-sdk-migrationhubconfig SUBDIR += rubygem-aws-sdk-migrationhuborchestrator SUBDIR += rubygem-aws-sdk-migrationhubrefactorspaces SUBDIR += rubygem-aws-sdk-migrationhubstrategyrecommendations SUBDIR += rubygem-aws-sdk-mobile SUBDIR += rubygem-aws-sdk-mq SUBDIR += rubygem-aws-sdk-mturk SUBDIR += rubygem-aws-sdk-mwaa SUBDIR += rubygem-aws-sdk-neptune SUBDIR += rubygem-aws-sdk-neptunedata SUBDIR += rubygem-aws-sdk-neptunegraph SUBDIR += rubygem-aws-sdk-networkfirewall SUBDIR += rubygem-aws-sdk-networkmanager SUBDIR += rubygem-aws-sdk-networkmonitor SUBDIR += rubygem-aws-sdk-nimblestudio SUBDIR += rubygem-aws-sdk-oam SUBDIR += rubygem-aws-sdk-omics SUBDIR += rubygem-aws-sdk-opensearchserverless SUBDIR += rubygem-aws-sdk-opensearchservice SUBDIR += rubygem-aws-sdk-opsworks SUBDIR += rubygem-aws-sdk-opsworkscm SUBDIR += rubygem-aws-sdk-organizations SUBDIR += rubygem-aws-sdk-osis SUBDIR += rubygem-aws-sdk-outposts SUBDIR += rubygem-aws-sdk-panorama SUBDIR += rubygem-aws-sdk-paymentcryptography SUBDIR += rubygem-aws-sdk-paymentcryptographydata SUBDIR += rubygem-aws-sdk-pcaconnectorad SUBDIR += rubygem-aws-sdk-pcaconnectorscep SUBDIR += rubygem-aws-sdk-pcs SUBDIR += rubygem-aws-sdk-personalize SUBDIR += rubygem-aws-sdk-personalizeevents SUBDIR += rubygem-aws-sdk-personalizeruntime SUBDIR += rubygem-aws-sdk-pi SUBDIR += rubygem-aws-sdk-pinpoint SUBDIR += rubygem-aws-sdk-pinpointemail SUBDIR += rubygem-aws-sdk-pinpointsmsvoice SUBDIR += rubygem-aws-sdk-pinpointsmsvoicev2 SUBDIR += rubygem-aws-sdk-pipes SUBDIR += rubygem-aws-sdk-polly SUBDIR += rubygem-aws-sdk-pricing SUBDIR += rubygem-aws-sdk-privatenetworks SUBDIR += rubygem-aws-sdk-prometheusservice SUBDIR += rubygem-aws-sdk-proton SUBDIR += rubygem-aws-sdk-qapps SUBDIR += rubygem-aws-sdk-qbusiness SUBDIR += rubygem-aws-sdk-qconnect SUBDIR += rubygem-aws-sdk-qldb SUBDIR += rubygem-aws-sdk-qldbsession SUBDIR += rubygem-aws-sdk-quicksight SUBDIR += rubygem-aws-sdk-ram SUBDIR += rubygem-aws-sdk-rds SUBDIR += rubygem-aws-sdk-rdsdataservice SUBDIR += rubygem-aws-sdk-recyclebin SUBDIR += rubygem-aws-sdk-redshift SUBDIR += rubygem-aws-sdk-redshiftdataapiservice SUBDIR += rubygem-aws-sdk-redshiftserverless SUBDIR += rubygem-aws-sdk-rekognition SUBDIR += rubygem-aws-sdk-repostspace SUBDIR += rubygem-aws-sdk-resiliencehub SUBDIR += rubygem-aws-sdk-resourceexplorer2 SUBDIR += rubygem-aws-sdk-resourcegroups SUBDIR += rubygem-aws-sdk-resourcegroupstaggingapi SUBDIR += rubygem-aws-sdk-resources SUBDIR += rubygem-aws-sdk-resources2 SUBDIR += rubygem-aws-sdk-robomaker SUBDIR += rubygem-aws-sdk-rolesanywhere SUBDIR += rubygem-aws-sdk-route53 SUBDIR += rubygem-aws-sdk-route53domains SUBDIR += rubygem-aws-sdk-route53profiles SUBDIR += rubygem-aws-sdk-route53recoverycluster SUBDIR += rubygem-aws-sdk-route53recoverycontrolconfig SUBDIR += rubygem-aws-sdk-route53recoveryreadiness SUBDIR += rubygem-aws-sdk-route53resolver SUBDIR += rubygem-aws-sdk-s3 SUBDIR += rubygem-aws-sdk-s3-gitlab SUBDIR += rubygem-aws-sdk-s3control SUBDIR += rubygem-aws-sdk-s3outposts SUBDIR += rubygem-aws-sdk-sagemaker SUBDIR += rubygem-aws-sdk-sagemakeredgemanager SUBDIR += rubygem-aws-sdk-sagemakerfeaturestoreruntime SUBDIR += rubygem-aws-sdk-sagemakergeospatial SUBDIR += rubygem-aws-sdk-sagemakermetrics SUBDIR += rubygem-aws-sdk-sagemakerruntime SUBDIR += rubygem-aws-sdk-savingsplans SUBDIR += rubygem-aws-sdk-scheduler SUBDIR += rubygem-aws-sdk-schemas SUBDIR += rubygem-aws-sdk-secretsmanager SUBDIR += rubygem-aws-sdk-securityhub SUBDIR += rubygem-aws-sdk-securitylake SUBDIR += rubygem-aws-sdk-serverlessapplicationrepository SUBDIR += rubygem-aws-sdk-servicecatalog SUBDIR += rubygem-aws-sdk-servicediscovery SUBDIR += rubygem-aws-sdk-servicequotas SUBDIR += rubygem-aws-sdk-ses SUBDIR += rubygem-aws-sdk-sesv2 SUBDIR += rubygem-aws-sdk-shield SUBDIR += rubygem-aws-sdk-signer SUBDIR += rubygem-aws-sdk-simpledb SUBDIR += rubygem-aws-sdk-simspaceweaver SUBDIR += rubygem-aws-sdk-sms SUBDIR += rubygem-aws-sdk-snowball SUBDIR += rubygem-aws-sdk-snowdevicemanagement SUBDIR += rubygem-aws-sdk-sns SUBDIR += rubygem-aws-sdk-socialmessaging SUBDIR += rubygem-aws-sdk-sqs SUBDIR += rubygem-aws-sdk-ssm SUBDIR += rubygem-aws-sdk-ssmcontacts SUBDIR += rubygem-aws-sdk-ssmincidents SUBDIR += rubygem-aws-sdk-ssmquicksetup SUBDIR += rubygem-aws-sdk-ssmsap SUBDIR += rubygem-aws-sdk-ssoadmin SUBDIR += rubygem-aws-sdk-ssooidc SUBDIR += rubygem-aws-sdk-states SUBDIR += rubygem-aws-sdk-storagegateway SUBDIR += rubygem-aws-sdk-supplychain SUBDIR += rubygem-aws-sdk-support SUBDIR += rubygem-aws-sdk-supportapp SUBDIR += rubygem-aws-sdk-swf SUBDIR += rubygem-aws-sdk-synthetics SUBDIR += rubygem-aws-sdk-taxsettings SUBDIR += rubygem-aws-sdk-textract SUBDIR += rubygem-aws-sdk-timestreaminfluxdb SUBDIR += rubygem-aws-sdk-timestreamquery SUBDIR += rubygem-aws-sdk-timestreamwrite SUBDIR += rubygem-aws-sdk-tnb SUBDIR += rubygem-aws-sdk-transcribeservice SUBDIR += rubygem-aws-sdk-transcribestreamingservice SUBDIR += rubygem-aws-sdk-transfer SUBDIR += rubygem-aws-sdk-translate SUBDIR += rubygem-aws-sdk-trustedadvisor SUBDIR += rubygem-aws-sdk-verifiedpermissions SUBDIR += rubygem-aws-sdk-voiceid SUBDIR += rubygem-aws-sdk-vpclattice SUBDIR += rubygem-aws-sdk-waf SUBDIR += rubygem-aws-sdk-wafregional SUBDIR += rubygem-aws-sdk-wafv2 SUBDIR += rubygem-aws-sdk-wellarchitected SUBDIR += rubygem-aws-sdk-workdocs SUBDIR += rubygem-aws-sdk-worklink SUBDIR += rubygem-aws-sdk-workmail SUBDIR += rubygem-aws-sdk-workmailmessageflow SUBDIR += rubygem-aws-sdk-workspaces SUBDIR += rubygem-aws-sdk-workspacesthinclient SUBDIR += rubygem-aws-sdk-workspacesweb SUBDIR += rubygem-aws-sdk-xray SUBDIR += rubygem-aws-sdk2 SUBDIR += rubygem-aws-sigv2 SUBDIR += rubygem-aws-sigv4 SUBDIR += rubygem-axiom-types SUBDIR += rubygem-azure-storage SUBDIR += rubygem-azure-storage-blob SUBDIR += rubygem-azure-storage-common SUBDIR += rubygem-azure-storage-file SUBDIR += rubygem-azure-storage-queue SUBDIR += rubygem-azure-storage-table SUBDIR += rubygem-azure_cognitiveservices_anomalydetector SUBDIR += rubygem-azure_cognitiveservices_autosuggest SUBDIR += rubygem-azure_cognitiveservices_computervision SUBDIR += rubygem-azure_cognitiveservices_contentmoderator SUBDIR += rubygem-azure_cognitiveservices_customimagesearch SUBDIR += rubygem-azure_cognitiveservices_customsearch SUBDIR += rubygem-azure_cognitiveservices_customvisionprediction SUBDIR += rubygem-azure_cognitiveservices_customvisiontraining SUBDIR += rubygem-azure_cognitiveservices_entitysearch SUBDIR += rubygem-azure_cognitiveservices_face SUBDIR += rubygem-azure_cognitiveservices_formrecognizer SUBDIR += rubygem-azure_cognitiveservices_imagesearch SUBDIR += rubygem-azure_cognitiveservices_localsearch SUBDIR += rubygem-azure_cognitiveservices_luisauthoring SUBDIR += rubygem-azure_cognitiveservices_luisruntime SUBDIR += rubygem-azure_cognitiveservices_newssearch SUBDIR += rubygem-azure_cognitiveservices_personalizer SUBDIR += rubygem-azure_cognitiveservices_qnamaker SUBDIR += rubygem-azure_cognitiveservices_qnamakerruntime SUBDIR += rubygem-azure_cognitiveservices_spellcheck SUBDIR += rubygem-azure_cognitiveservices_textanalytics SUBDIR += rubygem-azure_cognitiveservices_videosearch SUBDIR += rubygem-azure_cognitiveservices_visualsearch SUBDIR += rubygem-azure_cognitiveservices_websearch SUBDIR += rubygem-azure_event_grid SUBDIR += rubygem-azure_graph_rbac SUBDIR += rubygem-azure_key_vault SUBDIR += rubygem-azure_mgmt_adhybridhealth_service SUBDIR += rubygem-azure_mgmt_advisor SUBDIR += rubygem-azure_mgmt_alerts_management SUBDIR += rubygem-azure_mgmt_analysis_services SUBDIR += rubygem-azure_mgmt_api_management SUBDIR += rubygem-azure_mgmt_appconfiguration SUBDIR += rubygem-azure_mgmt_attestation SUBDIR += rubygem-azure_mgmt_authorization SUBDIR += rubygem-azure_mgmt_automanage SUBDIR += rubygem-azure_mgmt_automation SUBDIR += rubygem-azure_mgmt_azurestack SUBDIR += rubygem-azure_mgmt_azurestack_hci SUBDIR += rubygem-azure_mgmt_batch SUBDIR += rubygem-azure_mgmt_batchai SUBDIR += rubygem-azure_mgmt_billing SUBDIR += rubygem-azure_mgmt_bot_service SUBDIR += rubygem-azure_mgmt_cdn SUBDIR += rubygem-azure_mgmt_cognitive_services SUBDIR += rubygem-azure_mgmt_commerce SUBDIR += rubygem-azure_mgmt_compute SUBDIR += rubygem-azure_mgmt_consumption SUBDIR += rubygem-azure_mgmt_container_instance SUBDIR += rubygem-azure_mgmt_container_registry SUBDIR += rubygem-azure_mgmt_container_service SUBDIR += rubygem-azure_mgmt_cosmosdb SUBDIR += rubygem-azure_mgmt_cost_management SUBDIR += rubygem-azure_mgmt_customer_insights SUBDIR += rubygem-azure_mgmt_data_factory SUBDIR += rubygem-azure_mgmt_data_migration SUBDIR += rubygem-azure_mgmt_databox SUBDIR += rubygem-azure_mgmt_datalake_analytics SUBDIR += rubygem-azure_mgmt_datalake_store SUBDIR += rubygem-azure_mgmt_datashare SUBDIR += rubygem-azure_mgmt_deployment_manager SUBDIR += rubygem-azure_mgmt_dev_spaces SUBDIR += rubygem-azure_mgmt_devtestlabs SUBDIR += rubygem-azure_mgmt_digitaltwins SUBDIR += rubygem-azure_mgmt_dns SUBDIR += rubygem-azure_mgmt_edgegateway SUBDIR += rubygem-azure_mgmt_event_grid SUBDIR += rubygem-azure_mgmt_event_hub SUBDIR += rubygem-azure_mgmt_features SUBDIR += rubygem-azure_mgmt_hanaonazure SUBDIR += rubygem-azure_mgmt_hdinsight SUBDIR += rubygem-azure_mgmt_hybrid_compute SUBDIR += rubygem-azure_mgmt_import_export SUBDIR += rubygem-azure_mgmt_iot_central SUBDIR += rubygem-azure_mgmt_iot_hub SUBDIR += rubygem-azure_mgmt_key_vault SUBDIR += rubygem-azure_mgmt_kubernetes_configuration SUBDIR += rubygem-azure_mgmt_kusto SUBDIR += rubygem-azure_mgmt_labservices SUBDIR += rubygem-azure_mgmt_links SUBDIR += rubygem-azure_mgmt_locks SUBDIR += rubygem-azure_mgmt_logic SUBDIR += rubygem-azure_mgmt_machine_learning SUBDIR += rubygem-azure_mgmt_machine_learning_services SUBDIR += rubygem-azure_mgmt_maintenance SUBDIR += rubygem-azure_mgmt_managed_applications SUBDIR += rubygem-azure_mgmt_mariadb SUBDIR += rubygem-azure_mgmt_marketplace_ordering SUBDIR += rubygem-azure_mgmt_media_services SUBDIR += rubygem-azure_mgmt_migrate SUBDIR += rubygem-azure_mgmt_mixedreality SUBDIR += rubygem-azure_mgmt_monitor SUBDIR += rubygem-azure_mgmt_msi SUBDIR += rubygem-azure_mgmt_mysql SUBDIR += rubygem-azure_mgmt_netapp SUBDIR += rubygem-azure_mgmt_network SUBDIR += rubygem-azure_mgmt_notification_hubs SUBDIR += rubygem-azure_mgmt_operational_insights SUBDIR += rubygem-azure_mgmt_operations_management SUBDIR += rubygem-azure_mgmt_peering SUBDIR += rubygem-azure_mgmt_policy SUBDIR += rubygem-azure_mgmt_policy_insights SUBDIR += rubygem-azure_mgmt_portal SUBDIR += rubygem-azure_mgmt_postgresql SUBDIR += rubygem-azure_mgmt_powerbi_dedicated SUBDIR += rubygem-azure_mgmt_powerbi_embedded SUBDIR += rubygem-azure_mgmt_privatedns SUBDIR += rubygem-azure_mgmt_recovery_services SUBDIR += rubygem-azure_mgmt_recovery_services_backup SUBDIR += rubygem-azure_mgmt_recovery_services_site_recovery SUBDIR += rubygem-azure_mgmt_redis SUBDIR += rubygem-azure_mgmt_relay SUBDIR += rubygem-azure_mgmt_reservations SUBDIR += rubygem-azure_mgmt_resource_health SUBDIR += rubygem-azure_mgmt_resourcegraph SUBDIR += rubygem-azure_mgmt_resources SUBDIR += rubygem-azure_mgmt_resources_management SUBDIR += rubygem-azure_mgmt_scheduler SUBDIR += rubygem-azure_mgmt_search SUBDIR += rubygem-azure_mgmt_security SUBDIR += rubygem-azure_mgmt_serialconsole SUBDIR += rubygem-azure_mgmt_service_bus SUBDIR += rubygem-azure_mgmt_service_fabric SUBDIR += rubygem-azure_mgmt_signalr SUBDIR += rubygem-azure_mgmt_sql SUBDIR += rubygem-azure_mgmt_sqlvirtualmachine SUBDIR += rubygem-azure_mgmt_stor_simple8000_series SUBDIR += rubygem-azure_mgmt_storage SUBDIR += rubygem-azure_mgmt_storagecache SUBDIR += rubygem-azure_mgmt_storagesync SUBDIR += rubygem-azure_mgmt_stream_analytics SUBDIR += rubygem-azure_mgmt_subscriptions SUBDIR += rubygem-azure_mgmt_support SUBDIR += rubygem-azure_mgmt_synapse SUBDIR += rubygem-azure_mgmt_time_series_insights SUBDIR += rubygem-azure_mgmt_traffic_manager SUBDIR += rubygem-azure_mgmt_vmware_cloudsimple SUBDIR += rubygem-azure_mgmt_web SUBDIR += rubygem-azure_sdk SUBDIR += rubygem-azure_service_fabric SUBDIR += rubygem-backports SUBDIR += rubygem-bacon SUBDIR += rubygem-baf SUBDIR += rubygem-batch-loader SUBDIR += rubygem-bcp47_spec SUBDIR += rubygem-benelux SUBDIR += rubygem-better_html SUBDIR += rubygem-better_html-rails61 SUBDIR += rubygem-bin_utils SUBDIR += rubygem-bindata SUBDIR += rubygem-bindex SUBDIR += rubygem-binding_of_caller SUBDIR += rubygem-bit-struct SUBDIR += rubygem-blankslate SUBDIR += rubygem-blockenspiel SUBDIR += rubygem-bones SUBDIR += rubygem-bootsnap SUBDIR += rubygem-bootsnap117 SUBDIR += rubygem-bootstrap_form SUBDIR += rubygem-bson SUBDIR += rubygem-buftok SUBDIR += rubygem-bugspots SUBDIR += rubygem-builder SUBDIR += rubygem-byebug SUBDIR += rubygem-c21e SUBDIR += rubygem-cabin SUBDIR += rubygem-caesars SUBDIR += rubygem-cairo-gobject SUBDIR += rubygem-capybara SUBDIR += rubygem-capybara-screenshot SUBDIR += rubygem-cbor SUBDIR += rubygem-celluloid SUBDIR += rubygem-celluloid-essentials SUBDIR += rubygem-celluloid-extras SUBDIR += rubygem-celluloid-fsm SUBDIR += rubygem-celluloid-io SUBDIR += rubygem-celluloid-pool SUBDIR += rubygem-celluloid-supervision SUBDIR += rubygem-cf-uaa-lib SUBDIR += rubygem-cheffish SUBDIR += rubygem-childprocess SUBDIR += rubygem-childprocess3 SUBDIR += rubygem-childprocess40 SUBDIR += rubygem-childprocess41 SUBDIR += rubygem-chronic SUBDIR += rubygem-chronic_duration SUBDIR += rubygem-claide SUBDIR += rubygem-claide-plugins SUBDIR += rubygem-clamp SUBDIR += rubygem-classifier SUBDIR += rubygem-classifier-reborn SUBDIR += rubygem-climate_control SUBDIR += rubygem-clio SUBDIR += rubygem-cliprompt SUBDIR += rubygem-cloudfiles SUBDIR += rubygem-cms_scanner SUBDIR += rubygem-cocaine SUBDIR += rubygem-cocoon SUBDIR += rubygem-coercible SUBDIR += rubygem-coffee-rails-rails5 SUBDIR += rubygem-coffee-rails-rails50 SUBDIR += rubygem-coffee-rails-rails52 SUBDIR += rubygem-coffee-rails4 SUBDIR += rubygem-coffee-rails41 SUBDIR += rubygem-coffee-script SUBDIR += rubygem-coffee-script-source SUBDIR += rubygem-colorize SUBDIR += rubygem-colorizer SUBDIR += rubygem-columnize SUBDIR += rubygem-commander SUBDIR += rubygem-concurrent-ruby SUBDIR += rubygem-concurrent-ruby-edge SUBDIR += rubygem-concurrent-ruby-edge06 SUBDIR += rubygem-concurrent-ruby-ext SUBDIR += rubygem-concurrent-ruby11 SUBDIR += rubygem-configatron SUBDIR += rubygem-configstruct SUBDIR += rubygem-configuration SUBDIR += rubygem-console SUBDIR += rubygem-constant_resolver SUBDIR += rubygem-contracts SUBDIR += rubygem-contracts016 SUBDIR += rubygem-cookbook-omnifetch SUBDIR += rubygem-cool.io SUBDIR += rubygem-corefines SUBDIR += rubygem-corefoundation SUBDIR += rubygem-cork SUBDIR += rubygem-countries SUBDIR += rubygem-cow_proxy SUBDIR += rubygem-crack SUBDIR += rubygem-cri SUBDIR += rubygem-csv SUBDIR += rubygem-cucumber SUBDIR += rubygem-cucumber-ci-environment SUBDIR += rubygem-cucumber-core SUBDIR += rubygem-cucumber-core13 SUBDIR += rubygem-cucumber-cucumber-expressions SUBDIR += rubygem-cucumber-messages SUBDIR += rubygem-cucumber-messages22 SUBDIR += rubygem-cucumber-messages23 SUBDIR += rubygem-cucumber-messages24 SUBDIR += rubygem-cucumber-messages25 SUBDIR += rubygem-cucumber-rails SUBDIR += rubygem-cucumber-tag-expressions SUBDIR += rubygem-cucumber-wire SUBDIR += rubygem-curses SUBDIR += rubygem-cyoi SUBDIR += rubygem-daemon_controller SUBDIR += rubygem-daemons SUBDIR += rubygem-danger SUBDIR += rubygem-danger-gitlab SUBDIR += rubygem-datadog SUBDIR += rubygem-datadog-ci SUBDIR += rubygem-date SUBDIR += rubygem-ddmemoize SUBDIR += rubygem-ddmetrics SUBDIR += rubygem-ddplugin SUBDIR += rubygem-dead_end SUBDIR += rubygem-deb_version SUBDIR += rubygem-debase-ruby_core_source SUBDIR += rubygem-debug SUBDIR += rubygem-debug_inspector SUBDIR += rubygem-debugger-linecache SUBDIR += rubygem-debugger-ruby_core_source SUBDIR += rubygem-debugger-xml SUBDIR += rubygem-declarative SUBDIR += rubygem-declarative-option SUBDIR += rubygem-deep_merge SUBDIR += rubygem-deep_test SUBDIR += rubygem-deface SUBDIR += rubygem-default_value_for SUBDIR += rubygem-delayed_job SUBDIR += rubygem-delayer SUBDIR += rubygem-delayer-deferred SUBDIR += rubygem-delegate SUBDIR += rubygem-deprecated SUBDIR += rubygem-deprecated2 SUBDIR += rubygem-descendants_tracker SUBDIR += rubygem-device_detector SUBDIR += rubygem-devise SUBDIR += rubygem-devise-pwned_password SUBDIR += rubygem-devise-rails5 SUBDIR += rubygem-devise-rails52 SUBDIR += rubygem-devise-rails60 SUBDIR += rubygem-devise-rails61 SUBDIR += rubygem-devise-rails70 SUBDIR += rubygem-devise-rails71 SUBDIR += rubygem-did_you_mean SUBDIR += rubygem-dig_rb SUBDIR += rubygem-directory_watcher SUBDIR += rubygem-ditz SUBDIR += rubygem-diva SUBDIR += rubygem-docile SUBDIR += rubygem-docopt SUBDIR += rubygem-drb SUBDIR += rubygem-dry-cli SUBDIR += rubygem-dry-configurable SUBDIR += rubygem-dry-container SUBDIR += rubygem-dry-core SUBDIR += rubygem-dry-equalizer SUBDIR += rubygem-dry-inflector SUBDIR += rubygem-dry-logic SUBDIR += rubygem-dry-types SUBDIR += rubygem-drydock SUBDIR += rubygem-dynflow SUBDIR += rubygem-e2mmap SUBDIR += rubygem-ecma-re-validator SUBDIR += rubygem-edavis10-object_daddy SUBDIR += rubygem-elif SUBDIR += rubygem-emoji_regex SUBDIR += rubygem-english SUBDIR += rubygem-enumerize SUBDIR += rubygem-equalizer SUBDIR += rubygem-equatable SUBDIR += rubygem-erb SUBDIR += rubygem-errand SUBDIR += rubygem-error_highlight SUBDIR += rubygem-et-orbi SUBDIR += rubygem-etc SUBDIR += rubygem-event_emitter SUBDIR += rubygem-event_stream_parser SUBDIR += rubygem-event_stream_parser0 SUBDIR += rubygem-eventmachine SUBDIR += rubygem-excon SUBDIR += rubygem-execjs SUBDIR += rubygem-extlib SUBDIR += rubygem-extpp SUBDIR += rubygem-extras SUBDIR += rubygem-facets SUBDIR += rubygem-faker SUBDIR += rubygem-faraday-cookie_jar SUBDIR += rubygem-faraday-excon SUBDIR += rubygem-faraday-excon1 SUBDIR += rubygem-faraday_middleware-aws-sigv4 SUBDIR += rubygem-faraday_middleware-aws-sigv403 SUBDIR += rubygem-faraday_middleware-multi_json SUBDIR += rubygem-fast-stemmer SUBDIR += rubygem-fast_blank SUBDIR += rubygem-fast_gettext SUBDIR += rubygem-fast_stack SUBDIR += rubygem-fast_xor SUBDIR += rubygem-fastercsv SUBDIR += rubygem-fastri SUBDIR += rubygem-fattr SUBDIR += rubygem-fcntl SUBDIR += rubygem-ffaker SUBDIR += rubygem-ffi SUBDIR += rubygem-ffi-compiler SUBDIR += rubygem-ffi-libarchive SUBDIR += rubygem-ffi-win32-extensions SUBDIR += rubygem-ffi-yajl SUBDIR += rubygem-fiber-annotation SUBDIR += rubygem-fiber-local SUBDIR += rubygem-fiber-storage SUBDIR += rubygem-fiddle SUBDIR += rubygem-figaro SUBDIR += rubygem-file-tail SUBDIR += rubygem-filesize SUBDIR += rubygem-fileutils SUBDIR += rubygem-find SUBDIR += rubygem-flexmock SUBDIR += rubygem-flipper SUBDIR += rubygem-flipper-active_support_cache_store SUBDIR += rubygem-flipper-active_support_cache_store-rails70 SUBDIR += rubygem-flipper-ui SUBDIR += rubygem-flipper026 SUBDIR += rubygem-fluent-logger SUBDIR += rubygem-fog SUBDIR += rubygem-fog-core SUBDIR += rubygem-fog-core1 SUBDIR += rubygem-fog-core210 SUBDIR += rubygem-fog-core220 SUBDIR += rubygem-fog-json SUBDIR += rubygem-font-awesome-rails SUBDIR += rubygem-font-awesome-rails-rails5 SUBDIR += rubygem-font-awesome-rails-rails52 SUBDIR += rubygem-font-awesome-rails-rails60 SUBDIR += rubygem-foreigner SUBDIR += rubygem-foreman SUBDIR += rubygem-formatador SUBDIR += rubygem-forwardable SUBDIR += rubygem-forwardable-extended SUBDIR += rubygem-fugit SUBDIR += rubygem-fugit18 SUBDIR += rubygem-fuubar SUBDIR += rubygem-fuzzy_match SUBDIR += rubygem-gapic-common SUBDIR += rubygem-gdata SUBDIR += rubygem-gem-compare SUBDIR += rubygem-gem_plugin SUBDIR += rubygem-gemcutter SUBDIR += rubygem-gemdiff SUBDIR += rubygem-gemnasium-parser SUBDIR += rubygem-gems SUBDIR += rubygem-generator SUBDIR += rubygem-generator_spec-rails4 SUBDIR += rubygem-generator_spec-rails5 SUBDIR += rubygem-georuby SUBDIR += rubygem-get_process_mem SUBDIR += rubygem-get_process_mem0 SUBDIR += rubygem-getopt SUBDIR += rubygem-getoptlong SUBDIR += rubygem-gettext SUBDIR += rubygem-gettext-setup SUBDIR += rubygem-gettext_i18n_rails SUBDIR += rubygem-gettext_i18n_rails112 SUBDIR += rubygem-gettext_i18n_rails_js SUBDIR += rubygem-gettext_i18n_rails_js-rails5 SUBDIR += rubygem-gettext_i18n_rails_js-rails50 SUBDIR += rubygem-gettext_i18n_rails_js-rails52 SUBDIR += rubygem-gettext_i18n_rails_js-rails61 SUBDIR += rubygem-gettext_i18n_rails_js-rails70 SUBDIR += rubygem-gh SUBDIR += rubygem-gibbler SUBDIR += rubygem-gio2 SUBDIR += rubygem-git SUBDIR += rubygem-git-version-bump SUBDIR += rubygem-github_api SUBDIR += rubygem-gitlab SUBDIR += rubygem-gitlab-chronic SUBDIR += rubygem-gitlab-dangerfiles SUBDIR += rubygem-gitlab-experiment SUBDIR += rubygem-gitlab-labkit SUBDIR += rubygem-gitlab-license SUBDIR += rubygem-gitlab-pygments.rb SUBDIR += rubygem-gitlab-sdk SUBDIR += rubygem-gitlab-security_report_schemas SUBDIR += rubygem-gitlab_chronic_duration SUBDIR += rubygem-gitlab_git SUBDIR += rubygem-gitlab_meta SUBDIR += rubygem-glib2 SUBDIR += rubygem-gobject-introspection SUBDIR += rubygem-google-api-client SUBDIR += rubygem-google-apis-admin_directory_v1 SUBDIR += rubygem-google-apis-androidpublisher_v3 SUBDIR += rubygem-google-apis-androidpublisher_v3034 SUBDIR += rubygem-google-apis-bigquery_v2 SUBDIR += rubygem-google-apis-cloudbilling_v1 SUBDIR += rubygem-google-apis-cloudkms_v1 SUBDIR += rubygem-google-apis-cloudresourcemanager_v1 SUBDIR += rubygem-google-apis-cloudresourcemanager_v1035 SUBDIR += rubygem-google-apis-cloudresourcemanager_v2 SUBDIR += rubygem-google-apis-cloudresourcemanager_v3 SUBDIR += rubygem-google-apis-compute_v1 SUBDIR += rubygem-google-apis-compute_v1_057 SUBDIR += rubygem-google-apis-container_v1 SUBDIR += rubygem-google-apis-container_v1beta1 SUBDIR += rubygem-google-apis-core SUBDIR += rubygem-google-apis-core011 SUBDIR += rubygem-google-apis-discovery_v1 SUBDIR += rubygem-google-apis-drive_v3 SUBDIR += rubygem-google-apis-generator SUBDIR += rubygem-google-apis-iam_v1 SUBDIR += rubygem-google-apis-iam_v1050 SUBDIR += rubygem-google-apis-iam_v2 SUBDIR += rubygem-google-apis-iam_v2beta SUBDIR += rubygem-google-apis-iamcredentials_v1 SUBDIR += rubygem-google-apis-monitoring_v3 SUBDIR += rubygem-google-apis-playcustomapp_v1 SUBDIR += rubygem-google-apis-pubsub_v1 SUBDIR += rubygem-google-apis-serviceusage_v1 SUBDIR += rubygem-google-apis-sheets_v4 SUBDIR += rubygem-google-apis-sqladmin_v1beta4 SUBDIR += rubygem-google-apis-sqladmin_v1beta4_041 SUBDIR += rubygem-google-apis-storage_v1 SUBDIR += rubygem-google-cloud-common SUBDIR += rubygem-google-iam-credentials SUBDIR += rubygem-google-iam-credentials-v1 SUBDIR += rubygem-google-iam-v1 SUBDIR += rubygem-google-protobuf SUBDIR += rubygem-google-protobuf3 SUBDIR += rubygem-googleapis-common-protos SUBDIR += rubygem-googleapis-common-protos-types SUBDIR += rubygem-graf SUBDIR += rubygem-grape SUBDIR += rubygem-grape-entity SUBDIR += rubygem-grape-path-helpers SUBDIR += rubygem-grape-route-helpers SUBDIR += rubygem-grape-swagger SUBDIR += rubygem-grape-swagger-entity SUBDIR += rubygem-grape1 SUBDIR += rubygem-grape20 SUBDIR += rubygem-grape_logging SUBDIR += rubygem-graphiql-rails SUBDIR += rubygem-graphlient SUBDIR += rubygem-graphql SUBDIR += rubygem-graphql-client SUBDIR += rubygem-graphql-docs SUBDIR += rubygem-grpc-google-iam-v1 SUBDIR += rubygem-guess_html_encoding SUBDIR += rubygem-gyoku SUBDIR += rubygem-hamster SUBDIR += rubygem-hana SUBDIR += rubygem-hashdiff SUBDIR += rubygem-hashery SUBDIR += rubygem-hashie SUBDIR += rubygem-hashie-forbidden_attributes SUBDIR += rubygem-hashie4 SUBDIR += rubygem-health_check SUBDIR += rubygem-health_check-rails70 SUBDIR += rubygem-heapy SUBDIR += rubygem-highline SUBDIR += rubygem-highline1 SUBDIR += rubygem-highline2 SUBDIR += rubygem-hike SUBDIR += rubygem-hike1 SUBDIR += rubygem-hitimes SUBDIR += rubygem-hocon SUBDIR += rubygem-hoe SUBDIR += rubygem-holidays SUBDIR += rubygem-http_accept_language SUBDIR += rubygem-i18n SUBDIR += rubygem-i18n-tasks-rails61 SUBDIR += rubygem-i18n_data SUBDIR += rubygem-icalendar SUBDIR += rubygem-ice_cube SUBDIR += rubygem-ice_nine SUBDIR += rubygem-inflecto SUBDIR += rubygem-iniparse SUBDIR += rubygem-insist SUBDIR += rubygem-inspec-core SUBDIR += rubygem-instance_storage SUBDIR += rubygem-interact SUBDIR += rubygem-io-console SUBDIR += rubygem-io-endpoint SUBDIR += rubygem-io-event SUBDIR += rubygem-io-like SUBDIR += rubygem-io-nonblock SUBDIR += rubygem-io-stream SUBDIR += rubygem-io-wait SUBDIR += rubygem-io-wait01 SUBDIR += rubygem-iobuffer SUBDIR += rubygem-iostruct SUBDIR += rubygem-ipynbdiff SUBDIR += rubygem-irb SUBDIR += rubygem-iso8601 SUBDIR += rubygem-jaeger-client SUBDIR += rubygem-jammit SUBDIR += rubygem-jaro_winkler SUBDIR += rubygem-jasmine-core SUBDIR += rubygem-jbuilder SUBDIR += rubygem-jbuilder-rails5 SUBDIR += rubygem-jbuilder-rails50 SUBDIR += rubygem-jbuilder-rails52 SUBDIR += rubygem-jbuilder-rails60 SUBDIR += rubygem-jbuilder-rails61 SUBDIR += rubygem-jbuilder-rails71 SUBDIR += rubygem-jbuilder-rails72 SUBDIR += rubygem-jekyll-coffeescript SUBDIR += rubygem-jenkins_api_client SUBDIR += rubygem-jeweler SUBDIR += rubygem-jira-ruby SUBDIR += rubygem-jmespath SUBDIR += rubygem-jquery-ui-themes SUBDIR += rubygem-jruby-jars SUBDIR += rubygem-json SUBDIR += rubygem-json-canonicalization SUBDIR += rubygem-json-schema SUBDIR += rubygem-json1 SUBDIR += rubygem-json_pure SUBDIR += rubygem-json_pure1 SUBDIR += rubygem-json_schema SUBDIR += rubygem-json_schemer SUBDIR += rubygem-jsonapi-renderer SUBDIR += rubygem-jsonpath SUBDIR += rubygem-kafo SUBDIR += rubygem-kafo_parsers SUBDIR += rubygem-kafo_wizards SUBDIR += rubygem-kgio SUBDIR += rubygem-kt-paperclip-rails61 SUBDIR += rubygem-language_server-protocol SUBDIR += rubygem-launchy SUBDIR += rubygem-launchy2 SUBDIR += rubygem-lazy_priority_queue SUBDIR += rubygem-libdatadog SUBDIR += rubygem-libddprof SUBDIR += rubygem-libddwaf SUBDIR += rubygem-librarian SUBDIR += rubygem-librarianp SUBDIR += rubygem-libyajl2 SUBDIR += rubygem-license_finder SUBDIR += rubygem-licensee SUBDIR += rubygem-listen SUBDIR += rubygem-little-plugger SUBDIR += rubygem-local_time SUBDIR += rubygem-local_time-rails5 SUBDIR += rubygem-locale SUBDIR += rubygem-lockfile SUBDIR += rubygem-logger SUBDIR += rubygem-logger15 SUBDIR += rubygem-logging SUBDIR += rubygem-logster SUBDIR += rubygem-loquacious SUBDIR += rubygem-lrama SUBDIR += rubygem-lru_redux SUBDIR += rubygem-lumberjack SUBDIR += rubygem-main SUBDIR += rubygem-makara61 SUBDIR += rubygem-manpages SUBDIR += rubygem-map SUBDIR += rubygem-marcel SUBDIR += rubygem-memo_wise SUBDIR += rubygem-memoist SUBDIR += rubygem-memoizable SUBDIR += rubygem-memoize SUBDIR += rubygem-memory_profiler SUBDIR += rubygem-mercenary SUBDIR += rubygem-message_bus SUBDIR += rubygem-metaclass SUBDIR += rubygem-metaid SUBDIR += rubygem-metasm SUBDIR += rubygem-method_source SUBDIR += rubygem-metrics SUBDIR += rubygem-micromachine SUBDIR += rubygem-middleware SUBDIR += rubygem-mini_histogram SUBDIR += rubygem-mini_portile2 SUBDIR += rubygem-mini_portile2-25 SUBDIR += rubygem-minitest SUBDIR += rubygem-mixlib-archive SUBDIR += rubygem-mixlib-authentication SUBDIR += rubygem-mixlib-cli SUBDIR += rubygem-mixlib-config SUBDIR += rubygem-mixlib-install SUBDIR += rubygem-mixlib-log SUBDIR += rubygem-mixlib-shellout SUBDIR += rubygem-mixlib-versioning SUBDIR += rubygem-mize SUBDIR += rubygem-mkrf SUBDIR += rubygem-mmap2 SUBDIR += rubygem-mocha SUBDIR += rubygem-molinillo SUBDIR += rubygem-moneta SUBDIR += rubygem-mongo SUBDIR += rubygem-mono_logger SUBDIR += rubygem-ms_rest SUBDIR += rubygem-ms_rest_azure SUBDIR += rubygem-msgpack SUBDIR += rubygem-mspec SUBDIR += rubygem-multi_json SUBDIR += rubygem-multi_json114 SUBDIR += rubygem-multi_test SUBDIR += rubygem-murmurhash3 SUBDIR += rubygem-mustache SUBDIR += rubygem-mustache-sinatra SUBDIR += rubygem-mustermann SUBDIR += rubygem-mustermann-grape SUBDIR += rubygem-mustermann-grape10 SUBDIR += rubygem-mutex_m SUBDIR += rubygem-mutter SUBDIR += rubygem-nakayoshi_fork SUBDIR += rubygem-nap SUBDIR += rubygem-native-package-installer SUBDIR += rubygem-naught SUBDIR += rubygem-necromancer SUBDIR += rubygem-needle SUBDIR += rubygem-nenv SUBDIR += rubygem-nesty SUBDIR += rubygem-netaddr SUBDIR += rubygem-newrelic-grape SUBDIR += rubygem-newrelic_rpm SUBDIR += rubygem-nice-ffi SUBDIR += rubygem-nice_partials SUBDIR += rubygem-nio4r SUBDIR += rubygem-nori SUBDIR += rubygem-notiffany SUBDIR += rubygem-notify SUBDIR += rubygem-nprogress-rails SUBDIR += rubygem-nsa-rails5 SUBDIR += rubygem-nsa-rails61 SUBDIR += rubygem-numerizer SUBDIR += rubygem-observer SUBDIR += rubygem-oci SUBDIR += rubygem-octopress-hooks SUBDIR += rubygem-oj SUBDIR += rubygem-oj-introspect SUBDIR += rubygem-oj313 SUBDIR += rubygem-omniauth_crowd SUBDIR += rubygem-omnibus SUBDIR += rubygem-open3 SUBDIR += rubygem-open3_backport SUBDIR += rubygem-open4 SUBDIR += rubygem-opentelemetry-api SUBDIR += rubygem-opentelemetry-common SUBDIR += rubygem-opentelemetry-exporter-otlp SUBDIR += rubygem-opentelemetry-helpers-mysql SUBDIR += rubygem-opentelemetry-helpers-sql-obfuscation SUBDIR += rubygem-opentelemetry-instrumentation-action_mailer SUBDIR += rubygem-opentelemetry-instrumentation-action_pack SUBDIR += rubygem-opentelemetry-instrumentation-action_view SUBDIR += rubygem-opentelemetry-instrumentation-active_job SUBDIR += rubygem-opentelemetry-instrumentation-active_model_serializers SUBDIR += rubygem-opentelemetry-instrumentation-active_record SUBDIR += rubygem-opentelemetry-instrumentation-active_support SUBDIR += rubygem-opentelemetry-instrumentation-aws_sdk SUBDIR += rubygem-opentelemetry-instrumentation-base SUBDIR += rubygem-opentelemetry-instrumentation-concurrent_ruby SUBDIR += rubygem-opentelemetry-instrumentation-dalli SUBDIR += rubygem-opentelemetry-instrumentation-delayed_job SUBDIR += rubygem-opentelemetry-instrumentation-ethon SUBDIR += rubygem-opentelemetry-instrumentation-excon SUBDIR += rubygem-opentelemetry-instrumentation-faraday SUBDIR += rubygem-opentelemetry-instrumentation-grape SUBDIR += rubygem-opentelemetry-instrumentation-graphql SUBDIR += rubygem-opentelemetry-instrumentation-http SUBDIR += rubygem-opentelemetry-instrumentation-http_client SUBDIR += rubygem-opentelemetry-instrumentation-mysql2 SUBDIR += rubygem-opentelemetry-instrumentation-net_http SUBDIR += rubygem-opentelemetry-instrumentation-pg SUBDIR += rubygem-opentelemetry-instrumentation-que SUBDIR += rubygem-opentelemetry-instrumentation-rack SUBDIR += rubygem-opentelemetry-instrumentation-rails SUBDIR += rubygem-opentelemetry-instrumentation-rake SUBDIR += rubygem-opentelemetry-instrumentation-redis SUBDIR += rubygem-opentelemetry-instrumentation-resque SUBDIR += rubygem-opentelemetry-instrumentation-restclient SUBDIR += rubygem-opentelemetry-instrumentation-sidekiq SUBDIR += rubygem-opentelemetry-instrumentation-sinatra SUBDIR += rubygem-opentelemetry-instrumentation-trilogy SUBDIR += rubygem-opentelemetry-registry SUBDIR += rubygem-opentelemetry-sdk SUBDIR += rubygem-opentelemetry-semantic_conventions SUBDIR += rubygem-opentracing SUBDIR += rubygem-opt_parse_validator SUBDIR += rubygem-optimist SUBDIR += rubygem-optparse SUBDIR += rubygem-orm_adapter SUBDIR += rubygem-os SUBDIR += rubygem-ostruct SUBDIR += rubygem-p4ruby SUBDIR += rubygem-packwerk SUBDIR += rubygem-packwerk-extensions SUBDIR += rubygem-pagy SUBDIR += rubygem-pagy6 SUBDIR += rubygem-paint SUBDIR += rubygem-pairing_heap SUBDIR += rubygem-paper_trail SUBDIR += rubygem-parser SUBDIR += rubygem-pastel SUBDIR += rubygem-patch_finder SUBDIR += rubygem-pathname SUBDIR += rubygem-pathspec SUBDIR += rubygem-pathutil SUBDIR += rubygem-pdk SUBDIR += rubygem-pedump SUBDIR += rubygem-peek SUBDIR += rubygem-peek-gc-rails52 SUBDIR += rubygem-peek-host SUBDIR += rubygem-peek-performance_bar SUBDIR += rubygem-peek-rails4 SUBDIR += rubygem-peek-rails52 SUBDIR += rubygem-peek-rails60 SUBDIR += rubygem-peek-rails61 SUBDIR += rubygem-peek-rails70 SUBDIR += rubygem-peek-rblineprof-rails52 SUBDIR += rubygem-peek-redis-rails52 SUBDIR += rubygem-phonelib SUBDIR += rubygem-pkg-config SUBDIR += rubygem-platform SUBDIR += rubygem-pleaserun SUBDIR += rubygem-plist SUBDIR += rubygem-pluggaloid SUBDIR += rubygem-polyamorous SUBDIR += rubygem-polyglot SUBDIR += rubygem-popen4 SUBDIR += rubygem-posix-spawn SUBDIR += rubygem-power_assert SUBDIR += rubygem-powerbar SUBDIR += rubygem-powerpack SUBDIR += rubygem-pp SUBDIR += rubygem-pqueue SUBDIR += rubygem-prettier_print SUBDIR += rubygem-prettyprint SUBDIR += rubygem-profile SUBDIR += rubygem-progressbar SUBDIR += rubygem-prometheus-client-mmap SUBDIR += rubygem-protected_attributes SUBDIR += rubygem-protobuf-cucumber SUBDIR += rubygem-protocol SUBDIR += rubygem-pry SUBDIR += rubygem-pry-byebug SUBDIR += rubygem-pry-rails SUBDIR += rubygem-pry-remote SUBDIR += rubygem-pry-remote-em SUBDIR += rubygem-pstore SUBDIR += rubygem-ptreloaded SUBDIR += rubygem-puppet-modulebuilder SUBDIR += rubygem-puppet-resource_api SUBDIR += rubygem-pygments.rb SUBDIR += rubygem-que SUBDIR += rubygem-que-scheduler SUBDIR += rubygem-r18n-core SUBDIR += rubygem-r18n-desktop SUBDIR += rubygem-r18n-rails SUBDIR += rubygem-r18n-rails-api SUBDIR += rubygem-rabl SUBDIR += rubygem-rabl-rails50 SUBDIR += rubygem-racc SUBDIR += rubygem-rack-mini-profiler SUBDIR += rubygem-rack-raw-upload SUBDIR += rubygem-rails-deprecated_sanitizer SUBDIR += rubygem-rails-deprecated_sanitizer-rails5 SUBDIR += rubygem-rails-deprecated_sanitizer-rails50 SUBDIR += rubygem-rails-i18n-rails5 SUBDIR += rubygem-rails-i18n-rails50 SUBDIR += rubygem-rails-i18n-rails52 SUBDIR += rubygem-rails-i18n-rails60 SUBDIR += rubygem-rails-i18n-rails61 SUBDIR += rubygem-rails-i18n-rails70 SUBDIR += rubygem-rails-i18n-rails71 SUBDIR += rubygem-rails-observers SUBDIR += rubygem-rainbow SUBDIR += rubygem-rake SUBDIR += rubygem-rake-compiler SUBDIR += rubygem-rake-compiler-dock SUBDIR += rubygem-rake-contrib SUBDIR += rubygem-ransack SUBDIR += rubygem-rapt SUBDIR += rubygem-rash SUBDIR += rubygem-rash_alt SUBDIR += rubygem-rb-fsevent SUBDIR += rubygem-rb-inotify SUBDIR += rubygem-rb-kqueue SUBDIR += rubygem-rblineprof SUBDIR += rubygem-rbs SUBDIR += rubygem-rbs_json_schema SUBDIR += rubygem-rbtrace SUBDIR += rubygem-rbtree SUBDIR += rubygem-rdoc SUBDIR += rubygem-re2 SUBDIR += rubygem-react-rails SUBDIR += rubygem-react-rails-rails5 SUBDIR += rubygem-readline SUBDIR += rubygem-readline-ext SUBDIR += rubygem-readwritesettings SUBDIR += rubygem-recaptcha SUBDIR += rubygem-recursive-open-struct SUBDIR += rubygem-recursive-open-struct1 SUBDIR += rubygem-red-datasets SUBDIR += rubygem-redis-activesupport SUBDIR += rubygem-redis-activesupport-rails5 SUBDIR += rubygem-redis-activesupport-rails50 SUBDIR += rubygem-redis-activesupport-rails52 SUBDIR += rubygem-redis-activesupport-rails60 SUBDIR += rubygem-redis-activesupport-rails61 SUBDIR += rubygem-redis-store SUBDIR += rubygem-redlock SUBDIR += rubygem-redlock1 SUBDIR += rubygem-redmine_plugin_support SUBDIR += rubygem-reentrant_flock SUBDIR += rubygem-ref SUBDIR += rubygem-reline SUBDIR += rubygem-request_store SUBDIR += rubygem-request_store15 SUBDIR += rubygem-require_all SUBDIR += rubygem-resque SUBDIR += rubygem-resque-scheduler SUBDIR += rubygem-retriable SUBDIR += rubygem-retryable SUBDIR += rubygem-rgen SUBDIR += rubygem-rgl SUBDIR += rubygem-rice SUBDIR += rubygem-rinda SUBDIR += rubygem-rodzilla SUBDIR += rubygem-rotp SUBDIR += rubygem-rr SUBDIR += rubygem-rrd-ffi SUBDIR += rubygem-rscm SUBDIR += rubygem-rsec SUBDIR += rubygem-rspec SUBDIR += rubygem-rspec-core SUBDIR += rubygem-rspec-expectations SUBDIR += rubygem-rspec-its SUBDIR += rubygem-rspec-logsplit SUBDIR += rubygem-rspec-mocks SUBDIR += rubygem-rspec-rails SUBDIR += rubygem-rspec-support SUBDIR += rubygem-rspec_junit_formatter SUBDIR += rubygem-rubocop SUBDIR += rubygem-rubocop-ast SUBDIR += rubygem-rubocop-capybara SUBDIR += rubygem-rubocop-factory_bot SUBDIR += rubygem-rubocop-performance SUBDIR += rubygem-rubocop-rails SUBDIR += rubygem-rubocop-rake SUBDIR += rubygem-rubocop-rspec SUBDIR += rubygem-rubocop-rspec_rails SUBDIR += rubygem-ruby-atmos-pure SUBDIR += rubygem-ruby-bugzilla SUBDIR += rubygem-ruby-enum SUBDIR += rubygem-ruby-filemagic SUBDIR += rubygem-ruby-fogbugz SUBDIR += rubygem-ruby-libvirt SUBDIR += rubygem-ruby-lsp SUBDIR += rubygem-ruby-lsp-rails SUBDIR += rubygem-ruby-lsp-rspec SUBDIR += rubygem-ruby-macho SUBDIR += rubygem-ruby-magic SUBDIR += rubygem-ruby-ole SUBDIR += rubygem-ruby-prof SUBDIR += rubygem-ruby-progressbar SUBDIR += rubygem-ruby-statistics SUBDIR += rubygem-ruby2_keywords SUBDIR += rubygem-ruby2ruby SUBDIR += rubygem-ruby_memcheck SUBDIR += rubygem-ruby_parser SUBDIR += rubygem-rubygems-mirror SUBDIR += rubygem-rubygems-tasks SUBDIR += rubygem-rubygems-test SUBDIR += rubygem-rubyinline SUBDIR += rubygem-rubyinlineaccel SUBDIR += rubygem-rubytree SUBDIR += rubygem-rufus-scheduler SUBDIR += rubygem-rugged SUBDIR += rubygem-runt SUBDIR += rubygem-ruport SUBDIR += rubygem-safe_yaml SUBDIR += rubygem-scanf SUBDIR += rubygem-schash SUBDIR += rubygem-scientist SUBDIR += rubygem-sd_notify SUBDIR += rubygem-sdoc SUBDIR += rubygem-semantic_puppet SUBDIR += rubygem-semantic_range SUBDIR += rubygem-semi_semantic SUBDIR += rubygem-semver2 SUBDIR += rubygem-semver_dialects SUBDIR += rubygem-semverse SUBDIR += rubygem-sentry-rails SUBDIR += rubygem-sentry-raven SUBDIR += rubygem-sentry-ruby SUBDIR += rubygem-sentry-ruby-core SUBDIR += rubygem-sentry-sidekiq SUBDIR += rubygem-sequel SUBDIR += rubygem-server_sent_events SUBDIR += rubygem-set SUBDIR += rubygem-settingslogic SUBDIR += rubygem-sexp_processor SUBDIR += rubygem-shell SUBDIR += rubygem-shoulda SUBDIR += rubygem-shoulda-context SUBDIR += rubygem-shoulda-matchers SUBDIR += rubygem-sidekiq SUBDIR += rubygem-sidekiq-bulk SUBDIR += rubygem-sidekiq-cron SUBDIR += rubygem-sidekiq-cron-rails70 SUBDIR += rubygem-sidekiq-scheduler SUBDIR += rubygem-sidekiq-unique-jobs SUBDIR += rubygem-sidekiq72 SUBDIR += rubygem-sidetiq SUBDIR += rubygem-sigdump SUBDIR += rubygem-simple-navigation SUBDIR += rubygem-simple-navigation-rails50 SUBDIR += rubygem-simple-navigation-rails61 SUBDIR += rubygem-simple_form SUBDIR += rubygem-simple_form-rails5 SUBDIR += rubygem-simple_form-rails50 SUBDIR += rubygem-simple_form-rails61 SUBDIR += rubygem-simple_po_parser SUBDIR += rubygem-simplecov SUBDIR += rubygem-simplecov_json_formatter SUBDIR += rubygem-singleton SUBDIR += rubygem-skiptrace SUBDIR += rubygem-slack-messenger SUBDIR += rubygem-slack-notifier SUBDIR += rubygem-slim SUBDIR += rubygem-slop SUBDIR += rubygem-slop3 SUBDIR += rubygem-slow_enumerator_tools SUBDIR += rubygem-smart_properties SUBDIR += rubygem-snaky_hash SUBDIR += rubygem-snowplow-tracker SUBDIR += rubygem-soap4r SUBDIR += rubygem-solve SUBDIR += rubygem-sorbet-runtime SUBDIR += rubygem-sorted_set SUBDIR += rubygem-spring SUBDIR += rubygem-spring-watcher-listen SUBDIR += rubygem-sprockets SUBDIR += rubygem-sprockets-es6 SUBDIR += rubygem-sprockets-helpers SUBDIR += rubygem-sprockets-rails-rails4 SUBDIR += rubygem-sprockets-rails-rails5 SUBDIR += rubygem-sprockets-rails-rails50 SUBDIR += rubygem-sprockets-rails-rails52 SUBDIR += rubygem-sprockets-rails-rails60 SUBDIR += rubygem-sprockets-rails-rails61 SUBDIR += rubygem-sprockets-rails-rails70 SUBDIR += rubygem-sprockets-rails-rails71 SUBDIR += rubygem-sprockets-rails-rails72 SUBDIR += rubygem-sprockets-sass SUBDIR += rubygem-sprockets2 SUBDIR += rubygem-sprockets3 SUBDIR += rubygem-spruz SUBDIR += rubygem-stackprof SUBDIR += rubygem-state_machine SUBDIR += rubygem-state_machines SUBDIR += rubygem-statsd SUBDIR += rubygem-statsd-instrument SUBDIR += rubygem-statsd-ruby SUBDIR += rubygem-stella SUBDIR += rubygem-stemmer SUBDIR += rubygem-stomp SUBDIR += rubygem-stoplight SUBDIR += rubygem-storable SUBDIR += rubygem-stream SUBDIR += rubygem-streetaddress SUBDIR += rubygem-stringex SUBDIR += rubygem-stringio SUBDIR += rubygem-strings SUBDIR += rubygem-strings-ansi SUBDIR += rubygem-strong_migrations SUBDIR += rubygem-strong_migrations61 SUBDIR += rubygem-strptime SUBDIR += rubygem-strscan SUBDIR += rubygem-structured_warnings SUBDIR += rubygem-stud SUBDIR += rubygem-subexec SUBDIR += rubygem-sucker_punch SUBDIR += rubygem-sugar-high SUBDIR += rubygem-sumbur SUBDIR += rubygem-sundawg_country_codes SUBDIR += rubygem-sus SUBDIR += rubygem-svn2git SUBDIR += rubygem-swagger-blocks SUBDIR += rubygem-sync SUBDIR += rubygem-syntax_suggest SUBDIR += rubygem-syntax_tree SUBDIR += rubygem-sysinfo SUBDIR += rubygem-syslog SUBDIR += rubygem-systemu SUBDIR += rubygem-table_print SUBDIR += rubygem-tdiff SUBDIR += rubygem-telesign SUBDIR += rubygem-telesignenterprise SUBDIR += rubygem-tempfile SUBDIR += rubygem-templater SUBDIR += rubygem-temple SUBDIR += rubygem-term-ansicolor SUBDIR += rubygem-terrapin SUBDIR += rubygem-test-unit SUBDIR += rubygem-thor SUBDIR += rubygem-thor0 SUBDIR += rubygem-thor12 SUBDIR += rubygem-thread-local SUBDIR += rubygem-thread_safe SUBDIR += rubygem-thrift SUBDIR += rubygem-thwait SUBDIR += rubygem-tilt SUBDIR += rubygem-tilt1 SUBDIR += rubygem-time SUBDIR += rubygem-timecop SUBDIR += rubygem-timeliness SUBDIR += rubygem-timeout SUBDIR += rubygem-timers SUBDIR += rubygem-tins SUBDIR += rubygem-titlecase SUBDIR += rubygem-tmpdir SUBDIR += rubygem-to_regexp SUBDIR += rubygem-tool SUBDIR += rubygem-tracer SUBDIR += rubygem-traces SUBDIR += rubygem-trailblazer-option SUBDIR += rubygem-transaction-simple SUBDIR += rubygem-travis SUBDIR += rubygem-travis-gh SUBDIR += rubygem-treetop SUBDIR += rubygem-trollop SUBDIR += rubygem-trollop1 SUBDIR += rubygem-tsort SUBDIR += rubygem-tty SUBDIR += rubygem-tty-box SUBDIR += rubygem-tty-color SUBDIR += rubygem-tty-command SUBDIR += rubygem-tty-config SUBDIR += rubygem-tty-cursor SUBDIR += rubygem-tty-editor SUBDIR += rubygem-tty-file SUBDIR += rubygem-tty-font SUBDIR += rubygem-tty-logger SUBDIR += rubygem-tty-markdown SUBDIR += rubygem-tty-pager SUBDIR += rubygem-tty-pie SUBDIR += rubygem-tty-platform SUBDIR += rubygem-tty-progressbar SUBDIR += rubygem-tty-prompt SUBDIR += rubygem-tty-reader SUBDIR += rubygem-tty-screen SUBDIR += rubygem-tty-spinner SUBDIR += rubygem-tty-table SUBDIR += rubygem-tty-tree SUBDIR += rubygem-tty-which SUBDIR += rubygem-turn SUBDIR += rubygem-typed-array SUBDIR += rubygem-typeprof SUBDIR += rubygem-tzinfo SUBDIR += rubygem-tzinfo-data SUBDIR += rubygem-tzinfo1 SUBDIR += rubygem-uber SUBDIR += rubygem-un SUBDIR += rubygem-unicode SUBDIR += rubygem-unicode-display_width SUBDIR += rubygem-unicode-emoji SUBDIR += rubygem-unicode-version SUBDIR += rubygem-unicode_utils SUBDIR += rubygem-unleash SUBDIR += rubygem-useragent SUBDIR += rubygem-uuid SUBDIR += rubygem-uuidtools SUBDIR += rubygem-valid SUBDIR += rubygem-validatable SUBDIR += rubygem-validate_email SUBDIR += rubygem-validate_url SUBDIR += rubygem-validates_timeliness SUBDIR += rubygem-version_gem SUBDIR += rubygem-versionomy SUBDIR += rubygem-view_component-rails70 SUBDIR += rubygem-virtus SUBDIR += rubygem-vite_rails-rails70 SUBDIR += rubygem-vite_ruby SUBDIR += rubygem-vite_ruby33 SUBDIR += rubygem-warbler SUBDIR += rubygem-warden SUBDIR += rubygem-warning SUBDIR += rubygem-wdm SUBDIR += rubygem-weakref SUBDIR += rubygem-web-console-rails60 SUBDIR += rubygem-web-console-rails61 SUBDIR += rubygem-web-console-rails71 SUBDIR += rubygem-web-console-rails72 SUBDIR += rubygem-web-console2 SUBDIR += rubygem-web-console3-rails5 SUBDIR += rubygem-web-console3-rails50 SUBDIR += rubygem-web-console3-rails52 SUBDIR += rubygem-webby SUBDIR += rubygem-webfinger SUBDIR += rubygem-webpacker-rails60 SUBDIR += rubygem-webpacker-rails61 SUBDIR += rubygem-webpacker4-rails60 SUBDIR += rubygem-will_paginate SUBDIR += rubygem-windows_error SUBDIR += rubygem-wisper SUBDIR += rubygem-wisper2 SUBDIR += rubygem-with_advisory_lock61 SUBDIR += rubygem-with_env SUBDIR += rubygem-wmi-lite SUBDIR += rubygem-xdg SUBDIR += rubygem-xdg2 SUBDIR += rubygem-xdg7 SUBDIR += rubygem-xorcist SUBDIR += rubygem-xpath SUBDIR += rubygem-xxhash SUBDIR += rubygem-yajl-ruby SUBDIR += rubygem-yard-sorbet SUBDIR += rubygem-yui-compressor SUBDIR += rubygem-zeitwerk SUBDIR += rubygem-zentest SUBDIR += rubygem-zhexdump SUBDIR += rubygem-zlib SUBDIR += rubygem-zstd-ruby SUBDIR += rubymine SUBDIR += rudeconfig SUBDIR += rudiments SUBDIR += ruff SUBDIR += rust-analyzer SUBDIR += rust-bindgen-cli SUBDIR += rust-cbindgen SUBDIR += rust-mode SUBDIR += rust-script SUBDIR += rustc-demangle SUBDIR += rvi SUBDIR += rvm SUBDIR += rxcpp SUBDIR += rye SUBDIR += sabre SUBDIR += safe-iop SUBDIR += samurai SUBDIR += sasm SUBDIR += sbt SUBDIR += scalatest SUBDIR += scandoc SUBDIR += scc SUBDIR += sccache SUBDIR += sccs SUBDIR += schilybase SUBDIR += scons SUBDIR += sd-mux-ctrl SUBDIR += sdbus-cpp SUBDIR += sdl12 SUBDIR += sdl12-compat SUBDIR += sdl20 SUBDIR += sdl2pp SUBDIR += sdl3 SUBDIR += sdl_console SUBDIR += sdlmm SUBDIR += sdlskk SUBDIR += sdsl-lite SUBDIR += sedsed SUBDIR += seer-gdb SUBDIR += selene SUBDIR += sentry-cli SUBDIR += serd SUBDIR += serdisplib SUBDIR += sfml SUBDIR += sfml1 SUBDIR += sfml251 SUBDIR += sfsexp SUBDIR += sgb SUBDIR += shadered SUBDIR += shapelib SUBDIR += shards SUBDIR += shedskin SUBDIR += shell-toolbox SUBDIR += shflags SUBDIR += shfmt SUBDIR += shiboken2 SUBDIR += shiboken6 SUBDIR += shmap SUBDIR += shroud SUBDIR += shtk SUBDIR += shtool SUBDIR += shunit2 SUBDIR += sigar SUBDIR += signal-fts5-extension SUBDIR += sigslot SUBDIR += silc-toolkit SUBDIR += silentbob SUBDIR += simavr SUBDIR += simde SUBDIR += simdjson SUBDIR += simgear SUBDIR += simian SUBDIR += simpleini SUBDIR += sjasmplus SUBDIR += skalibs SUBDIR += skypat SUBDIR += slf4j SUBDIR += slibtool SUBDIR += smake SUBDIR += smc SUBDIR += smooth SUBDIR += smv SUBDIR += snazy SUBDIR += snitch SUBDIR += soapui SUBDIR += sobjectizer SUBDIR += socket_wrapper SUBDIR += soft-serve SUBDIR += sol2 SUBDIR += sonar-scanner-cli SUBDIR += sonarqube-ant-task SUBDIR += sonarqube-community SUBDIR += sope SUBDIR += sope2 SUBDIR += sord SUBDIR += spark SUBDIR += sparsebitset SUBDIR += sparsehash SUBDIR += spatialindex SUBDIR += spdlog SUBDIR += spice-protocol SUBDIR += spin SUBDIR += spirv-llvm-translator SUBDIR += splint SUBDIR += spr SUBDIR += spread-sheet-widget SUBDIR += spyder SUBDIR += srecord SUBDIR += sse2neon SUBDIR += st SUBDIR += stack SUBDIR += staf SUBDIR += statcvs SUBDIR += statik SUBDIR += statsvn SUBDIR += stb SUBDIR += stdman SUBDIR += stdx-allocator SUBDIR += stfl SUBDIR += stlfilt SUBDIR += stlink SUBDIR += str SUBDIR += string_theory SUBDIR += stringencoders SUBDIR += stuffbin SUBDIR += stxxl SUBDIR += stylua SUBDIR += styx SUBDIR += subprocess SUBDIR += subversion SUBDIR += subversion-book SUBDIR += subversion-lts SUBDIR += subversive SUBDIR += sunpromake SUBDIR += svk SUBDIR += svn2git SUBDIR += svn_load_dirs SUBDIR += svntrac SUBDIR += swank-clojure SUBDIR += swig SUBDIR += swig40 SUBDIR += sysconftool SUBDIR += sysfsutils SUBDIR += systemc SUBDIR += t1lib SUBDIR += ta-lib SUBDIR += tabby SUBDIR += tablist SUBDIR += tabulate SUBDIR += tagref SUBDIR += tailor SUBDIR += talloc SUBDIR += task SUBDIR += taskctl SUBDIR += taskflow SUBDIR += tass64 SUBDIR += tbb SUBDIR += tcl-memchan SUBDIR += tcl-mmap SUBDIR += tcl-signal SUBDIR += tcl-trf SUBDIR += tclap SUBDIR += tclap12 SUBDIR += tclbsd SUBDIR += tclcheck SUBDIR += tcllauncher SUBDIR += tcllib SUBDIR += tcllibc SUBDIR += tclreadline SUBDIR += tclthread SUBDIR += tcltls SUBDIR += tclvfs SUBDIR += tclxml SUBDIR += tdl SUBDIR += template-glib SUBDIR += termbox SUBDIR += termcolor SUBDIR += terminality SUBDIR += test-drive SUBDIR += tevent SUBDIR += tex-kpathsea SUBDIR += tex-libtexlua SUBDIR += tex-libtexluajit SUBDIR += tex-synctex SUBDIR += tex-web2c SUBDIR += texlab SUBDIR += the-way SUBDIR += thonny SUBDIR += thrift SUBDIR += thrift-c_glib SUBDIR += thrift-cpp SUBDIR += thrust SUBDIR += thunar-vcs-plugin SUBDIR += ticcutils SUBDIR += tig SUBDIR += tigcc SUBDIR += tijmp SUBDIR += tinycbor SUBDIR += tinygo SUBDIR += tinylaf SUBDIR += tkcon SUBDIR += tkcvs SUBDIR += tkp4 SUBDIR += tl-expected SUBDIR += tllist SUBDIR += tlsh SUBDIR += tlx SUBDIR += tnt SUBDIR += tokei SUBDIR += tokio-console SUBDIR += toml11 SUBDIR += tomlplusplus SUBDIR += tortoisehg SUBDIR += tpasm SUBDIR += tracy SUBDIR += tradcpp SUBDIR += transient SUBDIR += transient-devel SUBDIR += transwarp SUBDIR += tree-sitter SUBDIR += tree-sitter-graph SUBDIR += treefmt SUBDIR += treepy.el SUBDIR += trellis SUBDIR += trio SUBDIR += trompeloeil SUBDIR += truc SUBDIR += tup SUBDIR += twiggy SUBDIR += typeshare SUBDIR += ua_parser-core SUBDIR += uclcmd SUBDIR += ucommon SUBDIR += ucpp SUBDIR += udis86 SUBDIR += uid_wrapper SUBDIR += ultragetopt SUBDIR += umbrello SUBDIR += umlgraph SUBDIR += undead SUBDIR += unibilium SUBDIR += universal-ctags SUBDIR += unordered-dense SUBDIR += upnp SUBDIR += upp SUBDIR += urjtag SUBDIR += ut SUBDIR += utf8cpp SUBDIR += utf8cpp3 SUBDIR += uthash SUBDIR += util-linux SUBDIR += uv SUBDIR += valgrind SUBDIR += valgrind-devel SUBDIR += vasm SUBDIR += vc SUBDIR += vc-intrinsics SUBDIR += vcglib SUBDIR += venom SUBDIR += vera++ SUBDIR += vexcl SUBDIR += viewvc-devel SUBDIR += violet SUBDIR += vipack SUBDIR += vitables SUBDIR += volk SUBDIR += vstr SUBDIR += vxlog SUBDIR += wand-libconfig SUBDIR += wandio SUBDIR += wasi-compiler-rt SUBDIR += wasi-compiler-rt17 SUBDIR += wasi-compiler-rt18 SUBDIR += wasi-compiler-rt19 SUBDIR += wasi-libc SUBDIR += wasi-libcxx SUBDIR += wasi-libcxx17 SUBDIR += wasi-libcxx18 SUBDIR += wasi-libcxx19 SUBDIR += wasm3 SUBDIR += wasmer SUBDIR += websocketpp SUBDIR += websvn SUBDIR += wf-config SUBDIR += wininfo SUBDIR += wizardkit SUBDIR += woff2 SUBDIR += wrangler SUBDIR += wxformbuilder SUBDIR += xa65 SUBDIR += xbyak SUBDIR += xc3sprog SUBDIR += xcscope.el SUBDIR += xdg-dbus-proxy SUBDIR += xdg-user-dirs SUBDIR += xdg-utils SUBDIR += xdgpaths SUBDIR += xelfviewer SUBDIR += xeus SUBDIR += xeus-cling SUBDIR += xeus-zmq SUBDIR += xfce4-dev-tools SUBDIR += xmake SUBDIR += xmltooling SUBDIR += xopcodecalc SUBDIR += xorg-macros SUBDIR += xparam SUBDIR += xpeviewer SUBDIR += xsd SUBDIR += xsimd SUBDIR += xtensa-esp-elf SUBDIR += xtl SUBDIR += xtl-quant-stack SUBDIR += xwpe SUBDIR += xxgdb SUBDIR += xxhash SUBDIR += xxl SUBDIR += yaegi SUBDIR += yaggo SUBDIR += yajl SUBDIR += yajl-tcl SUBDIR += yaml-cpp SUBDIR += yaml2argdata SUBDIR += yasm SUBDIR += yder SUBDIR += youcompleteme SUBDIR += yuck SUBDIR += yyjson SUBDIR += z80-asm SUBDIR += z80asm SUBDIR += z80ex SUBDIR += z88dk SUBDIR += zanata-cli SUBDIR += zapcc SUBDIR += zeal SUBDIR += zfp SUBDIR += zix SUBDIR += zls SUBDIR += zookeeper SUBDIR += zthread SUBDIR += zug SUBDIR += zycore-c SUBDIR += zydis SUBDIR += zziplib .include diff --git a/devel/git-filter-repo-devel/Makefile b/devel/git-filter-repo-devel/Makefile new file mode 100644 index 000000000000..00555d20492a --- /dev/null +++ b/devel/git-filter-repo-devel/Makefile @@ -0,0 +1,55 @@ +PORTNAME= git-filter-repo +PORTVERSION= ${GFR_COMMIT_DATE} +CATEGORIES= devel +PKGNAMESUFFIX= -devel + +MAINTAINER= cy@FreeBSD.org +COMMENT= git filter-repo is a versatile tool for rewriting history +WWW= https://github.com/newren/git-filter-repo + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/COPYING.mit + +CONFLICTS= git-filter-repo-[0-9]* + +RUN_DEPENDS= git:devel/git + +USES= python shebangfix + +SHEBANG_FILES= git-filter-repo + +USE_GITHUB= yes +GH_ACCOUNT= newren +GH_TAGNAME= a9093a6 +GFR_COMMIT_DATE= 20241021 + +NO_BUILD= yes +NO_ARCH= yes + +# +# XXX: The man page only exists in the upstream docs branch. Unfortunately +# there is no clean way to extract just one file from a different +# upstream branch. Therefore we include it in files. To discover +# which version of the git-filter-repo.1 file in the docs branch +# corresponds with the extracted tag, +# +# - git clone https://github.com/newren/git-filter-repo.git +# - git log, looking for the current tag's hash. +# - git switch docs +# - git log and look for the matching hash in the commit log. +# - git checkout HASH +# - copy the file to the files subdirectory of this port +# +# Until a better approach can be discovered. +# +post-extract: + @${MKDIR} ${WRKSRC}/Documentation/man1; + ${CP} ${FILESDIR}/git-filter-repo.1.in ${WRKSRC}/Documentation/man1/git-filter-repo.1 + +do-install: + cd ${WRKSRC}; \ + ${MKDIR} ${STAGEDIR}/${PREFIX}/libexec/git-core; \ + ${MKDIR} ${STAGEDIR}/${PYTHON_SITELIBDIR}; \ + ${MAKE} prefix=${STAGEDIR}/${PREFIX} pythondir=${STAGEDIR}/${PYTHON_SITELIBDIR} install + +.include diff --git a/devel/git-filter-repo-devel/distinfo b/devel/git-filter-repo-devel/distinfo new file mode 100644 index 000000000000..b428b08e7654 --- /dev/null +++ b/devel/git-filter-repo-devel/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1729542272 +SHA256 (newren-git-filter-repo-20241021-a9093a6_GH0.tar.gz) = 553f4f153ac40dc1c8e81d558b2d7ff25474c1f720e63038b52a4c77da97eed4 +SIZE (newren-git-filter-repo-20241021-a9093a6_GH0.tar.gz) = 180295 diff --git a/devel/git-filter-repo-devel/files/git-filter-repo.1.in b/devel/git-filter-repo-devel/files/git-filter-repo.1.in new file mode 100644 index 000000000000..0de30fd96c76 --- /dev/null +++ b/devel/git-filter-repo-devel/files/git-filter-repo.1.in @@ -0,0 +1,2373 @@ +'\" t +.\" Title: git-filter-repo +.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] +.\" Generator: DocBook XSL Stylesheets vsnapshot +.\" Date: 10/10/2022 +.\" Manual: Git Manual +.\" Source: Git 2.38.0.dirty +.\" Language: English +.\" +.TH "GIT\-FILTER\-REPO" "1" "10/10/2022" "Git 2\&.38\&.0\&.dirty" "Git Manual" +.\" ----------------------------------------------------------------- +.\" * Define some portability stuff +.\" ----------------------------------------------------------------- +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.\" http://bugs.debian.org/507673 +.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" ----------------------------------------------------------------- +.\" * set default formatting +.\" ----------------------------------------------------------------- +.\" disable hyphenation +.nh +.\" disable justification (adjust text to left margin only) +.ad l +.\" ----------------------------------------------------------------- +.\" * MAIN CONTENT STARTS HERE * +.\" ----------------------------------------------------------------- +.SH "NAME" +git-filter-repo \- Rewrite repository history +.SH "SYNOPSIS" +.sp +.nf +\fIgit filter\-repo\fR \-\-analyze +\fIgit filter\-repo\fR [] [] + [] [] + [] [] + [] [] +.fi +.sp +.SH "DESCRIPTION" +.sp +Rapidly rewrite entire repository history using user\-specified filters\&. This is a destructive operation which should not be used lightly; it writes new commits, trees, tags, and blobs corresponding to (but filtered from) the original objects in the repository, then deletes the original history and leaves only the new\&. See the section called \(lqDISCUSSION\(rq for more details on the ramifications of using this tool\&. Several different types of history rewrites are possible; examples include (but are not limited to): +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +stripping large files (or large directories or large extensions) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +stripping unwanted files by path +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +extracting wanted paths and their history (stripping everything else) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +restructuring the file layout (such as moving all files into a subdirectory in preparation for merging with another repo, making a subdirectory become the new toplevel directory, or merging two directories with independent filenames into one directory) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +renaming tags (also often in preparation for merging with another repo) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +replacing or removing sensitive text such as passwords +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +making mailmap rewriting of user names or emails permanent +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +making grafts or replacement refs permanent +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +rewriting commit messages +.RE +.sp +Additionally, several concerns are handled automatically (many of these can be overridden, but they are all on by default): +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +rewriting (possibly abbreviated) hashes in commit messages to refer to the new post\-rewrite commit hashes +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +pruning commits which become empty due to the above filters (also handles edge cases like pruning of merge commits which become degenerate and empty) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +creating replace\-refs (see +\fBgit-replace\fR(1)) for old commit hashes, which if manually pushed and fetched will allow users to continue to refer to new commits using (unabbreviated) old commit IDs +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +stripping of original history to avoid mixing old and new history +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +repacking the repository post\-rewrite to shrink the repo for the user +.RE +.sp +Also, it\(cqs worth noting that there is an important safety mechanism: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +abort if run from a repo that is not a fresh clone (to prevent accidental data loss from rewriting local history that doesn\(cqt exist anywhere else)\&. See +the section called \(lqFRESH CLONE SAFETY CHECK AND \-\-FORCE\(rq\&. +.RE +.sp +For those who know that there is large unwanted stuff in their history and want help finding it, this command also +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +provides an option to analyze a repository and generate reports that can be useful in determining what to filter (or in determining whether a separate filtering command was successful)\&. +.RE +.sp +See also the section called \(lqVERSATILITY\(rq, the section called \(lqDISCUSSION\(rq, the section called \(lqEXAMPLES\(rq, and the section called \(lqINTERNALS\(rq\&. +.SH "OPTIONS" +.SS "Analysis Options" +.PP +\-\-analyze +.RS 4 +Analyze repository history and create a report that may be useful in determining what to filter in a subsequent run (or in determining if a previous filtering command did what you wanted)\&. Will not modify your repo\&. +.RE +.SS "Filtering based on paths (see also \-\-filename\-callback)" +.sp +These options specify the paths to select\&. Note that much like git itself, renames are NOT followed so you may need to specify multiple paths, e\&.g\&. \fB\-\-path olddir/ \-\-path newdir/\fR +.PP +\-\-invert\-paths +.RS 4 +Invert the selection of files from the specified \-\-path\-{match,glob,regex} options below, i\&.e\&. only select files matching none of those options\&. +.RE +.PP +\-\-path\-match , \-\-path +.RS 4 +Exact paths (files or directories) to include in filtered history\&. Multiple \-\-path options can be specified to get a union of paths\&. +.RE +.PP +\-\-path\-glob +.RS 4 +Glob of paths to include in filtered history\&. Multiple \-\-path\-glob options can be specified to get a union of paths\&. +.RE +.PP +\-\-path\-regex +.RS 4 +Regex of paths to include in filtered history\&. Multiple \-\-path\-regex options can be specified to get a union of paths\&. +.RE +.PP +\-\-use\-base\-name +.RS 4 +Match on file base name instead of full path from the top of the repo\&. Incompatible with \-\-path\-rename, and incompatible with matching against directory names\&. +.RE +.SS "Renaming based on paths (see also \-\-filename\-callback)" +.sp +Note: if you combine path filtering with path renaming, be aware that a rename directive does not select paths, it only says how to rename paths that are selected with the filters\&. +.PP +\-\-path\-rename , \-\-path\-rename\-match +.RS 4 +Path to rename; if filename or directory matches rename to \&. Multiple \-\-path\-rename options can be specified\&. +.RE +.SS "Path shortcuts" +.PP +\-\-paths\-from\-file +.RS 4 +Specify several path filtering and renaming directives, one per line\&. Lines with +\fB==>\fR +in them specify path renames, and lines can begin with +\fBliteral:\fR +(the default), +\fBglob:\fR, or +\fBregex:\fR +to specify different matching styles\&. Blank lines and lines starting with a +\fB#\fR +are ignored (if you have a filename that you want to filter on that starts with +\fBliteral:\fR, +\fB#\fR, +\fBglob:\fR, or +\fBregex:\fR, then prefix the line with +\fIliteral:\fR)\&. +.RE +.PP +\-\-subdirectory\-filter +.RS 4 +Only look at history that touches the given subdirectory and treat that directory as the project root\&. Equivalent to using +\fB\-\-path / \-\-path\-rename /:\fR +.RE +.PP +\-\-to\-subdirectory\-filter +.RS 4 +Treat the project root as instead being under \&. Equivalent to using +\fB\-\-path\-rename :/\fR +.RE +.SS "Content editing filters (see also \-\-blob\-callback)" +.PP +\-\-replace\-text +.RS 4 +A file with expressions that, if found, will be replaced\&. By default, each expression is treated as literal text, but +\fBregex:\fR +and +\fBglob:\fR +prefixes are supported\&. You can end the line with +\fB==>\fR +and some replacement text to choose a replacement choice other than the default of +\fB***REMOVED***\fR\&. +.RE +.PP +\-\-strip\-blobs\-bigger\-than +.RS 4 +Strip blobs (files) bigger than specified size (e\&.g\&. +\fB5M\fR, +\fB2G\fR, etc) +.RE +.PP +\-\-strip\-blobs\-with\-ids +.RS 4 +Read git object ids from each line of the given file, and strip all of them from history +.RE +.SS "Renaming of refs (see also \-\-refname\-callback)" +.PP +\-\-tag\-rename +.RS 4 +Rename tags starting with to start with \&. For example, \-\-tag\-rename foo:bar will rename tag foo\-1\&.2\&.3 to bar\-1\&.2\&.3; either or can be empty\&. +.RE +.SS "Filtering of commit messages (see also \-\-message\-callback)" +.PP +\-\-replace\-message +.RS 4 +A file with expressions that, if found in commit or tag messages, will be replaced\&. This file uses the same syntax as \-\-replace\-text\&. +.RE +.PP +\-\-preserve\-commit\-hashes +.RS 4 +By default, since commits are rewritten and thus gain new hashes, references to old commit hashes in commit messages are replaced with new commit hashes (abbreviated to the same length as the old reference)\&. Use this flag to turn off updating commit hashes in commit messages\&. +.RE +.PP +\-\-preserve\-commit\-encoding +.RS 4 +Do not reencode commit messages into UTF\-8\&. By default, if the commit object specifies an encoding for the commit message, the message is re\-encoded into UTF\-8\&. +.RE +.SS "Filtering of names & emails (see also \-\-name\-callback and \-\-email\-callback)" +.PP +\-\-mailmap +.RS 4 +Use specified mailmap file (see +\fBgit-shortlog\fR(1) +for details on the format) when rewriting author, committer, and tagger names and emails\&. If the specified file is part of git history, historical versions of the file will be ignored; only the current contents are consulted\&. +.RE +.PP +\-\-use\-mailmap +.RS 4 +Same as: +\fI\-\-mailmap \&.mailmap\fR +.RE +.SS "Parent rewriting" +.PP +\-\-replace\-refs {delete\-no\-add, delete\-and\-add, update\-no\-add, update\-or\-add, update\-and\-add} +.RS 4 +Replace refs (see +\fBgit-replace\fR(1)) are used to rewrite parents (unless turned off by the usual git mechanism); this flag specifies what do do with those refs afterward\&. Replace refs can either be deleted or updated to point at new commit hashes\&. Also, new replace refs can be added for each commit rewrite\&. With +\fIupdate\-or\-add\fR, new replace refs are only added for commit rewrites that aren\(cqt used to update an existing replace ref\&. default is +\fIupdate\-and\-add\fR +if $GIT_DIR/filter\-repo/already_ran does not exist; +\fIupdate\-or\-add\fR +otherwise\&. +.RE +.PP +\-\-prune\-empty {always, auto, never} +.RS 4 +Whether to prune empty commits\&. +\fIauto\fR +(the default) means only prune commits which become empty (not commits which were empty in the original repo, unless their parent was pruned)\&. When the parent of a commit is pruned, the first non\-pruned ancestor becomes the new parent\&. +.RE +.PP +\-\-prune\-degenerate {always, auto, never} +.RS 4 +Since merge commits are needed for history topology, they are typically exempt from pruning\&. However, they can become degenerate with the pruning of other commits (having fewer than two parents, having one commit serve as both parents, or having one parent as the ancestor of the other\&.) If such merge commits have no file changes, they can be pruned\&. The default (\fIauto\fR) is to only prune empty merge commits which become degenerate (not which started as such)\&. +.RE +.PP +\-\-no\-ff +.RS 4 +Even if the first parent is or becomes an ancestor of another parent, do not prune it\&. This modifies how \-\-prune\-degenerate behaves, and may be useful in projects who always use merge \-\-no\-ff\&. +.RE +.SS "Generic callback code snippets" +.PP +\-\-filename\-callback +.RS 4 +Python code body for processing filenames; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-message\-callback +.RS 4 +Python code body for processing messages (both commit messages and tag messages); see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-name\-callback +.RS 4 +Python code body for processing names of people; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-email\-callback +.RS 4 +Python code body for processing emails addresses; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-refname\-callback +.RS 4 +Python code body for processing refnames; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-blob\-callback +.RS 4 +Python code body for processing blob objects; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-commit\-callback +.RS 4 +Python code body for processing commit objects; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-tag\-callback +.RS 4 +Python code body for processing tag objects; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.PP +\-\-reset\-callback +.RS 4 +Python code body for processing reset objects; see +the section called \(lqCALLBACKS\(rq\&. +.RE +.SS "Location to filter from/to" +.if n \{\ +.sp +.\} +.RS 4 +.it 1 an-trap +.nr an-no-space-flag 1 +.nr an-break-flag 1 +.br +.ps +1 +\fBNote\fR +.ps -1 +.br +.sp +Specifying alternate source or target locations implies \-\-partial except that the normal default for \-\-replace\-refs is used\&. However, unlike normal uses of \-\-partial, this doesn\(cqt risk mixing old and new history since the old and new histories are in different repositories\&. +.sp .5v +.RE +.PP +\-\-source +.RS 4 +Git repository to read from +.RE +.PP +\-\-target +.RS 4 +Git repository to overwrite with filtered history +.RE +.SS "Miscellaneous options" +.PP +\-\-help, \-h +.RS 4 +Show a help message and exit\&. +.RE +.PP +\-\-force, \-f +.RS 4 +Ignore fresh clone checks and rewrite history (an irreversible operation, especially since it by default ends with an immediate pruning of reflogs and old objects)\&. See +the section called \(lqFRESH CLONE SAFETY CHECK AND \-\-FORCE\(rq\&. Note that when cloning repos on a local filesystem, it is better to pass +\fB\-\-no\-local\fR +to git clone than passing +\fB\-\-force\fR +to git\-filter\-repo\&. +.RE +.PP +\-\-partial +.RS 4 +Do a partial history rewrite, resulting in the mixture of old and new history\&. This implies a default of update\-no\-add for \-\-replace\-refs, disables rewriting refs/remotes/origin/* to refs/heads/*, disables removing of the +\fIorigin\fR +remote, disables removing unexported refs, disables expiring the reflog, and disables the automatic post\-filter gc\&. Also, this modifies \-\-tag\-rename and \-\-refname\-callback options such that instead of replacing old refs with new refnames, it will instead create new refs and keep the old ones around\&. Use with caution\&. +.RE +.PP +\-\-refs +.RS 4 +Limit history rewriting to the specified refs\&. Implies \-\-partial\&. In addition to the normal caveats of \-\-partial (mixing old and new history, no automatic remapping of refs/remotes/origin/* to refs/heads/*, etc\&.), this also may cause problems for pruning of degenerate empty merge commits when negative revisions are specified\&. +.RE +.PP +\-\-dry\-run +.RS 4 +Do not change the repository\&. Run +\fBgit fast\-export\fR +and filter its output, and save both the original and the filtered version for comparison\&. This also disables rewriting commit messages due to not knowing new commit IDs and disables filtering of some empty commits due to inability to query the fast\-import backend\&. +.RE +.PP +\-\-debug +.RS 4 +Print additional information about operations being performed and commands being run\&. (If used together with \-\-dry\-run, shows extra information about what would be run)\&. +.RE +.PP +\-\-stdin +.RS 4 +Instead of running +\fBgit fast\-export\fR +and filtering its output, filter the fast\-export stream from stdin\&. The stdin must be in the expected input format (e\&.g\&. it needs to include original\-oid directives)\&. +.RE +.PP +\-\-quiet +.RS 4 +Pass \-\-quiet to other git commands called\&. +.RE +.SH "OUTPUT" +.sp +Every time filter\-repo is run, files are created in the \fB\&.git/filter\-repo/\fR directory\&. These files are overwritten unconditionally on every run\&. +.SS "Commit map" +.sp +The \fB\&.git/filter\-repo/commit\-map\fR file contains a mapping of how all commits were (or were not) changed\&. +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +A header is the first line with the text "old" and "new" +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Commit mappings are in no particular order +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +All commits in range of the rewrite will be listed, even commits that are unchanged (e\&.g\&. because the commit pre\-dated when the large file(s) were introduced to the repo)\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +An all\-zeros hash, or null SHA, represents a non\-existent object\&. When in the "new" column, this means the commit was removed entirely\&. +.RE +.SS "Reference map" +.sp +The \fB\&.git/filter\-repo/ref\-map\fR file contains a mapping of which local references were changed\&. +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +A header is the first line with the text "old", "new" and "ref" +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Reference mappings are in no particular order +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +An all\-zeros hash, or null SHA, represents a non\-existent object\&. When in the "new" column, this means the ref was removed entirely\&. +.RE +.SH "FRESH CLONE SAFETY CHECK AND \-\-FORCE" +.sp +Since filter\-repo does irreversible rewriting of history, it is important to avoid making changes to a repo for which the user doesn\(cqt have a good backup\&. The primary defense mechanism is to simply educate users and rely on them to be good stewards of their data; thus there are several warnings in the documentation about how filter repo rewrites history\&. +.sp +However, as a service to users, we would like to provide an additional safety check beyond the documentation\&. There isn\(cqt a good way to check if the user has a good backup, but we can ask a related question that is an imperfect but quite reasonable proxy: "Is this repository a fresh clone?" Unfortunately, that is also a question we can\(cqt get a perfect answer to; git provides no way to answer that question\&. However, there are approximately a dozen things that I found that seem to always be true of brand new clones (assuming they are either clones of remote repositories or are made with the \fB\-\-no\-local\fR flag), and I check for all of those\&. +.sp +These checks can have both false positives and false negatives\&. Someone might have a perfectly good backup of their repo without it actually being a fresh clone \(em but there\(cqs no way for filter\-repo to know that\&. Conversely, someone could look at all things that filter\-repo checks for in its safety checks and then just tweak their non\-backed\-up repository to satisfy those conditions (though it would take a fair amount of effort, and it\(cqs astronomically unlikely that a repo that isn\(cqt a fresh clone randomly happens to match all the criteria)\&. In practice, the safety checks filter\-repo uses seem to be really good at avoiding people accidentally running filter\-repo on a repository that they shouldn\(cqt be running it on\&. It even caught me once when I did mean to run filter\-repo but was in a different directory than I thought I was\&. +.sp +In short, it\(cqs perfectly fine to use \(oq\-\-force` to override the safety checks as long as you\(cqre okay with filter\-repo irreversibly rewriting the contents of the current repository\&. It is a really bad idea to get in the habit of always specifying \fB\-\-force\fR; if you do, one day you will run one of your commands in the wrong directory like I did, and you won\(cqt have the safety check anymore to bail you out\&. Also, it is definitely NOT okay to recommend \fB\-\-force\fR on forums, Q&A sites, or in emails to other users without first carefully explaining that \fB\-\-force\fR means putting your repositories\(cq data at risk\&. I am especially bothered by people who suggest the flag when it clearly is NOT needed; they are needlessly putting other peoples\*(Aq data at risk\&. +.SH "VERSATILITY" +.sp +filter\-repo has a hierarchy of capabilities on the spectrum from easy to use convenience flags that perform pre\-defined types of filtering, to choices that provide lots of flexibility in controlling how filtering occurs\&. This spectrum includes the following: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Convenience flags making common types of history rewriting simple (e\&.g\&. \-\-path, \-\-strip\-blobs\-bigger\-than, \-\-replace\-text, \-\-mailmap) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Options which are shorthand for others or which provide greater control than others (e\&.g\&. \-\-subdirectory\-filter could just be written using both a path selection (\-\-path) and a path rename (\-\-path\-rename) filter; \-\-paths\-from\-file can handle all other \-\-path* options and more such as regex renaming of paths) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Generic python callbacks for handling a certain type of data (the filename, message, name, email, and refname callbacks) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Generic python callbacks for handling fundamental git objects, allowing greater control over the combination of data types the object holds (the commit, tag, blob, and reset callbacks) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +The ability to import filter\-repo as a module in a python program and use its classes and functions for even greater control and flexibility while still leveraging lots of basic capabilities\&. One can even use this to write new tools with a completely different interface\&. +.RE +.sp +For more information about callbacks, see the section called \(lqCALLBACKS\(rq\&. For examples on writing python programs that import filter\-repo as a module to create new history rewriting tools, look at the contrib/filter\-repo\-demos/ directory\&. That directory includes, among other examples, a reimplementation of git\-filter\-branch which is faster than git\-filter\-branch, and a reimplementation of BFG Repo Cleaner with several bug fixes and new features\&. +.SH "DISCUSSION" +.sp +Using filter\-repo is relatively simple, but rewriting history is part of a larger discussion in terms of collaboration\&. When you rewrite history, the old and new histories are no longer compatible; if you push this history somewhere for others to view, it will look as though you\(cqve done a rebase of all branches and tags\&. Make sure you are familiar with the "RECOVERING FROM UPSTREAM REBASE" section of \fBgit-rebase\fR(1) (and in particular, "The hard case") before proceeding, in addition to this section\&. +.sp +Steps to use git\-filter\-repo as part of the bigger picture of doing a history rewrite are roughly as follows: +.sp +.RS 4 +.ie n \{\ +\h'-04' 1.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 1." 4.2 +.\} +Create a clone of your repository (if you created special refs outside of refs/heads/ or refs/tags/, make sure to fetch those too)\&. You may pass +\fB\-\-bare\fR +or +\fB\-\-mirror\fR +to +\fBgit clone\fR, if you prefer\&. You should pass +\fB\-\-no\-local\fR +if the repository you are cloning from is on the local filesystem\&. Avoid other flags; some might confuse the fresh clone check, and others could cause parts of the data to be missing that are needed for the rewrite\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 2.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 2." 4.2 +.\} +(Optional) Run +\fBgit filter\-repo \-\-analyze\fR\&. This will create a directory of reports mentioning renames that have occurred in your repo and also listing sizes of objects aggregated by path/directory/extension/blob\-id; this information may be useful in choosing how to filter your repo\&. It can also be useful to re\-run \-\-analyze after filtering to verify the changes look correct\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 3.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 3." 4.2 +.\} +Run filter\-repo with your desired filtering options\&. Many examples are given below\&. For more complex cases, note that doing the filtering in multiple steps (by running multiple filter\-repo invocations in a sequence) is supported\&. If anything goes wrong here, simply delete your clone and restart\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 4.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 4." 4.2 +.\} +Push your new repository to its new home (note that refs/remotes/origin/* will have been moved to refs/heads/* as the first part of filter\-repo, so you can just deal with normal branches instead of remote tracking branches)\&. While you can force push this to the same URL you cloned from, there are good reasons to consider pushing to a different location instead: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +People who cloned from the original repo will have old history\&. When they fetch the new history you force pushed up, unless they do a +\fBgit reset \-\-hard @{u}\fR +on their branches or rebase their local work, git will think they have hundreds or thousands of commits with very similar commit messages as what exist upstream (but which include files you wanted excised from history), and allow the user to merge the two histories, resulting in what looks like two copies of each commit\&. If they then push this history back up, then everyone now has history with two copies of each commit and the bad files have returned\&. You\(cqre more likely to succeed in forcing people to get rid of the old history if they have to clone a new URL\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Rewriting history will rewrite tags; those who have already downloaded tags will not get the updated tags by default (see the "On Re\-tagging" section of +\fBgit-tag\fR(1))\&. Every user trying to use an existing clone will have to forcibly delete all tags and re\-fetch them; it may be easier for them to just re\-clone, which they are more likely to do with a new clone URL\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Rewriting history may delete some refs (e\&.g\&. branches that only had files that you wanted excised from history); unless you run git push with the +\fB\-\-mirror\fR +or +\fB\-\-prune\fR +options, those refs will continue to exist on the server\&. If folks then merge these branches into others, then people have started mixing old and new history\&. If users had already cloned these branches, removing them from the server isn\(cqt enough; you need all users to delete any local branches based on these refs and run fetch with the +\fB\-\-prune\fR +option as well\&. Simply re\-cloning from a new URL is easier\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +The server may not allow you to force push over some refs\&. For example, code review systems may have special ref namespaces (e\&.g\&. refs/changes/, refs/pull/, refs/merge\-requests/) that they have locked down\&. +.RE +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 5.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 5." 4.2 +.\} +If you still want to push your rewritten history back to the original url despite my warnings above, you\(cqll have to manage it very carefully: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +git\-filter\-repo deletes the "origin" remote to help avoid people accidentally repushing to the same repository, so you\(cqll need to remind git what origin\(cqs url was\&. You\(cqll have to look up the command for that\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +You\(cqll need to carefully synchronize with +\fBeveryone\fR +who has cloned the repository, and will also need to carefully synchronize with +\fBeverything\fR +(e\&.g\&. CI systems) that has cloned it\&. Every single clone will either need to be thrown away and re\-cloned, or need to take all the steps outlined in item 4 as well as follow the necessary steps from "RECOVERING FROM UPSTREAM REBASE" section of +\fBgit-rebase\fR(1)\&. If you miss fixing any clones, you\(cqll risk mixing old and new history and end up with an even worse mess to clean up\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Finally, you\(cqll need to consult any documentation from your hosting provider about how to remove any server\-side references to the old commits (example: +\m[blue]\fBGitLab\(cqs excellent docs on reducing repository size\fR\m[]\&\s-2\u[1]\d\s+2, or just the warning box that references "GitHub support" from +\m[blue]\fBGitHub\(cqs otherwise dangerously out\-of\-date docs on removing sensitive data\fR\m[]\&\s-2\u[2]\d\s+2)\&. +.RE +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 6.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 6." 4.2 +.\} +(Optional) Some additional considerations +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +filter\-repo by default creates replace refs (see +\fBgit-replace\fR(1)) for each rewritten commit ID, allowing you to use old (unabbreviated) commit hashes in the git command line to refer to the newly rewritten commits\&. If you want to use these replace refs, manually push them to the relevant clone URL and tell users to manually fetch them (e\&.g\&. by adjusting their fetch refspec, +\fBgit config \-\-add remote\&.origin\&.fetch +refs/replace/*:refs/replace/*\fR)\&. Sadly, replace refs are not yet widely understood; projects like jgit and libgit2 do not support them and existing repository managers (e\&.g\&. Gerrit, GitHub, GitLab) do not yet understand replace refs\&. Thus one can\(cqt use old commit hashes within the UI of these other systems\&. This may change in the future, but replace refs at least help users locally within the git command line interface\&. Also, be aware that commit\-graphs are excessively cautious around replace refs and just turn off entirely if any are present, so after enough time has passed that old commit IDs become less relevant, users may want to locally delete the replace refs to regain the speedups from commit\-graphs\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +If you have a central repo, you may want to prevent people from pushing old commit IDs, in order to avoid mixing old and new history\&. Every repository manager does this differently, some provide specialized commands (e\&.g\&. +\m[blue]\fBhttps://gerrit\-review\&.googlesource\&.com/Documentation/cmd\-ban\-commit\&.html\fR\m[]), others require you to write hooks\&. +.RE +.RE +.SH "EXAMPLES" +.SS "Path based filtering" +.sp +To only keep the \fIREADME\&.md\fR file plus the directories \fIguides\fR and \fItools/releases/\fR: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path README\&.md \-\-path guides/ \-\-path tools/releases +.fi +.if n \{\ +.RE +.\} +.sp +.sp +Directory names can be given with or without a trailing slash, and all filenames are relative to the toplevel of the repo\&. To keep all files except these paths, just add \fB\-\-invert\-paths\fR: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path README\&.md \-\-path guides/ \-\-path tools/releases \-\-invert\-paths +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you want to have both an inclusion filter and an exclusion filter, just run filter\-repo multiple times\&. For example, to keep the src/main subdirectory but exclude files under src/main named \fIdata\fR, run: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path src/main/ +git filter\-repo \-\-path\-glob \*(Aqsrc/*/data\*(Aq \-\-invert\-paths +.fi +.if n \{\ +.RE +.\} +.sp +.sp +Note that the asterisk (\fB*\fR) will match across multiple directories, so the second command would remove e\&.g\&. src/main/org/whatever/data\&. Also, the second command by itself would also remove e\&.g\&. src/not\-main/foo/data, but since src/not\-main/ was removed by the first command, that\(cqs not an issue\&. Also, the use of quotes around the asterisk is sometimes important to avoid glob expansion by the shell\&. +.sp +You can also select paths by regular expression (see \m[blue]\fBhttps://docs\&.python\&.org/3/library/re\&.html#regular\-expression\-syntax\fR\m[])\&. For example, to only include files from the repo whose name is in the format YYYY\-MM\-DD\&.txt and is found at least two subdirectories deep: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path\-regex \*(Aq^\&.*/\&.*/[0\-9]{4}\-[0\-9]{2}\-[0\-9]{2}\&.txt$\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you want two directories to be renamed (and maybe merged if both are renamed to the same location), use \-\-path\-rename; for example, to rename both \fIcmds/\fR and \fIsrc/scripts/\fR to \fItools/\fR: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path\-rename cmds:tools \-\-path\-rename src/scripts/:tools/ +.fi +.if n \{\ +.RE +.\} +.sp +.sp +As with \fB\-\-path\fR, directories can be specified with or without a trailing slash for \fB\-\-path\-rename\fR\&. +.sp +If you do a \fB\-\-path\-rename\fR to something that was already in use, it will be silently overwritten\&. However, if you try to rename multiple files to the same location (e\&.g\&. src/scripts/run_release\&.sh and cmds/run_release\&.sh both existed and had different content with the renames above), then you will be given an error\&. If you have such a case, you may want to add another rename command to move one of the paths somewhere else where it won\(cqt collide: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path\-rename cmds/run_release\&.sh:tools/do_release\&.sh \e + \-\-path\-rename cmds/:tools/ \e + \-\-path\-rename src/scripts/:tools/ +.fi +.if n \{\ +.RE +.\} +.sp +.sp +Also, \fB\-\-path\-rename\fR brings up ordering issues; all path arguments are applied in order\&. Thus, a command like +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path\-rename sources/:src/main/ \-\-path src/main/ +.fi +.if n \{\ +.RE +.\} +.sp +.sp +would make sense but reversing the two arguments would not (src/main/ is created by the rename so reversing the two would give you an empty repo)\&. Also, note that the rename of cmds/run_release\&.sh a couple examples ago was done before the other renames\&. +.sp +Note that path renaming does not do path filtering, thus the following command +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path src/main/ \-\-path\-rename tools/:scripts/ +.fi +.if n \{\ +.RE +.\} +.sp +.sp +would not result in the tools or scripts directories being present, because the single filter selected only src/main/\&. It\(cqs likely that you would instead want to run: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-path src/main/ \-\-path tools/ \-\-path\-rename tools/:scripts/ +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you prefer to filter based solely on basename, use the \fB\-\-use\-base\-name\fR flag (though this is incompatible with \fB\-\-path\-rename\fR)\&. For example, to only include README\&.md and Makefile files from any directory: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-use\-base\-name \-\-path README\&.md \-\-path Makefile +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you wanted to delete all \&.DS_Store files in any directory, you could either use: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-invert\-paths \-\-path \*(Aq\&.DS_Store\*(Aq \-\-use\-base\-name +.fi +.if n \{\ +.RE +.\} +.sp +.sp +or +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-invert\-paths \-\-path\-glob \*(Aq*/\&.DS_Store\*(Aq \-\-path \*(Aq\&.DS_Store\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +(the \fB\-\-path\-glob\fR isn\(cqt sufficient by itself as it might miss a toplevel \&.DS_Store file; further while something like \fB\-\-path\-glob \*(Aq*\&.DS_Store\*(Aq\fR would workaround that problem it would also grab files named \fBfoo\&.DS_Store\fR or \fBbar/baz\&.DS_Store\fR) +.sp +Finally, see also the \fB\-\-filename\-callback\fR from the section called \(lqCALLBACKS\(rq\&. +.SS "Filtering based on many paths" +.sp +If you have a long list of files, directories, globs, or regular expressions to filter on, you can stick them in a file and use \fB\-\-paths\-from\-file\fR; for example, with a file named stuff\-i\-want\&.txt with contents of +.sp +.if n \{\ +.RS 4 +.\} +.nf +# Blank lines and comment lines are ignored\&. +# Examples similar to \-\-path: +README\&.md +guides/ +tools/releases + +# An example that is like \-\-path\-glob: +glob:*\&.py + +# An example that is like \-\-path\-regex: +regex:^\&.*/\&.*/[0\-9]{4}\-[0\-9]{2}\-[0\-9]{2}\&.txt$ + +# An example of renaming a path +tools/==>scripts/ + +# An example of using a regex to rename a path +regex:(\&.*)/([^/]*)/([^/]*)\e\&.text$==>\e2/\e1/\e3\&.txt +.fi +.if n \{\ +.RE +.\} +.sp +.sp +then you could run +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-paths\-from\-file stuff\-i\-want\&.txt +.fi +.if n \{\ +.RE +.\} +.sp +.sp +to get a repo containing only the toplevel README\&.md file, the guides/ and tools/releases/ directories, all python files, files whose name was of the form YYYY\-MM\-DD\&.txt at least two subdirectories deep, and would rename tools/ to scripts/ and rename files like foo/bar/baz\&.text to bar/foo/baz\&.txt\&. Note the special line prefixes of \fBglob:\fR and \fBregex:\fR and the special string \fB==>\fR denoting renames\&. +.sp +Sometimes you have a way of easily generating all the files you want\&. For example, if you know that none of the currently tracked files have any newlines or special characters in them (see core\&.quotePath from \fBgit config \-\-help\fR) so that \fBgit ls\-files\fR would print all files literally one per line, and you knew that you wanted to keep only the files that are currently tracked (thus deleting from all commits in history any files that only appear on other branches or that only appear in older commits), then you could use a pair of commands such as +.sp +.if n \{\ +.RS 4 +.\} +.nf +git ls\-files >\&.\&./paths\-i\-want\&.txt +git filter\-repo \-\-paths\-from\-file \&.\&./paths\-i\-want\&.txt +.fi +.if n \{\ +.RE +.\} +.sp +.sp +Similarly, you could use \-\-paths\-from\-file to delete many files\&. For example, you could run \fBgit filter\-repo \-\-analyze\fR to get reports, look in one such as \&.git/filter\-repo/analysis/path\-deleted\-sizes\&.txt and copy all the filenames into a file such as /tmp/files\-i\-dont\-want\-anymore\&.txt and then run +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-invert\-paths \-\-paths\-from\-file /tmp/files\-i\-dont\-want\-anymore\&.txt +.fi +.if n \{\ +.RE +.\} +.sp +.sp +to delete them all\&. +.SS "Directory based shortcuts" +.sp +Let\(cqs say you had a directory structure like the following: +.sp +.if n \{\ +.RS 4 +.\} +.nf +module/ + foo\&.c + bar\&.c +otherDir/ + blah\&.config + stuff\&.txt +zebra\&.jpg +.fi +.if n \{\ +.RE +.\} +.sp +If you wanted just the module/ directory and you wanted it to become the new root so that your new directory structure looked like +.sp +.if n \{\ +.RS 4 +.\} +.nf +foo\&.c +bar\&.c +.fi +.if n \{\ +.RE +.\} +.sp +then you could run: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-subdirectory\-filter module/ +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you wanted all the files from the original repo, but wanted to move everything under a subdirectory named my\-module/, so that your new directory structure looked like +.sp +.if n \{\ +.RS 4 +.\} +.nf +my\-module/ + module/ + foo\&.c + bar\&.c + otherDir/ + blah\&.config + stuff\&.txt + zebra\&.jpg +.fi +.if n \{\ +.RE +.\} +.sp +then you would instead run run +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-to\-subdirectory\-filter my\-module/ +.fi +.if n \{\ +.RE +.\} +.sp +.SS "Content based filtering" +.sp +If you want to filter out all files bigger than a certain size, you can use \fB\-\-strip\-blobs\-bigger\-than\fR with some size (K, M, and G suffixes are recognized), e\&.g\&.: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-strip\-blobs\-bigger\-than 10M +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you want to strip out all files with specified git object ids (hashes), list the hashes in a file and run +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-strip\-blobs\-with\-ids FILE_WITH_GIT_BLOB_IDS +.fi +.if n \{\ +.RE +.\} +.sp +.sp +If you want to modify file contents, you can do so based on a list of expressions in a file, one per line\&. For example, with a file named expressions\&.txt containing +.sp +.if n \{\ +.RS 4 +.\} +.nf +p455w0rd +foo==>bar +glob:*666*==> +regex:\ebdriver\eb==>pilot +literal:MM/DD/YYYY==>YYYY\-MM\-DD +regex:([0\-9]{2})/([0\-9]{2})/([0\-9]{4})==>\e3\-\e1\-\e2 +.fi +.if n \{\ +.RE +.\} +.sp +.sp +then running +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-replace\-text expressions\&.txt +.fi +.if n \{\ +.RE +.\} +.sp +.sp +will go through and replace \fBp455w0rd\fR with \fB***REMOVED***\fR, \fBfoo\fR with \fBbar\fR, any line containing \fB666\fR with a blank line, the word \fBdriver\fR with \fBpilot\fR (but not if it has letters before or after; e\&.g\&. \fBdrivers\fR will be unmodified), replace the exact text \fBMM/DD/YYYY\fR with \fBYYYY\-MM\-DD\fR and replace date strings of the form MM/DD/YYYY with ones of the form YYYY\-MM\-DD\&. In the expressions file, there are a few things to note: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Every line has a replacement, given by whatever is on the right of +\fB==>\fR\&. If +\fB==>\fR +does not appear on the line, the default replacement is +\fB***REMOVED***\fR\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Lines can start with +\fBliteral:\fR, +\fBglob:\fR, or +\fBregex:\fR +to specify whether to do literal string matches, globs (see +\m[blue]\fBhttps://docs\&.python\&.org/3/library/fnmatch\&.html\fR\m[]), or regular expressions (see +\m[blue]\fBhttps://docs\&.python\&.org/3/library/re\&.html#regular\-expression\-syntax\fR\m[])\&. If none of these are specified, +\fBliteral:\fR +is assumed\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +If multiple matches are found, all are replaced\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +globs and regexes are applied to the entire file, but without any special flags turned on\&. Some folks may be interested in adding +\fB(?m)\fR +to the regex to turn on MULTILINE mode, so that +\fB^\fR +and +\fB$\fR +match the beginning and ends of lines rather than the beginning and end of file\&. See +\m[blue]\fBhttps://docs\&.python\&.org/3/library/re\&.html\fR\m[] +for details\&. +.RE +.sp +See also the \fB\-\-blob\-callback\fR from the section called \(lqCALLBACKS\(rq\&. +.SS "Updating commit/tag messages" +.sp +If you want to modify commit or tag messages, you can do so with the same syntax as \fB\-\-replace\-text\fR, explained above\&. For example, with a file named expressions\&.txt containing +.sp +.if n \{\ +.RS 4 +.\} +.nf +foo==>bar +.fi +.if n \{\ +.RE +.\} +.sp +.sp +then running +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-replace\-message expressions\&.txt +.fi +.if n \{\ +.RE +.\} +.sp +.sp +will replace \fBfoo\fR in commit or tag messages with \fBbar\fR\&. +.sp +See also the \fB\-\-message\-callback\fR from the section called \(lqCALLBACKS\(rq\&. +.SS "Refname based filtering" +.sp +To rename tags, use \fB\-\-tag\-rename\fR, e\&.g\&.: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-tag\-rename foo:bar +.fi +.if n \{\ +.RE +.\} +.sp +.sp +This will rename any tags starting with \fBfoo\fR to now start with \fBbar\fR\&. Either side of the colon could be blank, e\&.g\&. +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-tag\-rename \*(Aq\*(Aq:\*(Aqmy\-module\-\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +For more general refname modification, see \fB\-\-refname\-callback\fR from the section called \(lqCALLBACKS\(rq\&. +.SS "User and email based filtering" +.sp +To modify username and emails of commits, you can create a mailmap file in the format accepted by \fBgit-shortlog\fR(1)\&. For example, if you have a file named my\-mailmap you can run +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-mailmap my\-mailmap +.fi +.if n \{\ +.RE +.\} +.sp +.sp +and if the current contents of that file are as follows (if the specified mailmap file is version controlled, historical versions of the file are ignored): +.sp +.if n \{\ +.RS 4 +.\} +.nf +Name For User + +New Name And +New Name And Old Name And +.fi +.if n \{\ +.RE +.\} +.sp +.sp +then we can update username and/or emails based on the specified mapping\&. +.sp +See also the \fB\-\-name\-callback\fR and \fB\-\-email\-callback\fR from the section called \(lqCALLBACKS\(rq\&. +.SS "Parent rewriting" +.sp +To replace $commit_A with $commit_B (e\&.g\&. make all commits which had $commit_A as a parent instead have $commit_B for that parent), and rewrite history to make it permanent: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git replace $commit_A $commit_B +git filter\-repo \-\-force +.fi +.if n \{\ +.RE +.\} +.sp +.sp +To create a new commit with the same contents as $commit_A except with different parent(s) and then replace $commit_A with the new commit, and rewrite history to make it permanent: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git replace \-\-graft $commit_A $new_parent_or_parents +git filter\-repo \-\-force +.fi +.if n \{\ +.RE +.\} +.sp +.sp +The reason to specify \-\-force is two\-fold: filter\-repo will error out if no arguments are specified, and the new graft commit would otherwise trigger the not\-a\-fresh\-clone check\&. +.SS "Partial history rewrites" +.sp +To rewrite the history on just one branch (which may cause it to no longer share any common history with other branches), use \fB\-\-refs\fR\&. For example, to remove a file named \fIextraneous\&.txt\fR from the \fImaster\fR branch: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-invert\-paths \-\-path extraneous\&.txt \-\-refs master +.fi +.if n \{\ +.RE +.\} +.sp +.sp +To rewrite just some recent commits: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-invert\-paths \-\-path extraneous\&.txt \-\-refs master~3\&.\&.master +.fi +.if n \{\ +.RE +.\} +.sp +.SH "CALLBACKS" +.sp +For flexibility, filter\-repo allows you to specify functions on the command line to further filter all changes\&. Please note that there are some API compatibility caveats associated with these callbacks that you should be aware of before using them; see the "API BACKWARD COMPATIBILITY CAVEAT" comment near the top of git\-filter\-repo source code\&. +.sp +All callback functions are of the same general format\&. For a command line argument like +.sp +.if n \{\ +.RS 4 +.\} +.nf +\-\-foo\-callback \*(AqBODY\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +the following code will be compiled and called: +.sp +.if n \{\ +.RS 4 +.\} +.nf +def foo_callback(foo): + BODY +.fi +.if n \{\ +.RE +.\} +.sp +.sp +Thus, you just need to make sure your \fIBODY\fR modifies and returns \fIfoo\fR appropriately\&. One important thing to note for all callbacks is that filter\-repo uses bytestrings (see \m[blue]\fBhttps://docs\&.python\&.org/3/library/stdtypes\&.html#bytes\fR\m[]) everywhere instead of strings\&. +.sp +There are four callbacks that allow you to operate directly on raw objects that contain data that\(cqs easy to write in \fBgit-fast-import\fR(1) format: +.sp +.if n \{\ +.RS 4 +.\} +.nf +\-\-blob\-callback +\-\-commit\-callback +\-\-tag\-callback +\-\-reset\-callback +.fi +.if n \{\ +.RE +.\} +.sp +.sp +We\(cqll come back to these later because it is often the case that the other callbacks are more convenient\&. The other callbacks operate on a small piece of the raw objects or operate on pieces across multiple types of raw object (e\&.g\&. author names and committer names and tagger names across commits and tags, or refnames across commits, tags, and resets, or messages across commits and tags)\&. The convenience callbacks are: +.sp +.if n \{\ +.RS 4 +.\} +.nf +\-\-filename\-callback +\-\-message\-callback +\-\-name\-callback +\-\-email\-callback +\-\-refname\-callback +.fi +.if n \{\ +.RE +.\} +.sp +.sp +in each you are expected to simply return a new value based on the one passed in\&. For example, +.sp +.if n \{\ +.RS 4 +.\} +.nf +git\-filter\-repo \-\-name\-callback \*(Aqreturn name\&.replace(b"Wiliam", b"William")\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +would result in the following function being called: +.sp +.if n \{\ +.RS 4 +.\} +.nf +def name_callback(name): + return name\&.replace(b"Wiliam", b"William") +.fi +.if n \{\ +.RE +.\} +.sp +.sp +The email callback is quite similar: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git\-filter\-repo \-\-email\-callback \*(Aqreturn email\&.replace(b"\&.cm", b"\&.com")\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +The refname callback is also similar, but note that the refname passed in and returned are expected to be fully qualified (e\&.g\&. b"refs/heads/master" instead of just b"master" and b"refs/tags/v1\&.0\&.7" instead of b"1\&.0\&.7"): +.sp +.if n \{\ +.RS 4 +.\} +.nf +git\-filter\-repo \-\-refname\-callback \*(Aq + # Change e\&.g\&. refs/heads/master to refs/heads/prefix\-master + rdir,rpath = os\&.path\&.split(refname) + return rdir + b"/prefix\-" + rpath\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +The message callback is quite similar to the previous three callbacks, though it operates on a bytestring that is likely more than one line: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git\-filter\-repo \-\-message\-callback \*(Aq + if b"Signed\-off\-by:" not in message: + message += b"\enSigned\-off\-by: Me My " + return re\&.sub(b"[Ee]\-?[Mm][Aa][Ii][Ll]", b"email", message)\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +The filename callback is slightly more interesting\&. Returning None means the file should be removed from all commits, returning the filename unmodified marks the file to be kept, and returning a different name means the file should be renamed\&. An example: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git\-filter\-repo \-\-filename\-callback \*(Aq + if b"/src/" in filename: + # Remove all files with a directory named "src" in their path + # (except when "src" appears at the toplevel)\&. + return None + elif filename\&.startswith(b"tools/"): + # Rename tools/ \-> scripts/misc/ + return b"scripts/misc/" + filename[6:] + else: + # Keep the filename and do not rename it + return filename + \*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.sp +In contrast, the blob, reset, tag, and commit callbacks are not expected to return a value, but are instead expected to modify the object passed in\&. Major fields for these objects are (subject to API backward compatibility caveats mentioned previously): +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Blob: +\fBoriginal_id\fR +(original hash) and +\fBdata\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Reset: +\fBref\fR +(name of reference) and +\fBfrom_ref\fR +(hash or integer mark) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Tag: +\fBref\fR, +\fBfrom_ref\fR, +\fBoriginal_id\fR, +\fBtagger_name\fR, +\fBtagger_email\fR, +\fBtagger_date\fR, +\fBmessage\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Commit: +\fBbranch\fR, +\fBoriginal_id\fR, +\fBauthor_name\fR, +\fBauthor_email\fR, +\fBauthor_date\fR, +\fBcommitter_name\fR, +\fBcommitter_email\fR, +\fBcommitter_date\fR, +\fBmessage\fR, +\fBfile_changes\fR +(list of FileChange objects, each containing a +\fBtype\fR, +\fBfilename\fR, +\fBmode\fR, and +\fBblob_id\fR), +\fBparents\fR +(list of hashes or integer marks) +.RE +.sp +An example of each: +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-blob\-callback \*(Aq + if len(blob\&.data) > 25: + # Mark this blob for removal from all commits + blob\&.skip() + else: + blob\&.data = blob\&.data\&.replace(b"Hello", b"Goodbye") + \*(Aq +.fi +.if n \{\ +.RE +.\} +.sp + +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-reset\-callback \*(Aqreset\&.ref = reset\&.ref\&.replace(b"master", b"dev")\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp + +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-tag\-callback \*(Aq + if tag\&.tagger_name == b"Jim Williams": + # Omit this tag + tag\&.skip() + else: + tag\&.message = tag\&.message + b"\en\enTag of %s by %s on %s" % (tag\&.ref, tag\&.tagger_email, tag\&.tagger_date)\*(Aq +.fi +.if n \{\ +.RE +.\} +.sp + +.sp +.if n \{\ +.RS 4 +.\} +.nf +git filter\-repo \-\-commit\-callback \*(Aq + # Remove executable files with three 6s in their name (including + # from leading directories)\&. + # Also, undo deletion of sources/foo/bar\&.txt (change types are + # either b"D" (deletion) or b"M" (add or modify); renames are + # handled by deleting the old file and adding a new one) + commit\&.file_changes = [ + change for change in commit\&.file_changes + if not (change\&.mode == b"100755" and + change\&.filename\&.count(b"6") == 3) and + not (change\&.type == b"D" and + change\&.filename == b"sources/foo/bar\&.txt")] + # Mark all \&.sh files as executable; modes in git are always one of + # 100644 (normal file), 100755 (executable), 120000 (symlink), or + # 160000 (submodule) + for change in commit\&.file_changes: + if change\&.filename\&.endswith(b"\&.sh"): + change\&.mode = b"100755" + \*(Aq +.fi +.if n \{\ +.RE +.\} +.sp +.SH "INTERNALS" +.sp +You probably don\(cqt need to read this section unless you are just very curious or you are trying to do a very complex history rewrite\&. +.SS "How filter\-repo works" +.sp +Roughly, filter\-repo works by running +.sp +.if n \{\ +.RS 4 +.\} +.nf +git fast\-export | filter | git fast\-import +.fi +.if n \{\ +.RE +.\} +.sp +.sp +where filter\-repo not only launches the whole pipeline but also serves as the \fIfilter\fR in the middle\&. However, filter\-repo does a few additional things on top in order to make it into a well\-rounded filtering tool\&. A sequence that more accurately reflects what filter\-repo runs is: +.sp +.RS 4 +.ie n \{\ +\h'-04' 1.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 1." 4.2 +.\} +Verify we\(cqre in a fresh clone +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 2.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 2." 4.2 +.\} +\fBgit fetch \-u \&. refs/remotes/origin/*:refs/heads/*\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 3.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 3." 4.2 +.\} +\fBgit remote rm origin\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 4.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 4." 4.2 +.\} +\fBgit fast\-export \-\-show\-original\-ids \-\-reference\-excluded\-parents \-\-fake\-missing\-tagger \-\-signed\-tags=strip \-\-tag\-of\-filtered\-object=rewrite \-\-use\-done\-feature \-\-no\-data \-\-reencode=yes \-\-mark\-tags \-\-all | filter | git \-c core\&.ignorecase=false fast\-import \-\-date\-format=raw\-permissive \-\-force \-\-quiet\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 5.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 5." 4.2 +.\} +\fBgit update\-ref \-\-no\-deref \-\-stdin\fR, fed with a list of refs to nuke, and a list of replace refs to delete, create, or update\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 6.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 6." 4.2 +.\} +\fBgit reset \-\-hard\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 7.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 7." 4.2 +.\} +\fBgit reflog expire \-\-expire=now \-\-all\fR +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 8.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 8." 4.2 +.\} +\fBgit gc \-\-prune=now\fR +.RE +.sp +Some notes or exceptions on each of the above: +.sp +.RS 4 +.ie n \{\ +\h'-04' 1.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 1." 4.2 +.\} +If we\(cqre not in a fresh clone, users will not be able to recover if they used the wrong command or ran in the wrong repo\&. (Though +\fB\-\-force\fR +overrides this check, and it\(cqs also off if you\(cqve already ran filter\-repo once in this repo\&.) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 2.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 2." 4.2 +.\} +Technically, we actually use a +\fBgit update\-ref\fR +command fed with a lot of input due to the fact that users can use +\fB\-\-force\fR +when local branches might not match remote branches\&. But this fetch command catches the intent rather succinctly\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 3.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 3." 4.2 +.\} +We don\(cqt want users accidentally pushing back to the original repo, as discussed in +the section called \(lqDISCUSSION\(rq\&. It also reminds users that since history has been rewritten, this repo is no longer compatible with the original\&. Finally, another minor benefit is this allows users to push with the +\fB\-\-mirror\fR +option to their new home without accidentally sending remote tracking branches\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 4.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 4." 4.2 +.\} +Some of these flags are always used but others are actually conditional\&. For example, filter\-repo\(cqs +\fB\-\-replace\-text\fR +and +\fB\-\-blob\-callback\fR +options need to work on blobs so +\fB\-\-no\-data\fR +cannot be passed to fast\-export\&. But when we don\(cqt need to work on blobs, passing +\fB\-\-no\-data\fR +speeds things up\&. Also, other flags may change the structure of the pipeline as well (e\&.g\&. +\fB\-\-dry\-run\fR +and +\fB\-\-debug\fR) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 5.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 5." 4.2 +.\} +We use this step to write replace refs for accessing the newly written commit hashes using their previous names\&. Also, if refs were renamed by various steps, we need to delete the old refnames in order to avoid mixing old and new history\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 6.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 6." 4.2 +.\} +Users also have old versions of files in their working tree and index; we want those cleaned up to match the rewritten history as well\&. Note that this step is skipped in bare repos\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 7.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 7." 4.2 +.\} +Reflogs will hold on to old history, so we need to expire them\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04' 8.\h'+01'\c +.\} +.el \{\ +.sp -1 +.IP " 8." 4.2 +.\} +We need to gc to avoid mixing new and old history\&. Also, it shrinks the repository for users, so they don\(cqt have to do extra work\&. (Odds are that they\(cqve only rewritten trees and commits and maybe a few blobs, so +\fB\-\-aggressive\fR +isn\(cqt needed and would be too slow\&.) +.RE +.sp +Information about these steps is printed out when \fB\-\-debug\fR is passed to filter\-repo\&. When doing a \fB\-\-partial\fR history rewrite, steps 2, 3, 7, and 8 are unconditionally skipped, step 5 is skipped if \fB\-\-replace\-refs\fR is \fBupdate\-no\-add\fR, and just the nuke\-unused\-refs portion of step 5 is skipped if \fB\-\-replace\-refs\fR is something else\&. +.SS "Limitations" +.sp +.it 1 an-trap +.nr an-no-space-flag 1 +.nr an-break-flag 1 +.br +.ps +1 +\fBInherited limitations\fR +.RS 4 +.sp +Since git filter\-repo calls fast\-export and fast\-import to do a lot of the heavy lifting, it inherits limitations from those systems: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +extended commit headers, if any, are stripped +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +commits get rewritten meaning they will have new hashes; therefore, signatures on commits and tags cannot continue to work and instead are just removed (thus signed tags become annotated tags) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +tags of commits are supported\&. Prior to git\-2\&.24\&.0, tags of blobs and tags of tags are not supported (fast\-export would die on such tags)\&. tags of trees are not supported in any git version (since fast\-export ignores tags of trees with a warning and fast\-import provides no way to import them)\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +annotated and signed tags outside of the refs/tags/ namespace are not supported (their location will be mangled in weird ways) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +fast\-import will die on various forms of invalid input, such as a timezone with more than four digits +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +fast\-export cannot reencode commit messages into UTF\-8 if the commit message is not valid in its specified encoding (in such cases, it\(cqll leave the commit message and the encoding header alone)\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +commits without an author will be given one matching the committer +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +tags without a tagger will be given a fake tagger +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +references that include commit cycles in their history (which can be created with +\fBgit-replace\fR(1)) will not be flagged to the user as an error but will be silently deleted by fast\-export as though the branch or tag contained no interesting files +.RE +.sp +There are also some limitations due to the design of these systems: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Trying to insert additional files into the stream can be tricky; since fast\-export only lists file changes in a merge relative to its first parent, if you insert additional files into a commit that is in the second (or third or fourth) parent history of a merge, then you also need to add it to the merge manually\&. (Similarly, if you change which parent is the first parent in a merge commit, you need to manually update the list of file changes to be relative to the new first parent\&.) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +fast\-export and fast\-import work with exact file contents, not patches\&. (e\&.g\&. "Whatever the current contents of this file, update them to now have these contents") Because of this, removing the changes made in a single commit or inserting additional changes to a file in some commit and expecting them to propagate forward is not something that can be done with these tools\&. Use +\fBgit-rebase\fR(1) +for that\&. +.RE +.RE +.sp +.it 1 an-trap +.nr an-no-space-flag 1 +.nr an-break-flag 1 +.br +.ps +1 +\fBIntrinsic limitations\fR +.RS 4 +.sp +Some types of filtering have limitations that would affect any tool attempting to perform them; the most any tool can do is attempt to notify the user when it detects an issue: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +When rewriting commit hashes in commit messages, there are a variety of cases when the hash will not be updated (whenever this happens, a note is written to +\fB\&.git/filter\-repo/suboptimal\-issues\fR): +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +if a commit hash does not correspond to a commit in the old repo +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +if a commit hash corresponds to a commit that gets pruned +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +if an abbreviated hash is not unique +.RE +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Pruning of empty commits can cause a merge commit to lose an entire ancestry line and become a non\-merge\&. If the merge commit had no changes then it can be pruned too, but if it still has changes it needs to be kept\&. This might cause minor confusion since the commit will likely have a commit message that makes it sound like a merge commit even though it\(cqs not\&. (Whenever a merge commit becomes a non\-merge commit, a note is written to +\fB\&.git/filter\-repo/suboptimal\-issues\fR) +.RE +.RE +.sp +.it 1 an-trap +.nr an-no-space-flag 1 +.nr an-break-flag 1 +.br +.ps +1 +\fBIssues specific to filter-repo\fR +.RS 4 +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Multiple repositories in the wild have been observed which use a bogus timezone (\fB+051800\fR); google will find you some reports\&. The intended timezone wasn\(cqt clear or wasn\(cqt always the same\&. Replace with a different bogus timezone that fast\-import will accept (\fB+0261\fR)\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +\fB\-\-path\-rename\fR +can result in pathname collisions; to avoid excessive memory requirements of tracking which files are in all commits or looking up what files exist with either every commit or every usage of \-\-path\-rename, we just tell the user that they might clobber other changes if they aren\(cqt careful\&. We can check if the clobbering comes from another \-\-path\-rename without much overhead\&. (Perhaps in the future it\(cqs worth adding a slow mode to \-\-path\-rename that will do the more exhaustive checks?) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +There is no mechanism for directly controlling which flags are passed to fast\-export (or fast\-import); only pre\-defined flags can be turned on or off as a side\-effect of other options\&. Direct control would make little sense because some options like +\fB\-\-full\-tree\fR +would require additional code in filter\-repo (to parse new directives), and others such as +\fB\-M\fR +or +\fB\-C\fR +would break assumptions used in other places of filter\-repo\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Partial\-repo filtering, while supported, runs counter to filter\-repo\(cqs "avoid mixing old and new history" design\&. This support has required improvements to core git as well (e\&.g\&. it depends upon the +\fB\-\-reference\-excluded\-parents\fR +option to fast\-export that was added specifically for this usage within filter\-repo)\&. The +\fB\-\-partial\fR +and +\fB\-\-refs\fR +options will continue to be supported since there are people with usecases for them; however, I am concerned that this inconsistency about mixing old and new history seems likely to lead to user mistakes\&. For now, I just hope that long explanations of caveats in the documentation of these options suffice to curtail any such problems\&. +.RE +.RE +.sp +.it 1 an-trap +.nr an-no-space-flag 1 +.nr an-break-flag 1 +.br +.ps +1 +\fBComments on reversibility\fR +.RS 4 +.sp +Some people are interested in reversibility of a rewrite; e\&.g\&. rewrite history, possibly add some commits, then unrewrite and get the original history back plus a few new "unrewritten" commits\&. Obviously this is impossible if your rewrite involves throwing away information (e\&.g\&. filtering out files or replacing several different strings with \fB***REMOVED***\fR), but may be possible with some rewrites\&. filter\-repo is likely to be a poor fit for this type of workflow for a few reasons: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +most of the limitations inherited from fast\-export and fast\-import are of a type that cause reversibility issues +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +grafts and replace refs, if present, are used in the rewrite and made permanent +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +rewriting of commit hashes will probably be reversible, but it is possible for rewritten abbreviated hashes to not be unique even if the original abbreviated hashes were\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +filter\-repo defaults to several forms of irreversible rewriting that you may need to turn off (e\&.g\&. the last two bullet points above or reencoding commit messages into UTF\-8); it\(cqs possible that additional forms of irreversible rewrites will be added in the future\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +I assume that people use filter\-repo for one\-shot conversions, not ongoing data transfers\&. I explicitly reserve the right to change any API in filter\-repo based on this presumption (and a comment to this effect is found in multiple places in the code and examples)\&. You have been warned\&. +.RE +.RE +.SH "SEE ALSO" +.sp +\fBgit-rebase\fR(1), \fBgit-filter-branch\fR(1) +.SH "GIT" +.sp +Part of the \fBgit\fR(1) suite +.SH "NOTES" +.IP " 1." 4 +GitLab\(cqs excellent docs on reducing repository size +.RS 4 +\%https://docs.gitlab.com/ee/user/project/repository/reducing_the_repo_size_using_git.html +.RE +.IP " 2." 4 +GitHub\(cqs otherwise dangerously out-of-date docs on removing sensitive data +.RS 4 +\%https://docs.github.com/en/github/authenticating-to-github/removing-sensitive-data-from-a-repository +.RE diff --git a/devel/git-filter-repo-devel/files/patch-Makefile b/devel/git-filter-repo-devel/files/patch-Makefile new file mode 100644 index 000000000000..6427cf430496 --- /dev/null +++ b/devel/git-filter-repo-devel/files/patch-Makefile @@ -0,0 +1,26 @@ +--- Makefile.orig 2024-07-17 21:46:36.000000000 -0700 ++++ Makefile 2024-07-18 21:01:20.340858000 -0700 +@@ -25,7 +25,7 @@ + # html/git-filter-repo.html. But let's support people installing from a git + # clone too; for them, just cheat and snag a copy of the built docs that I + # record in a different branch. +-snag_docs: Documentation/man1/git-filter-repo.1 Documentation/html/git-filter-repo.html ++snag_docs: Documentation/man1/git-filter-repo.1 + + Documentation/man1/git-filter-repo.1: + mkdir -p Documentation/man1 +@@ -35,12 +35,11 @@ + mkdir -p Documentation/html + git show origin/docs:html/git-filter-repo.html >Documentation/html/git-filter-repo.html + +-install: snag_docs #fixup_locale ++install: + $(INSTALL) -Dm0755 git-filter-repo "$(DESTDIR)/$(bindir)/git-filter-repo" + $(INSTALL) -dm0755 "$(DESTDIR)/$(pythondir)" +- ln -sf "$(bindir)/git-filter-repo" "$(DESTDIR)/$(pythondir)/git_filter_repo.py" ++ ( cd "$(pythondir)" && ln -sf ../../../libexec/git-core/git-filter-repo git_filter_repo.py ) + $(INSTALL) -Dm0644 Documentation/man1/git-filter-repo.1 "$(DESTDIR)/$(mandir)/man1/git-filter-repo.1" +- $(INSTALL) -Dm0644 Documentation/html/git-filter-repo.html "$(DESTDIR)/$(htmldir)/git-filter-repo.html" + if which mandb > /dev/null; then mandb; fi + + diff --git a/devel/git-filter-repo-devel/pkg-descr b/devel/git-filter-repo-devel/pkg-descr new file mode 100644 index 000000000000..0f0f592c1adc --- /dev/null +++ b/devel/git-filter-repo-devel/pkg-descr @@ -0,0 +1,7 @@ +git filter-repo is a versatile tool for rewriting history, which +includes capabilities I have not found anywhere else. It roughly falls +into the same space of tool as git filter-branch but without the +capitulation-inducing poor performance, with far more capabilities, +and with a design that scales usability-wise beyond trivial rewriting +cases. git filter-repo is now recommended by the git project instead of +git filter-branch. diff --git a/devel/git-filter-repo-devel/pkg-plist b/devel/git-filter-repo-devel/pkg-plist new file mode 100644 index 000000000000..a14b71bd1a60 --- /dev/null +++ b/devel/git-filter-repo-devel/pkg-plist @@ -0,0 +1,3 @@ +%%PYTHON_SITELIBDIR%%/git_filter_repo.py +libexec/git-core/git-filter-repo +share/man/man1/git-filter-repo.1.gz