Scratch notes regarding JB and FOSS drivers.

Matthew Hines spamfreemirage335 at gmail.com
Wed Aug 8 19:23:47 UTC 2012


#_LiveCD_
echo '#deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release amd64 
(20120425)]/ dists/precise/main/binary-i386/

#deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release amd64 
(20120425)]/ dists/precise/restricted/binary-i386/
#deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release amd64 
(20120425)]/ precise main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://us.archive.ubuntu.com/ubuntu/ precise main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ precise main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://us.archive.ubuntu.com/ubuntu/ precise-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ precise-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ precise universe
deb-src http://us.archive.ubuntu.com/ubuntu/ precise universe
deb http://us.archive.ubuntu.com/ubuntu/ precise-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ precise-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://us.archive.ubuntu.com/ubuntu/ precise multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ precise multiverse
deb http://us.archive.ubuntu.com/ubuntu/ precise-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ precise-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ precise-backports main 
restricted universe multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ precise-backports main 
restricted universe multiverse

deb http://security.ubuntu.com/ubuntu precise-security main restricted
deb-src http://security.ubuntu.com/ubuntu precise-security main restricted
deb http://security.ubuntu.com/ubuntu precise-security universe
deb-src http://security.ubuntu.com/ubuntu precise-security universe
deb http://security.ubuntu.com/ubuntu precise-security multiverse
deb-src http://security.ubuntu.com/ubuntu precise-security multiverse

## Uncomment the following two lines to add software from Canonicals
## partner repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu precise partner
# deb-src http://archive.canonical.com/ubuntu precise partner

## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
deb http://extras.ubuntu.com/ubuntu precise main
deb-src http://extras.ubuntu.com/ubuntu precise main' | sudo tee 
/etc/apt/sources.list

sudo apt-get update

sudo apt-get install git-core gnupg flex bison gperf build-essential zip 
curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 
libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 
openjdk-6-jdk pngcrush schedtool tofrodos python-markdown libxml2-utils 
xsltproc zlib1g-dev:i386

sudo apt-get install -f

sudo apt-get install git-core gnupg flex bison gperf build-essential zip 
curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 
libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 
openjdk-6-jdk pngcrush schedtool tofrodos python-markdown libxml2-utils 
xsltproc zlib1g-dev:i386

mkdir -p ~/bin
mkdir -p ~/android/system

curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo

export PATH="$PATH":"$HOME"/bin

#http://developer.android.com/sdk/index.html
#export PATH=${PATH}:<sdk>/tools:<sdk>/platform-tools

cd ~/android/system/

#_init_
repo init -u git://github.com/CyanogenMod/android.git -b jellybean
repo sync -j16

#Do the JDKBuild patch to get java working. #DO NOT do this for openjdk.
cd build
echo 'diff --git a/core/config.mk b/core/config.mk
index 41e60ea..1f949cb 100644
--- a/core/config.mk
+++ b/core/config.mk
@@ -264,10 +264,10 @@ ifeq ($(HOST_OS),darwin)
  HOST_JDK_TOOLS_JAR :=
  else
  HOST_JDK_TOOLS_JAR:= $(shell $(BUILD_SYSTEM)/find-jdk-tools-jar.sh)
-ifeq ($(wildcard $(HOST_JDK_TOOLS_JAR)),)
-$(error Error: could not find jdk tools.jar, please install JDK6, \
-    which you can download from java.sun.com)
-endif
+#ifeq ($(wildcard $(HOST_JDK_TOOLS_JAR)),)
+#$(error Error: could not find jdk tools.jar, please install JDK6, \
+#    which you can download from java.sun.com)
+#endif
  endif

  # Is the host JDK 64-bit version?' | patch -p1
  cd ..

#Edit vendor/cm/config/common.mk . Add this under optional CM packages.
echo '
     rsync \
     ssh \
     scp \
     dropbear \
     dropbearkey
'

#Sync some stuff.
. build/envsetup.sh && breakfast maguro

#_obtain FOSS modem drivers_
cd hardware/ril

git clone 
git://gitorious.org/~ast/replicant/asts-hardware_ril_samsung-ril.git
mv asts-hardware_ril_samsung-ril samsung-ril
cd samsung-ril
#X#git checkout origin/tuna-ics -b ics
cd ..

git clone 
git://gitorious.org/~ast/replicant/asts-hardware_ril_samsung-ril-client.git
mv asts-hardware_ril_samsung-ril-client samsung-ril-client
cd samsung-ril-client
#Manually add #define LOGD ALOGD to samsung-ril-client.c
#Manually add #define LOGE ALOGE to samsung-ril-client.c
#X#git checkout origin/tuna_ics -b tuna_ics
cd ..

cd ../..
cd external

git clone git://github.com/astarasikov/libsamsung-ipc.git
cd libsamsung-ipc
git checkout origin/tuna-tracking -B github-tuna-tracking
cd ..

cd ..

#_modify files_
cd hardware/ril/samsung-ril
sed -i 's/LOCAL_MODULE\:\=\ libsamsung-ril/LOCAL_MODULE\:\=\ 
libsec-ril/' ./Android.mk
cd ../../..

cd device/samsung/tuna
echo 'PRODUCT_PACKAGES += libsec-ril libsecril-client' >> device.mk
cd ../../..

cd device/samsung/maguro
sed -i 's/\/vendor\/lib\/libsec-ril.so/\/system\/lib\/libsec-ril.so/' 
system.prop
cd ../../..

cd device/samsung/tuna
#Edit fstab.tuna. Change the ro option for factory to rw.
cd ../../..

#_blobs_
#Get everything at 
https://developers.google.com/android/nexus/drivers#magurojro03h . 
Extract the self extractors in root of build tree. Do not include the 
GSM (samsung) driver.
cd ../../../..
./vendor/cm/get-prebuilts

#_build_
. build/envsetup.sh && brunch maguro
#Sometimes need to type make.

#_____MISC_____
cdesai: [you need a 64bit OS]
https://developers.google.com/android/nexus/drivers#magurojro03h
"If your device is suffering from the bug, then navigate to Settings > 
Location Services and uncheck and re-check Google Location Services." - 
http://www.ibtimes.co.uk/articles/368687/20120731/galaxy-nexusi9520-android41-jellybean-cyanogenmod10-gps-google.htm

#_____REBUILDS_____
Alex [sp3dev]: it won't build because you've deleted the files from out. 
you have to manually build libsamsung-ipc, samsung-ril and ril client in 
that order

#_____Result_____
Similar crash and burn on GSM call as on ICS. Failure.


More information about the Replicant mailing list