├── COPYING.MIT ├── README ├── README.md ├── conf ├── layer.conf └── machine │ ├── include │ ├── mdm9607.inc │ └── mdm9640.inc │ ├── mdm9607.conf │ └── mdm9640.conf ├── recipes-core └── init-ifupdown │ ├── files │ └── interfaces │ └── init-ifupdown_%.bbappend ├── recipes-devtools ├── android-tools-adb │ ├── android-tools-adb │ │ ├── adb.mk │ │ ├── adbd.mk │ │ ├── android-tools-adbd.service │ │ ├── build │ │ │ └── 0001-Riscv-Add-risc-v-Android-config-header.patch │ │ ├── core │ │ │ ├── 0001-adb-remove-selinux-extensions.patch │ │ │ ├── 0002-adb-Use-local-sockets-where-appropriate.patch │ │ │ ├── 0003-adb-define-shell-command.patch │ │ │ ├── 0004-adb-Fix-build-on-big-endian-systems.patch │ │ │ ├── 0005-adb-add-base64-implementation.patch │ │ │ ├── 0006-adb-Musl-fixes.patch │ │ │ ├── 0007-adb-usb_linux.c-fix-build-with-glibc-2.28.patch │ │ │ ├── 0008-adb-Allow-adbd-to-be-ran-as-root.patch │ │ │ ├── 0009-mkbootimg-Add-dt-parameter-to-specify-DT-image.patch │ │ │ ├── 0010-Use-linux-capability.h-on-linux-systems-too.patch │ │ │ ├── 0011-Remove-bionic-specific-calls.patch │ │ │ ├── 0012-Fix-implicit-declaration-of-stlcat-strlcopy-function.patch │ │ │ ├── 0013-adb-Support-riscv64.patch │ │ │ └── adb_libssl_11.diff │ │ ├── ext4_utils.mk │ │ ├── extras │ │ │ ├── 0001-ext4_utils-remove-selinux-extensions.patch │ │ │ └── 0002-ext4_utils-add-o-argument-to-preserve-ownership.patch │ │ ├── fastboot.mk │ │ ├── gitignore │ │ ├── libselinux │ │ │ ├── 0001-Remove-bionic-specific-calls.patch │ │ │ └── 0001-libselinux-Do-not-define-gettid-if-glibc-2.30-is-use.patch │ │ └── mkbootimg.mk │ └── android-tools-adb_5.1.1.r37.bb ├── dtbtool │ ├── dtbtool-native_git.bb │ └── files │ │ ├── dtbtool.c │ │ ├── dtbtool.txt │ │ └── makefile └── mkbootimg │ ├── files │ ├── bootimg.h │ ├── hash-internal.h │ ├── makefile │ ├── mkbootimg.c │ ├── sha.c │ ├── sha.h │ ├── sha256.c │ └── sha256.h │ └── mkbootimg-native_git.bb ├── recipes-kernel └── linuxmdm │ └── linuxmdm.bb ├── recipes-modem ├── adbcheck │ ├── LICENSE.md │ ├── adbcheck.bb │ └── files │ │ └── src │ │ └── adbcheck.c ├── audiocheck │ ├── LICENSE.md │ ├── audiocheck.bb │ └── files │ │ └── src │ │ └── audiocheck.c ├── datalogger │ ├── LICENSE.md │ ├── datalogger.bb │ └── files │ │ └── src │ │ ├── datalogger.c │ │ └── datalogger.h ├── diagmonitor │ ├── LICENSE.md │ ├── diagmonitor.bb │ └── files │ │ └── src │ │ ├── diagmon │ │ ├── diagmonitor.c │ │ └── diagmonitor.h ├── mbnloader │ ├── LICENSE.md │ ├── files │ │ ├── Makefile │ │ └── src │ │ │ ├── mbnloader.c │ │ │ └── mbnloader.h │ └── mbnloader.bb └── openqti │ ├── LICENSE.md │ ├── files │ ├── Makefile │ ├── boot_counter │ ├── external │ │ ├── LICENSE.md │ │ ├── Phone_Ringing_8x-Mike_Koenig-696238708.wav │ │ ├── README.md │ │ ├── dict.txt │ │ └── ring8k.wav │ ├── inc │ │ ├── adspfw.h │ │ ├── atfwd.h │ │ ├── audio.h │ │ ├── audio2text.h │ │ ├── call.h │ │ ├── cell_broadcast.h │ │ ├── chat_helpers.h │ │ ├── command.h │ │ ├── config.h │ │ ├── devices.h │ │ ├── dms.h │ │ ├── helpers.h │ │ ├── ims.h │ │ ├── ipc.h │ │ ├── logger.h │ │ ├── md5sum.h │ │ ├── mdm_fs.h │ │ ├── nas.h │ │ ├── openqti.h │ │ ├── pdc.h │ │ ├── proxy.h │ │ ├── qmi.h │ │ ├── scheduler.h │ │ ├── sms.h │ │ ├── space_mon.h │ │ ├── thermal.h │ │ ├── timesync.h │ │ ├── tracking.h │ │ ├── voice.h │ │ └── wds.h │ ├── init_openqti │ ├── src │ │ ├── atfwd.c │ │ ├── audio.c │ │ ├── audio2text.c │ │ ├── call.c │ │ ├── chat_helpers.c │ │ ├── command.c │ │ ├── config.c │ │ ├── dms_client.c │ │ ├── helpers.c │ │ ├── ims_client.c │ │ ├── ipc.c │ │ ├── logger.c │ │ ├── md5sum.c │ │ ├── mdm_fs_client.c │ │ ├── mixer.c │ │ ├── nas_client.c │ │ ├── openqti.c │ │ ├── oqticonf.c │ │ ├── pcm.c │ │ ├── pdc_client.c │ │ ├── pico2aud.c │ │ ├── proxy.c │ │ ├── qmi.c │ │ ├── scheduler.c │ │ ├── sms.c │ │ ├── space_mon.c │ │ ├── thermal.c │ │ ├── timesync.c │ │ ├── tracking.c │ │ ├── voice_client.c │ │ └── wds_client.c │ └── thankyou │ │ └── thankyou.txt │ └── openqti.bb ├── recipes-scripts ├── recovery-scripts │ ├── files │ │ └── find_partitions.sh │ └── recovery-scripts.bb ├── shared-scripts │ ├── files │ │ ├── adbd │ │ ├── chgrp-diag │ │ ├── log_rename.sh │ │ ├── logcat │ │ ├── recoverymount │ │ └── rootfsmount │ └── shared-scripts.bb ├── sys-scripts │ ├── files │ │ ├── autostart │ │ ├── dump_kernel_log.sh │ │ ├── find_partitions.sh │ │ ├── firewall_init │ │ └── networking_base │ └── sys-scripts.bb ├── usb-normalboot │ ├── files │ │ └── init.d │ │ │ └── usb │ └── usb-normalboot.bb └── usb-recoveryboot │ ├── files │ └── usb │ └── usb-recoveryboot.bb ├── recipes-support └── dnsmasq │ ├── dnsmasq_%.bbappend │ └── files │ └── dnsmasq.conf └── recipes-tts ├── libpocketsphinx ├── AUTHORS ├── LICENSE ├── NOTICE ├── files │ ├── Makefile │ ├── examples │ │ ├── .gitignore │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── live.c │ │ ├── live.py │ │ ├── live_portaudio.c │ │ ├── live_pulseaudio.c │ │ ├── live_win32.c │ │ ├── segment.py │ │ ├── simple.c │ │ └── simple.py │ ├── include │ │ ├── pocketsphinx.h │ │ └── pocketsphinx │ │ │ ├── alignment.h │ │ │ ├── endpointer.h │ │ │ ├── err.h │ │ │ ├── export.h │ │ │ ├── lattice.h │ │ │ ├── logmath.h │ │ │ ├── mllr.h │ │ │ ├── model.h │ │ │ ├── prim_type.h │ │ │ ├── search.h │ │ │ ├── sphinx_config.h │ │ │ └── vad.h │ ├── model │ │ ├── CMakeLists.txt │ │ └── en-us │ │ │ ├── cmudict-en-us.dict │ │ │ ├── en-us-phone.lm.bin │ │ │ ├── en-us.lm.bin │ │ │ └── en-us │ │ │ ├── README │ │ │ ├── feat.params │ │ │ ├── mdef │ │ │ ├── means │ │ │ ├── noisedict │ │ │ ├── sendump │ │ │ ├── transition_matrices │ │ │ └── variances │ └── src │ │ ├── CMakeLists.txt │ │ ├── acmod.c │ │ ├── acmod.h │ │ ├── allphone_search.c │ │ ├── allphone_search.h │ │ ├── bin_mdef.c │ │ ├── bin_mdef.h │ │ ├── common_audio │ │ ├── signal_processing │ │ │ ├── cross_correlation.c │ │ │ ├── division_operations.c │ │ │ ├── downsample_fast.c │ │ │ ├── energy.c │ │ │ ├── get_scaling_square.c │ │ │ ├── include │ │ │ │ ├── signal_processing_library.h │ │ │ │ └── spl_inl.h │ │ │ ├── min_max_operations.c │ │ │ ├── resample.c │ │ │ ├── resample_48khz.c │ │ │ ├── resample_by_2_internal.c │ │ │ ├── resample_by_2_internal.h │ │ │ ├── resample_fractional.c │ │ │ ├── spl_inl.c │ │ │ └── vector_scaling_operations.c │ │ └── vad │ │ │ ├── include │ │ │ └── webrtc_vad.h │ │ │ ├── vad_core.c │ │ │ ├── vad_core.h │ │ │ ├── vad_filterbank.c │ │ │ ├── vad_filterbank.h │ │ │ ├── vad_gmm.c │ │ │ ├── vad_gmm.h │ │ │ ├── vad_sp.c │ │ │ ├── vad_sp.h │ │ │ └── webrtc_vad.c │ │ ├── config_macro.h │ │ ├── dict.c │ │ ├── dict.h │ │ ├── dict2pid.c │ │ ├── dict2pid.h │ │ ├── fast_ptm.txt │ │ ├── fe │ │ ├── fe.h │ │ ├── fe_interface.c │ │ ├── fe_internal.h │ │ ├── fe_noise.c │ │ ├── fe_noise.h │ │ ├── fe_sigproc.c │ │ ├── fe_type.h │ │ ├── fe_warp.c │ │ ├── fe_warp.h │ │ ├── fe_warp_affine.c │ │ ├── fe_warp_affine.h │ │ ├── fe_warp_inverse_linear.c │ │ ├── fe_warp_inverse_linear.h │ │ ├── fe_warp_piecewise_linear.c │ │ ├── fe_warp_piecewise_linear.h │ │ ├── fixlog.c │ │ ├── fixpoint.h │ │ ├── make_log_sub_table.py │ │ ├── make_log_table.py │ │ ├── yin.c │ │ └── yin.h │ │ ├── feat │ │ ├── agc.c │ │ ├── agc.h │ │ ├── cmn.c │ │ ├── cmn.h │ │ ├── cmn_live.c │ │ ├── feat.c │ │ ├── feat.h │ │ └── lda.c │ │ ├── fsg_history.c │ │ ├── fsg_history.h │ │ ├── fsg_lextree.c │ │ ├── fsg_lextree.h │ │ ├── fsg_search.c │ │ ├── fsg_search_internal.h │ │ ├── hmm.c │ │ ├── hmm.h │ │ ├── jsmn.h │ │ ├── kws_detections.c │ │ ├── kws_detections.h │ │ ├── kws_search.c │ │ ├── kws_search.h │ │ ├── lm │ │ ├── _jsgf_scanner.l │ │ ├── bitarr.c │ │ ├── bitarr.h │ │ ├── fsg_model.c │ │ ├── fsg_model.h │ │ ├── jsgf.c │ │ ├── jsgf.h │ │ ├── jsgf_internal.h │ │ ├── jsgf_parser.c │ │ ├── jsgf_parser.h │ │ ├── jsgf_parser.y │ │ ├── jsgf_scanner.c │ │ ├── jsgf_scanner.h │ │ ├── lm_trie.c │ │ ├── lm_trie.h │ │ ├── lm_trie_quant.c │ │ ├── lm_trie_quant.h │ │ ├── ngram_model.c │ │ ├── ngram_model.h │ │ ├── ngram_model_internal.h │ │ ├── ngram_model_set.c │ │ ├── ngram_model_set.h │ │ ├── ngram_model_trie.c │ │ ├── ngram_model_trie.h │ │ ├── ngrams_raw.c │ │ └── ngrams_raw.h │ │ ├── mdef.c │ │ ├── mdef.h │ │ ├── ms_gauden.c │ │ ├── ms_gauden.h │ │ ├── ms_mgau.c │ │ ├── ms_mgau.h │ │ ├── ms_senone.c │ │ ├── ms_senone.h │ │ ├── ngram_search.c │ │ ├── ngram_search.h │ │ ├── ngram_search_fwdflat.c │ │ ├── ngram_search_fwdflat.h │ │ ├── ngram_search_fwdtree.c │ │ ├── ngram_search_fwdtree.h │ │ ├── phone_loop_search.c │ │ ├── phone_loop_search.h │ │ ├── pocketsphinx.c │ │ ├── pocketsphinx_internal.h │ │ ├── ps_alignment.c │ │ ├── ps_alignment_internal.h │ │ ├── ps_config.c │ │ ├── ps_endpointer.c │ │ ├── ps_lattice.c │ │ ├── ps_lattice_internal.h │ │ ├── ps_mllr.c │ │ ├── ps_vad.c │ │ ├── ptm_mgau.c │ │ ├── ptm_mgau.h │ │ ├── rtc_base │ │ ├── checks.h │ │ ├── compile_assert_c.h │ │ ├── sanitizer.h │ │ ├── system │ │ │ └── arch.h │ │ └── typedefs.h │ │ ├── s2_semi_mgau.c │ │ ├── s2_semi_mgau.h │ │ ├── s3types.h │ │ ├── state_align_search.c │ │ ├── state_align_search.h │ │ ├── tied_mgau_common.h │ │ ├── tmat.c │ │ ├── tmat.h │ │ └── util │ │ ├── README.python │ │ ├── bio.c │ │ ├── bio.h │ │ ├── bitvec.c │ │ ├── bitvec.h │ │ ├── blas_lite.c │ │ ├── blkarray_list.c │ │ ├── blkarray_list.h │ │ ├── byteorder.h │ │ ├── case.c │ │ ├── case.h │ │ ├── ckd_alloc.c │ │ ├── ckd_alloc.h │ │ ├── clapack_lite.h │ │ ├── clapack_scrub.py │ │ ├── cmd_ln.c │ │ ├── cmd_ln.h │ │ ├── dtoa.c │ │ ├── err.c │ │ ├── errno.c │ │ ├── f2c.h │ │ ├── f2c_lite.c │ │ ├── filename.c │ │ ├── filename.h │ │ ├── fortran.py │ │ ├── genrand.c │ │ ├── genrand.h │ │ ├── glist.c │ │ ├── glist.h │ │ ├── hash_table.c │ │ ├── hash_table.h │ │ ├── heap.c │ │ ├── heap.h │ │ ├── listelem_alloc.c │ │ ├── listelem_alloc.h │ │ ├── logmath.c │ │ ├── make_lite.py │ │ ├── matrix.c │ │ ├── matrix.h │ │ ├── mmio.c │ │ ├── mmio.h │ │ ├── pio.c │ │ ├── pio.h │ │ ├── priority_queue.c │ │ ├── priority_queue.h │ │ ├── profile.c │ │ ├── profile.h │ │ ├── slamch.c │ │ ├── slapack_lite.c │ │ ├── soundfiles.c │ │ ├── strfuncs.c │ │ ├── strfuncs.h │ │ ├── vector.c │ │ ├── vector.h │ │ └── wrapped_routines └── libpocketsphinx.bb ├── libttspico ├── NOTICE ├── files │ ├── Android.mk │ ├── MODULE_LICENSE_APACHE2 │ ├── NOTICE │ ├── lang │ │ ├── de-DE_gl0_sg.bin │ │ ├── de-DE_ta.bin │ │ ├── en-GB_kh0_sg.bin │ │ ├── en-GB_ta.bin │ │ ├── en-US_lh0_sg.bin │ │ ├── en-US_ta.bin │ │ ├── es-ES_ta.bin │ │ ├── es-ES_zl0_sg.bin │ │ ├── fr-FR_nk0_sg.bin │ │ ├── fr-FR_ta.bin │ │ ├── it-IT_cm0_sg.bin │ │ └── it-IT_ta.bin │ ├── picoacph.c │ ├── picoacph.h │ ├── picoapi.c │ ├── picoapi.h │ ├── picoapid.h │ ├── picobase.c │ ├── picobase.h │ ├── picocep.c │ ├── picocep.h │ ├── picoctrl.c │ ├── picoctrl.h │ ├── picodata.c │ ├── picodata.h │ ├── picodbg.c │ ├── picodbg.h │ ├── picodefs.h │ ├── picodsp.h │ ├── picoextapi.c │ ├── picoextapi.h │ ├── picofftsg.c │ ├── picofftsg.h │ ├── picokdbg.c │ ├── picokdbg.h │ ├── picokdt.c │ ├── picokdt.h │ ├── picokfst.c │ ├── picokfst.h │ ├── picoklex.c │ ├── picoklex.h │ ├── picoknow.c │ ├── picoknow.h │ ├── picokpdf.c │ ├── picokpdf.h │ ├── picokpr.c │ ├── picokpr.h │ ├── picoktab.c │ ├── picoktab.h │ ├── picoos.c │ ├── picoos.h │ ├── picopal.c │ ├── picopal.h │ ├── picopam.c │ ├── picopam.h │ ├── picopltf.h │ ├── picopr.c │ ├── picopr.h │ ├── picorsrc.c │ ├── picorsrc.h │ ├── picosa.c │ ├── picosa.h │ ├── picosig.c │ ├── picosig.h │ ├── picosig2.c │ ├── picosig2.h │ ├── picospho.c │ ├── picospho.h │ ├── picotok.c │ ├── picotok.h │ ├── picotrns.c │ ├── picotrns.h │ ├── picowa.c │ └── picowa.h └── libttspico.bb └── pico2wave ├── NOTICE ├── files ├── Android.mk ├── MODULE_LICENSE_APACHE2 ├── NOTICE └── pico2wave.c └── pico2wave.bb /COPYING.MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any person obtaining a copy 2 | of this software and associated documentation files (the "Software"), to deal 3 | in the Software without restriction, including without limitation the rights 4 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 5 | copies of the Software, and to permit persons to whom the Software is 6 | furnished to do so, subject to the following conditions: 7 | 8 | The above copyright notice and this permission notice shall be included in 9 | all copies or substantial portions of the Software. 10 | 11 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 12 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 13 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 14 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 15 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 16 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 17 | THE SOFTWARE. 18 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | README.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # meta-qcom 2 | 3 | ## Introduction 4 | 5 | OpenEmbedded/Yocto Project layer for Qualcomm MDM9x07 based platforms. 6 | This repo has been forked from https://github.com/ndechesne/meta-qcom and modified for this specific platform 7 | 8 | This layer depends on: 9 | 10 | ``` 11 | URI: git://github.com/openembedded/oe-core.git 12 | layers: meta 13 | branch: master 14 | revision: HEAD 15 | ``` 16 | 17 | This layers has an optional dependency on meta-oe layer: 18 | 19 | ``` 20 | URI: git://github.com/openembedded/meta-openembedded.git 21 | layers: meta-oe 22 | branch: master 23 | revision: HEAD 24 | ``` 25 | 26 | The dependency is optional, and not strictly required. When meta-oe is enabled 27 | in the build (e.g. it is used in BBLAYERS) then additional recipes from 28 | meta-qcom are added to the metadata. You can refer to meta-qcom/conf/layer.conf 29 | for the implementation details. 30 | 31 | ## Contributing 32 | 33 | If you want to contribute changes, you can send Github pull requests at 34 | https://github.com/biktorgj/meta-qcom/pulls. 35 | 36 | ## Reporting issues 37 | 38 | Please report any issue on https://github.com/biktorgj/meta-qcom/issues 39 | -------------------------------------------------------------------------------- /conf/layer.conf: -------------------------------------------------------------------------------- 1 | # We have a conf and classes directory, add to BBPATH 2 | BBPATH .= ":${LAYERDIR}" 3 | 4 | # We have a packages directory, add to BBFILES 5 | BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ 6 | ${LAYERDIR}/recipes-*/*/*.bbappend" 7 | 8 | BBFILE_COLLECTIONS += "qcom" 9 | BBFILE_PATTERN_qcom := "^${LAYERDIR}/" 10 | BBFILE_PRIORITY_qcom = "5" 11 | LAYERSERIES_COMPAT_qcom = "mickledore scarthgap" 12 | -------------------------------------------------------------------------------- /conf/machine/include/mdm9607.inc: -------------------------------------------------------------------------------- 1 | 2 | SOC_FAMILY = "mdm9607" 3 | MACHINE = "mdm9607" 4 | ABOOT_BOARD = "9607" 5 | 6 | require conf/machine/include/soc-family.inc 7 | require conf/machine/include/arm/armv7a/tune-cortexa8.inc 8 | 9 | QCOM_BOOTIMG_KERNEL_BASE ?= "0x80000000" 10 | QCOM_BOOTIMG_PAGE_SIZE ?= "2048" 11 | KERNEL_TAGS_ADDR ?= "0x81E00000" 12 | 13 | # Uncomment the following line to enable the hard floating point abi. Note that 14 | # this breaks some binary libraries and 3D (neither of which ship with 15 | # meta-yocto). For maximum compatibility, leave this disabled. 16 | #DEFAULTTUNE ?= "cortexa8hf-neon" 17 | 18 | # Image Generation 19 | # Make ubi filesystem and then pack it in a ubi container, as stock 20 | IMAGE_FSTYPES ?= "ubi multiubi ext3.gz cpio.gz" 21 | 22 | # Set the volume name inside the ubi image 23 | UBI_VOLNAME = "rootfs" 24 | ROOT_FLASH_SIZE = "63" 25 | SYSTEM_VOLUME_SIZE ?= "63MiB" 26 | CACHE_VOLUME_SIZE ?= "55MiB" 27 | 28 | # Max supported inodes 29 | EXTRA_IMAGECMD ?= "-N 2048" 30 | 31 | MKUBIFS_ARGS ?= "-m 2048 -e 126976 -c 4292 -F" 32 | UBINIZE_ARGS ?= "-m 2048 -p 128KiB -s 2048" 33 | MULTIUBI_BUILD ?= "" -------------------------------------------------------------------------------- /conf/machine/include/mdm9640.inc: -------------------------------------------------------------------------------- 1 | 2 | SOC_FAMILY = "mdm9640" 3 | MACHINE = "mdm9640" 4 | ABOOT_BOARD = "9640" 5 | require conf/machine/include/soc-family.inc 6 | require conf/machine/include/arm/armv7a/tune-cortexa8.inc 7 | 8 | QCOM_BOOTIMG_KERNEL_BASE ?= "0x80000000" 9 | QCOM_BOOTIMG_PAGE_SIZE ?= "4096" 10 | KERNEL_TAGS_ADDR ?= "0x81E00000" 11 | 12 | # Uncomment the following line to enable the hard floating point abi. Note that 13 | # this breaks some binary libraries and 3D (neither of which ship with 14 | # meta-yocto). For maximum compatibility, leave this disabled. 15 | #DEFAULTTUNE ?= "cortexa8hf-neon" 16 | 17 | # Image Generation 18 | # Make ubi filesystem and then pack it in a ubi container, as stock 19 | IMAGE_FSTYPES ?= "ubi multiubi ext3.gz cpio.gz" 20 | 21 | # Set the volume name inside the ubi image 22 | UBI_VOLNAME = "rootfs" 23 | ROOT_FLASH_SIZE = "63" 24 | SYSTEM_VOLUME_SIZE ?= "63MiB" 25 | CACHE_VOLUME_SIZE ?= "55MiB" 26 | 27 | # Max supported inodes 28 | EXTRA_IMAGECMD ?= "-N 4096" 29 | 30 | MKUBIFS_ARGS ?="-m 4096 -e 253952 -c 2146 -F" 31 | UBINIZE_ARGS ?="-m 4096 -p 256KiB -s 4096" 32 | MULTIUBI_BUILD ?= "" -------------------------------------------------------------------------------- /conf/machine/mdm9607.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: MDM9607 MTP 3 | #@DESCRIPTION: Machine configuration for QTI MDM9607 MTP 4 | 5 | require conf/machine/include/mdm9607.inc 6 | 7 | PREFERRED_PROVIDER_virtual/kernel ?= "linuxmdm" 8 | MACHINE_FEATURES = "usbhost usbgadget ubifs" 9 | 10 | KERNEL_IMAGETYPE = "zImage" 11 | KERNEL_DTS_NAME = "mdm9607" 12 | KERNEL_DEFCONFIG ?= "mdm9607-perf_defconfig" 13 | KERNEL_DEVICETREE ?= "qcom/mdm9607-mtp.dtb" 14 | 15 | 16 | # I don't know if these are actually used 17 | BOARD_KERNEL_TAGS_OFFSET = "0x81E00000" 18 | KERNEL_DEFCONFIG = "${S}/arch/arm/configs/mdm9607-perf_defconfig" 19 | KERNEL_PERF_DEFCONFIG = "${S}/arch/arm/configs/mdm9607-perf_defconfig" 20 | KERNEL_CMDLINE = "ro androidboot.hardware=qcom ehci-hcd.park=3 msm_rtb.filter=0x37 lpm_levels.sleep_disabled=1" 21 | 22 | # Serial console - Using the high speed uart to debug until usb works 23 | SERIAL_CONSOLE ?= "115200 ttyHSL0" 24 | # If someone knows how to use alternate GCC versions 25 | # for a specific recipe let me know 26 | PREFERRED_PROVIDER_virtual/bootloader = "" -------------------------------------------------------------------------------- /conf/machine/mdm9640.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: mdm9640 MTP 3 | #@DESCRIPTION: Machine configuration for QTI mdm9640 MTP 4 | 5 | require conf/machine/include/mdm9640.inc 6 | 7 | PREFERRED_PROVIDER_virtual/kernel ?= "linuxmdm" 8 | MACHINE_FEATURES = "usbhost usbgadget ubifs" 9 | 10 | KERNEL_IMAGETYPE = "zImage" 11 | KERNEL_DTS_NAME = "mdm9640" 12 | 13 | # I don't know if these are actually used 14 | KERNEL_DEFCONFIG = "${S}/arch/arm/configs/mdm9640-perf_defconfig" 15 | KERNEL_PERF_DEFCONFIG = "${S}/arch/arm/configs/mdm9640-perf_defconfig" 16 | KERNEL_DEVICETREE ?= "qcom/mdm9640-v2-mtp.dtb" 17 | KERNEL_CMDLINE = "noinitrd ro console=ttyHSL0,115200,n8 androidboot.hardware=qcom ehci-hcd.park=3 msm_rtb.filter=0x37 lpm_levels.sleep_disabled=1" 18 | 19 | # Serial console - Using the high speed uart to debug until usb works 20 | SERIAL_CONSOLE ?= "115200 ttyHSL0" -------------------------------------------------------------------------------- /recipes-core/init-ifupdown/files/interfaces: -------------------------------------------------------------------------------- 1 | # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) 2 | 3 | # The loopback interface 4 | auto lo 5 | iface lo inet loopback 6 | 7 | auto rndis0 8 | iface rndis0 inet static 9 | address 192.168.212.1 10 | netmask 255.255.255.0 11 | network 192.168.212.0 12 | broadcast 192.168.212.255 13 | hwaddress ether fe:ed:00:c0:ff:ee -------------------------------------------------------------------------------- /recipes-core/init-ifupdown/init-ifupdown_%.bbappend: -------------------------------------------------------------------------------- 1 | # Custom ifupdown 2 | 3 | # Files directory 4 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" 5 | 6 | # Sources 7 | SRC_URI:append = " file://interfaces" 8 | 9 | # Add our interface file with rndis support 10 | do_install:append() { 11 | install -m 0644 ${S}/interfaces ${D}${sysconfdir}/network/ 12 | } -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/adb.mk: -------------------------------------------------------------------------------- 1 | # Makefile for adb 2 | 3 | SRCDIR ?= $(S) 4 | 5 | VPATH += $(SRCDIR)/system/core/adb 6 | adb_SRC_FILES += adb.c 7 | adb_SRC_FILES += console.c 8 | adb_SRC_FILES += transport.c 9 | adb_SRC_FILES += transport_local.c 10 | adb_SRC_FILES += transport_usb.c 11 | adb_SRC_FILES += commandline.c 12 | adb_SRC_FILES += adb_client.c 13 | adb_SRC_FILES += adb_auth_host.c 14 | adb_SRC_FILES += sockets.c 15 | adb_SRC_FILES += services.c 16 | adb_SRC_FILES += file_sync_client.c 17 | adb_SRC_FILES += get_my_path_linux.c 18 | adb_SRC_FILES += usb_linux.c 19 | adb_SRC_FILES += usb_vendors.c 20 | adb_SRC_FILES += fdevent.c 21 | adb_OBJS := $(adb_SRC_FILES:.c=.o) 22 | 23 | VPATH += $(SRCDIR)/system/core/libcutils 24 | libcutils_SRC_FILES += atomic.c 25 | libcutils_SRC_FILES += hashmap.c 26 | libcutils_SRC_FILES += native_handle.c 27 | libcutils_SRC_FILES += config_utils.c 28 | libcutils_SRC_FILES += cpu_info.c 29 | libcutils_SRC_FILES += load_file.c 30 | # libcutils_SRC_FILES += open_memstream.c 31 | # libcutils_SRC_FILES += strdup16to8.c 32 | # libcutils_SRC_FILES += strdup8to16.c 33 | # libcutils_SRC_FILES += record_stream.c 34 | # libcutils_SRC_FILES += process_name.c 35 | # libcutils_SRC_FILES += threads.c 36 | # libcutils_SRC_FILES += sched_policy.c 37 | # libcutils_SRC_FILES += iosched_policy.c 38 | libcutils_SRC_FILES += str_parms.c 39 | libcutils_SRC_FILES += fs.c 40 | libcutils_SRC_FILES += multiuser.c 41 | libcutils_SRC_FILES += socket_inaddr_any_server.c 42 | libcutils_SRC_FILES += socket_local_client.c 43 | libcutils_SRC_FILES += socket_local_server.c 44 | libcutils_SRC_FILES += socket_loopback_client.c 45 | libcutils_SRC_FILES += socket_loopback_server.c 46 | libcutils_SRC_FILES += socket_network_client.c 47 | libcutils_SRC_FILES += sockets.c 48 | libcutils_SRC_FILES += ashmem-host.c 49 | libcutils_SRC_FILES += dlmalloc_stubs.c 50 | libcutils_OBJS := $(libcutils_SRC_FILES:.c=.o) 51 | 52 | CFLAGS += -DANDROID 53 | CFLAGS += -DWORKAROUND_BUG6558362 54 | CFLAGS += -DADB_HOST=1 55 | CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE 56 | CFLAGS += -DANDROID_SMP=0 57 | CFLAGS += -I$(SRCDIR)/system/core/adb 58 | CFLAGS += -I$(SRCDIR)/system/core/include 59 | CFLAGS += -include $(SRCDIR)/build/core/combo/include/arch/$(android_arch)/AndroidConfig.h 60 | 61 | LIBS += libcutils.a -lpthread -lcrypto 62 | 63 | all: adb 64 | 65 | adb: libcutils.a $(adb_OBJS) 66 | $(CC) -o $@ $(LDFLAGS) $(adb_OBJS) $(LIBS) 67 | 68 | libcutils.a: $(libcutils_OBJS) 69 | $(AR) rcs $@ $(libcutils_OBJS) 70 | 71 | clean: 72 | $(RM) $(adb_OBJS) $(libcutils_OBJS) adb *.a 73 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/android-tools-adbd.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Android Debug Bridge 3 | ConditionPathExists=/var/usb-debugging-enabled 4 | Before=android-system.service 5 | 6 | [Service] 7 | Type=simple 8 | Restart=on-failure 9 | ExecStartPre=-/usr/bin/android-gadget-setup adb 10 | ExecStart=/usr/bin/adbd 11 | 12 | [Install] 13 | WantedBy=basic.target 14 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0001-adb-remove-selinux-extensions.patch: -------------------------------------------------------------------------------- 1 | From 7b7200727413ca4a9bb132221c543ec033dffafa Mon Sep 17 00:00:00 2001 2 | From: Sergio Schvezov 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] adb: remove selinux extensions 5 | 6 | * drop useless includes of Android SELINUX extensions 7 | * avoids having to clone another module 8 | * this should be sent upstream 9 | 10 | Upstream-Status: Inappropriate 11 | 12 | Signed-off-by: Martin Jansa 13 | --- 14 | adb/file_sync_service.c | 3 --- 15 | 1 file changed, 3 deletions(-) 16 | 17 | diff --git a/adb/file_sync_service.c b/adb/file_sync_service.c 18 | index 7933858516..3cbd0cd863 100644 19 | --- a/adb/file_sync_service.c 20 | +++ b/adb/file_sync_service.c 21 | @@ -26,7 +26,6 @@ 22 | 23 | #include 24 | #include 25 | -#include 26 | #include "sysdeps.h" 27 | 28 | #define TRACE_TAG TRACE_SYNC 29 | @@ -73,7 +72,6 @@ static int mkdirs(char *name) 30 | *x = '/'; 31 | return ret; 32 | } 33 | - selinux_android_restorecon(name, 0); 34 | } 35 | *x++ = '/'; 36 | } 37 | @@ -251,7 +249,6 @@ static int handle_send_file(int s, char *path, uid_t uid, 38 | if(fd >= 0) { 39 | struct utimbuf u; 40 | adb_close(fd); 41 | - selinux_android_restorecon(path, 0); 42 | u.actime = timestamp; 43 | u.modtime = timestamp; 44 | utime(path, &u); 45 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0002-adb-Use-local-sockets-where-appropriate.patch: -------------------------------------------------------------------------------- 1 | From d855f042ca09a358cebe2d3c1d29d512afd7ebb8 Mon Sep 17 00:00:00 2001 2 | From: Hilko Bengen 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] adb: Use local sockets where appropriate 5 | 6 | Upstream-Status: Inappropriate 7 | --- 8 | adb/adb.c | 6 +++++- 9 | adb/adb_client.c | 5 +++-- 10 | adb/transport_local.c | 3 ++- 11 | 3 files changed, 10 insertions(+), 4 deletions(-) 12 | 13 | diff --git a/adb/adb.c b/adb/adb.c 14 | index 10a1e0da26..027edd9359 100644 15 | --- a/adb/adb.c 16 | +++ b/adb/adb.c 17 | @@ -1230,7 +1230,11 @@ int launch_server(int server_port) 18 | */ 19 | void build_local_name(char* target_str, size_t target_size, int server_port) 20 | { 21 | - snprintf(target_str, target_size, "tcp:%d", server_port); 22 | + if (gListenAll > 0) { 23 | + snprintf(target_str, target_size, "tcp:%d", server_port); 24 | + } else { 25 | + snprintf(target_str, target_size, "local:%d", server_port); 26 | + } 27 | } 28 | 29 | #if !ADB_HOST 30 | diff --git a/adb/adb_client.c b/adb/adb_client.c 31 | index eb1720d22c..a383faefe3 100644 32 | --- a/adb/adb_client.c 33 | +++ b/adb/adb_client.c 34 | @@ -185,12 +185,12 @@ int _adb_connect(const char *service) 35 | strcpy(__adb_error, "service name too long"); 36 | return -1; 37 | } 38 | - snprintf(tmp, sizeof tmp, "%04x", len); 39 | + snprintf(tmp, sizeof tmp, "%d", __adb_server_port); 40 | 41 | if (__adb_server_name) 42 | fd = socket_network_client(__adb_server_name, __adb_server_port, SOCK_STREAM); 43 | else 44 | - fd = socket_loopback_client(__adb_server_port, SOCK_STREAM); 45 | + fd = socket_local_client(tmp, ANDROID_SOCKET_NAMESPACE_ABSTRACT, SOCK_STREAM); 46 | 47 | if(fd < 0) { 48 | strcpy(__adb_error, "cannot connect to daemon"); 49 | @@ -201,6 +201,7 @@ int _adb_connect(const char *service) 50 | return -1; 51 | } 52 | 53 | + snprintf(tmp, sizeof tmp, "%04x", len); 54 | if(writex(fd, tmp, 4) || writex(fd, service, len)) { 55 | strcpy(__adb_error, "write failure during connection"); 56 | adb_close(fd); 57 | diff --git a/adb/transport_local.c b/adb/transport_local.c 58 | index 948cc15812..71582a8c88 100644 59 | --- a/adb/transport_local.c 60 | +++ b/adb/transport_local.c 61 | @@ -121,7 +121,8 @@ int local_connect_arbitrary_ports(int console_port, int adb_port) 62 | } 63 | #endif 64 | if (fd < 0) { 65 | - fd = socket_loopback_client(adb_port, SOCK_STREAM); 66 | + snprintf(buf, sizeof buf, "%d", adb_port); 67 | + fd = socket_local_client(buf, ANDROID_SOCKET_NAMESPACE_ABSTRACT, SOCK_STREAM); 68 | } 69 | 70 | if (fd >= 0) { 71 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0003-adb-define-shell-command.patch: -------------------------------------------------------------------------------- 1 | From 4421c2e19946dcd651fd8ac022b96627fc526149 Mon Sep 17 00:00:00 2001 2 | From: Fathi Boudra 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] adb: define shell command 5 | 6 | we intend to run on Linux system so the shell is always /bin/sh, 7 | for the host or the target. 8 | 9 | Upstream-Status: Inappropriate 10 | --- 11 | adb/services.c | 4 ---- 12 | 1 file changed, 4 deletions(-) 13 | 14 | diff --git a/adb/services.c b/adb/services.c 15 | index 21b08dc201..d44b0c5068 100644 16 | --- a/adb/services.c 17 | +++ b/adb/services.c 18 | @@ -299,11 +299,7 @@ static int create_subproc_raw(const char *cmd, const char *arg0, const char *arg 19 | } 20 | #endif /* !ABD_HOST */ 21 | 22 | -#if ADB_HOST 23 | #define SHELL_COMMAND "/bin/sh" 24 | -#else 25 | -#define SHELL_COMMAND "/system/bin/sh" 26 | -#endif 27 | 28 | #if !ADB_HOST 29 | static void subproc_waiter_service(int fd, void *cookie) 30 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0004-adb-Fix-build-on-big-endian-systems.patch: -------------------------------------------------------------------------------- 1 | From 548b8ca62c64a16305929e2eaf3d546d48de9c25 Mon Sep 17 00:00:00 2001 2 | From: Thomas Petazzoni 3 | Date: Tue, 21 Feb 2017 19:46:24 +0100 4 | Subject: [PATCH] adb: Fix build on big endian systems 5 | 6 | The usb_linux_client.c file defines cpu_to_le16/32 by using the C 7 | library htole16/32 function calls. However, cpu_to_le16/32 are used 8 | when initializing structures, i.e in a context where a function call 9 | is not allowed. 10 | 11 | It works fine on little endian systems because htole16/32 are defined 12 | by the C library as no-ops. But on big-endian systems, they are 13 | actually doing something, which might involve calling a function, 14 | causing build failures. 15 | 16 | To solve this, we simply open-code cpu_to_le16/32 in a way that allows 17 | them to be used when initializing structures. 18 | 19 | Signed-off-by: Thomas Petazzoni 20 | --- 21 | adb/usb_linux_client.c | 11 +++++++++-- 22 | 1 file changed, 9 insertions(+), 2 deletions(-) 23 | 24 | diff --git a/adb/usb_linux_client.c b/adb/usb_linux_client.c 25 | index 8426e0ea14..6e8b5bbbd2 100644 26 | --- a/adb/usb_linux_client.c 27 | +++ b/adb/usb_linux_client.c 28 | @@ -34,8 +34,15 @@ 29 | #define MAX_PACKET_SIZE_FS 64 30 | #define MAX_PACKET_SIZE_HS 512 31 | 32 | -#define cpu_to_le16(x) htole16(x) 33 | -#define cpu_to_le32(x) htole32(x) 34 | +#if __BYTE_ORDER == __LITTLE_ENDIAN 35 | +# define cpu_to_le16(x) (x) 36 | +# define cpu_to_le32(x) (x) 37 | +#else 38 | +# define cpu_to_le16(x) ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8)) 39 | +# define cpu_to_le32(x) \ 40 | + ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >> 8) | \ 41 | + (((x) & 0x0000ff00u) << 8) | (((x) & 0x000000ffu) << 24)) 42 | +#endif 43 | 44 | struct usb_handle 45 | { 46 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0007-adb-usb_linux.c-fix-build-with-glibc-2.28.patch: -------------------------------------------------------------------------------- 1 | From de393bba41c8feff932c77d6c30233945f380d42 Mon Sep 17 00:00:00 2001 2 | From: Martin Jansa 3 | Date: Sat, 11 Aug 2018 13:23:37 +0000 4 | Subject: [PATCH] adb: usb_linux.c: fix build with glibc-2.28 5 | 6 | * include sysmacros for major, minor 7 | 8 | Signed-off-by: Martin Jansa 9 | --- 10 | adb/usb_linux.c | 1 + 11 | 1 file changed, 1 insertion(+) 12 | 13 | diff --git a/adb/usb_linux.c b/adb/usb_linux.c 14 | index f16bdd0361..c8a7732441 100644 15 | --- a/adb/usb_linux.c 16 | +++ b/adb/usb_linux.c 17 | @@ -22,6 +22,7 @@ 18 | #include 19 | #include 20 | #include 21 | +#include 22 | #include 23 | #include 24 | #include 25 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0008-adb-Allow-adbd-to-be-ran-as-root.patch: -------------------------------------------------------------------------------- 1 | From 3a788e9168c9b9eac66c4fa479413f4a95c61be4 Mon Sep 17 00:00:00 2001 2 | From: Florent Revest 3 | Date: Mon, 30 Oct 2017 21:05:46 +0100 4 | Subject: [PATCH] adb: Allow adbd to be ran as root 5 | 6 | --- 7 | adb/adb.c | 1 + 8 | 1 file changed, 1 insertion(+) 9 | 10 | diff --git a/adb/adb.c b/adb/adb.c 11 | index 027edd9359..e0f7ecde45 100644 12 | --- a/adb/adb.c 13 | +++ b/adb/adb.c 14 | @@ -1271,6 +1271,7 @@ static int should_drop_privileges() { 15 | int secure = 0; 16 | char value[PROPERTY_VALUE_MAX]; 17 | 18 | + return 0; 19 | /* run adbd in secure mode if ro.secure is set and 20 | ** we are not in the emulator 21 | */ 22 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0010-Use-linux-capability.h-on-linux-systems-too.patch: -------------------------------------------------------------------------------- 1 | From ef743c9c3c7452ae904a5c343ee2b759ab3a87cb Mon Sep 17 00:00:00 2001 2 | From: =?UTF-8?q?Lo=C3=AFc=20Minier?= 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] Use linux/capability.h on linux systems too 5 | 6 | Upstream-Status: Inappropriate 7 | --- 8 | include/private/android_filesystem_config.h | 2 +- 9 | 1 file changed, 1 insertion(+), 1 deletion(-) 10 | 11 | diff --git a/include/private/android_filesystem_config.h b/include/private/android_filesystem_config.h 12 | index 2f528b95c8..3e0b00928e 100644 13 | --- a/include/private/android_filesystem_config.h 14 | +++ b/include/private/android_filesystem_config.h 15 | @@ -27,7 +27,7 @@ 16 | #include 17 | #include 18 | 19 | -#ifdef HAVE_ANDROID_OS 20 | +#if defined(HAVE_ANDROID_OS) || defined(__linux__) 21 | #include 22 | #else 23 | #include "android_filesystem_capability.h" 24 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0011-Remove-bionic-specific-calls.patch: -------------------------------------------------------------------------------- 1 | From 9eff8799831961c0edf6e37e5d4cbf43baa7c748 Mon Sep 17 00:00:00 2001 2 | From: Fathi Boudra 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] Remove bionic specific calls 5 | 6 | Upstream-Status: Inappropriate 7 | --- 8 | include/cutils/properties.h | 1 - 9 | libcutils/properties.c | 2 +- 10 | liblog/logd_write.c | 5 +++++ 11 | 3 files changed, 6 insertions(+), 2 deletions(-) 12 | 13 | diff --git a/include/cutils/properties.h b/include/cutils/properties.h 14 | index 798db8b36f..7d01f28d6e 100644 15 | --- a/include/cutils/properties.h 16 | +++ b/include/cutils/properties.h 17 | @@ -19,7 +19,6 @@ 18 | 19 | #include 20 | #include 21 | -#include 22 | #include 23 | 24 | #ifdef __cplusplus 25 | diff --git a/libcutils/properties.c b/libcutils/properties.c 26 | index b283658aa4..4151e7882c 100644 27 | --- a/libcutils/properties.c 28 | +++ b/libcutils/properties.c 29 | @@ -104,10 +104,10 @@ int32_t property_get_int32(const char *key, int32_t default_value) { 30 | return (int32_t)property_get_imax(key, INT32_MIN, INT32_MAX, default_value); 31 | } 32 | 33 | +#undef HAVE_LIBC_SYSTEM_PROPERTIES 34 | #ifdef HAVE_LIBC_SYSTEM_PROPERTIES 35 | 36 | #define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_ 37 | -#include 38 | 39 | int property_set(const char *key, const char *value) 40 | { 41 | diff --git a/liblog/logd_write.c b/liblog/logd_write.c 42 | index b2668cedb7..f5a44fe901 100644 43 | --- a/liblog/logd_write.c 44 | +++ b/liblog/logd_write.c 45 | @@ -23,6 +23,7 @@ 46 | #include 47 | #include 48 | #include 49 | +#include 50 | #include 51 | #if (FAKE_LOG_DEVICE == 0) 52 | #include 53 | @@ -205,7 +206,11 @@ static int __write_to_log_kernel(log_id_t log_id, struct iovec *vec, size_t nr) 54 | realtime_ts.tv_nsec = ts.tv_nsec; 55 | 56 | log_id_buf = log_id; 57 | +#ifdef __BIONIC__ 58 | tid = gettid(); 59 | +#else 60 | + tid = (pid_t) syscall(__NR_gettid); 61 | +#endif 62 | 63 | newVec[0].iov_base = (unsigned char *) &log_id_buf; 64 | newVec[0].iov_len = sizeof_log_id_t; 65 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/0012-Fix-implicit-declaration-of-stlcat-strlcopy-function.patch: -------------------------------------------------------------------------------- 1 | From cd4525d760c6f88c9bf85f7bf488da79cd0d3264 Mon Sep 17 00:00:00 2001 2 | From: Fathi Boudra 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] Fix implicit declaration of stlcat/strlcopy functions 5 | 6 | Upstream-Status: Inappropriate 7 | --- 8 | adb/adb.c | 1 + 9 | fs_mgr/fs_mgr_fstab.c | 2 +- 10 | include/cutils/sockets.h | 2 +- 11 | 3 files changed, 3 insertions(+), 2 deletions(-) 12 | 13 | diff --git a/adb/adb.c b/adb/adb.c 14 | index e0f7ecde45..aaefd9b401 100644 15 | --- a/adb/adb.c 16 | +++ b/adb/adb.c 17 | @@ -41,6 +41,7 @@ 18 | #include 19 | #include 20 | #include 21 | +#include 22 | #else 23 | #include "usb_vendors.h" 24 | #endif 25 | diff --git a/fs_mgr/fs_mgr_fstab.c b/fs_mgr/fs_mgr_fstab.c 26 | index edd9591164..9ddb4643b5 100644 27 | --- a/fs_mgr/fs_mgr_fstab.c 28 | +++ b/fs_mgr/fs_mgr_fstab.c 29 | @@ -17,7 +17,7 @@ 30 | #include 31 | #include 32 | #include 33 | -#include 34 | +#include 35 | #include 36 | 37 | #include "fs_mgr_priv.h" 38 | diff --git a/include/cutils/sockets.h b/include/cutils/sockets.h 39 | index daf43ec944..d3270c69e7 100644 40 | --- a/include/cutils/sockets.h 41 | +++ b/include/cutils/sockets.h 42 | @@ -19,7 +19,7 @@ 43 | 44 | #include 45 | #include 46 | -#include 47 | +#include 48 | #include 49 | 50 | #ifdef HAVE_WINSOCK 51 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/core/adb_libssl_11.diff: -------------------------------------------------------------------------------- 1 | Description: adb: Make compatible with openssl 1.1 2 | OpenSSL version 1.1 brought some API changes which broke the build here, 3 | fix that by accessing rsa->n (and e) directly, using RSA_get0_key instead. 4 | Author: Chirayu Desai n); 27 | + RSA_get0_key(rsa, &n, &e, NULL); 28 | BN_set_bit(r, RSANUMWORDS * 32); 29 | BN_mod_sqr(rr, r, n, ctx); 30 | BN_div(NULL, rem, n, r32, ctx); 31 | @@ -96,7 +97,7 @@ static int RSA_to_RSAPublicKey(RSA *rsa, 32 | BN_div(n, rem, n, r32, ctx); 33 | pkey->n[i] = BN_get_word(rem); 34 | } 35 | - pkey->exponent = BN_get_word(rsa->e); 36 | + pkey->exponent = BN_get_word(e); 37 | 38 | out: 39 | BN_free(n0inv); 40 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/extras/0001-ext4_utils-remove-selinux-extensions.patch: -------------------------------------------------------------------------------- 1 | From 354604da9d152f1931e91991d3f34197fc8fc759 Mon Sep 17 00:00:00 2001 2 | From: Sergio Schvezov 3 | Date: Tue, 2 Oct 2018 16:36:54 +0000 4 | Subject: [PATCH] ext4_utils: remove selinux extensions 5 | 6 | * drop useless includes of Android SELINUX extensions 7 | * avoids having to clone another module 8 | * this should be sent upstream 9 | 10 | Upstream-Status: Inappropriate 11 | --- 12 | ext4_utils/make_ext4fs.c | 1 - 13 | ext4_utils/make_ext4fs_main.c | 1 - 14 | 2 files changed, 2 deletions(-) 15 | 16 | diff --git a/ext4_utils/make_ext4fs.c b/ext4_utils/make_ext4fs.c 17 | index 2f89ae8a0..732afbed7 100644 18 | --- a/ext4_utils/make_ext4fs.c 19 | +++ b/ext4_utils/make_ext4fs.c 20 | @@ -62,7 +62,6 @@ 21 | 22 | #include 23 | #include 24 | -#include 25 | 26 | #define O_BINARY 0 27 | 28 | diff --git a/ext4_utils/make_ext4fs_main.c b/ext4_utils/make_ext4fs_main.c 29 | index a6c5f6160..f8e7b9da9 100644 30 | --- a/ext4_utils/make_ext4fs_main.c 31 | +++ b/ext4_utils/make_ext4fs_main.c 32 | @@ -32,7 +32,6 @@ 33 | #ifndef USE_MINGW 34 | #include 35 | #include 36 | -#include 37 | #else 38 | struct selabel_handle; 39 | #endif 40 | -------------------------------------------------------------------------------- /recipes-devtools/android-tools-adb/android-tools-adb/extras/0002-ext4_utils-add-o-argument-to-preserve-ownership.patch: -------------------------------------------------------------------------------- 1 | From b9254539811ce912bfd16dd1d185eba7a10cceff Mon Sep 17 00:00:00 2001 2 | From: Markus Mayer 3 | Date: Wed, 7 Sep 2016 12:58:47 +0300 4 | Subject: [PATCH] ext4_utils: add -o argument to preserve ownership 5 | 6 | See also https://android-review.googlesource.com/#/c/100312/ 7 | 8 | Upstream-Status: Inappropriate 9 | --- 10 | ext4_utils/make_ext4fs.c | 6 ++++++ 11 | ext4_utils/make_ext4fs_main.c | 10 ++++++++-- 12 | 2 files changed, 14 insertions(+), 2 deletions(-) 13 | 14 | diff --git a/ext4_utils/make_ext4fs.c b/ext4_utils/make_ext4fs.c 15 | index 732afbed7..2cbf04399 100644 16 | --- a/ext4_utils/make_ext4fs.c 17 | +++ b/ext4_utils/make_ext4fs.c 18 | @@ -67,6 +67,8 @@ 19 | 20 | #endif 21 | 22 | +int preserve_owner = 0; 23 | + 24 | /* TODO: Not implemented: 25 | Allocating blocks in the same block group as the file inode 26 | Hash or binary tree directories 27 | @@ -185,6 +187,10 @@ static u32 build_directory_structure(const char *full_path, const char *dir_path 28 | } else { 29 | dentries[i].mtime = fixed_time; 30 | } 31 | + if (preserve_owner) { 32 | + dentries[i].uid = stat.st_uid; 33 | + dentries[i].gid = stat.st_gid; 34 | + } 35 | uint64_t capabilities; 36 | if (fs_config_func != NULL) { 37 | #ifdef ANDROID 38 | diff --git a/ext4_utils/make_ext4fs_main.c b/ext4_utils/make_ext4fs_main.c 39 | index f8e7b9da9..e82d43277 100644 40 | --- a/ext4_utils/make_ext4fs_main.c 41 | +++ b/ext4_utils/make_ext4fs_main.c 42 | @@ -47,13 +47,15 @@ struct selabel_handle; 43 | extern struct fs_info info; 44 | 45 | 46 | +extern int preserve_owner; 47 | + 48 | static void usage(char *path) 49 | { 50 | fprintf(stderr, "%s [ -l ] [ -j ] [ -b ]\n", basename(path)); 51 | fprintf(stderr, " [ -g ] [ -i ] [ -I ]\n"); 52 | fprintf(stderr, " [ -L