LoginSignup
2
2

More than 5 years have passed since last update.

brillo には どんなファイルで動いているのか? (source codeから分析)

Last updated at Posted at 2015-11-12

前回 は、reference boardが何かでしたが、今回は、その中で動いているときのファイルがどんなものなのかに迫ります。

device/generic/brillo/brillo_base.mk

#以下は開発中のものなので今後どんどん変わると思われますが、Androidに比べればだいぶsimpleです。ですが、debug/exampleものなども多く見受けられます。

brillo_base.mk
PRODUCT_COPY_FILES += \
  device/generic/brillo/brillo.rc:system/etc/init/brillo.rc \
  device/generic/brillo/sensorservice.rc:system/etc/init/sensorservice.rc \
  device/generic/brillo/init.firewall-setup.sh:system/etc/init.firewall-setup.sh \
  device/generic/brillo/init.wifi-setup.sh:system/etc/init.wifi-setup.sh \

PRODUCT_PACKAGES = \
  adbd \
  bootctl \
  firewalld \
  init \
  init.environ.rc \
  init.rc \
  ip \
  ip6tables \
  iptables \
  keymaster \
  keystore \
  libminijail \
  linker \
  logcat \
  logd \
  nativepowerman \
  power_example \
  reboot \
  rootdev \
  servicemanager \
  softkeymaster \
  sh \
  toolbox \
  toybox \
  update_engine \
  update_engine_client \
  weaved \
  webservd \

PRODUCT_PACKAGES += \
  libstdc++ \

PRODUCT_PACKAGES += \
  dbus-daemon \
  dbus-example-client \
  dbus-example-daemon \
  dbus-monitor \
  dbus-send \

PRODUCT_PACKAGES += \
  brillo_audio_test \
PRODUCT_PACKAGES += \
  audio_hal_playback_test \
  audio_hal_record_test \
PRODUCT_PACKAGES += \
  slesTest_playFdPath \
  slesTest_recBuffQueue \
  slesTest_sawtoothBufferQueue \
PRODUCT_PACKAGES += \
  libaudioroute \
  libtinyalsa \
  libtinycompress \
  local_time.default \
  mediaserver \
PRODUCT_PACKAGES += \
  libmedia \
  libstagefright \
  libOpenSLES \
  libOpenMAXAL \
PRODUCT_PACKAGES += \
  libstagefright_soft_aacdec \
  libstagefright_soft_aacenc \
  libstagefright_soft_amrdec \
  libstagefright_soft_amrnbenc \
  libstagefright_soft_amrwbenc \
  libstagefright_soft_flacenc \
  libstagefright_soft_g711dec \
  libstagefright_soft_gsmdec \
  libstagefright_soft_mp3dec \
  libstagefright_soft_opusdec \
  libstagefright_soft_rawdec \
  libstagefright_soft_vorbisdec \
PRODUCT_PACKAGES += \
  libsensor \
  sensorservice \
  sensors-hal-example-app \
  sensors-ndk-example-app \
PRODUCT_PACKAGES += \
  cacerts \
  dhcpcd \
  dhcpcd-6.8.2 \
  dnsmasq \
  hostapd \
  shill \
  wifi_init \
  wpa_supplicant \

PRODUCT_PACKAGES += \
  libmetrics \
  metrics_client \
  metrics_daemon \

PRODUCT_PACKAGES += \
  crash_reporter \

PRODUCT_PACKAGES += \
  avahi-browse \
  avahi-client \
  avahi-daemon \
  libdaemon \

PRODUCT_PACKAGES += \
  tlsdate \
  tlsdate-helper \
  tlsdated \

# Wireless debugging.
PRODUCT_PACKAGES += \
  iw \
  libnl \
  ping \
  wpa_cli \

# Bluetooth.
PRODUCT_PACKAGES += \
  bluetoothtbd \
  bluetooth-cli \

意外と車輪の再発明が目立ちます (crash_reporterとか)
あと、多くのdebug/exampleが見受けられ、まだまだ開発途中のようです。

おもしろいのは

brillo_base.mk
# Brillo targets use the A/B updater.
AB_OTA_UPDATER := true

# Do not build Android OTA package.
TARGET_SKIP_OTA_PACKAGE := true

# This is the list of partitions the A/B updater will update. These need to have
# two partitions each in the partition table, with the right suffix used by the
# bootloader, for example "system_a" and "system_b".
AB_OTA_PARTITIONS := \
  boot \
  system

/systemが2重化されているみたいです。 redundancyまたはA/Bといえば、A/B testなので、そういうのを今はやっているのでしょうか... (A/B testなら、別に実機側に入れなくてもできると思いますけど^^;)

あと、

brillo_base.mk
PRODUCT_PACKAGES += \
  libstagefright_soft_aacdec \
  libstagefright_soft_aacenc \
  libstagefright_soft_amrdec \
  libstagefright_soft_amrnbenc \
  libstagefright_soft_amrwbenc \
  libstagefright_soft_flacenc \
  libstagefright_soft_g711dec \
  libstagefright_soft_gsmdec \
  libstagefright_soft_mp3dec \
  libstagefright_soft_opusdec \
  libstagefright_soft_rawdec \
  libstagefright_soft_vorbisdec \

ということで、音は鳴らせるみたいです。

つづく。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2