[Android Development on Bada] astronfestmon:
Hello There!

Here it goes!

Everything on ubuntu 64 bit

Hi there again. It is time for a rom based on my tutorial. This week I'll release a ROM .

I'll upload into a github my kernel working with ubuntu touch.

Kernel file in bz2 already in code .google.com/p/tizen-kernel-s8500

I'll release the changes on device/samsung/wave folder.

I've made now more patches on kernel 3.4.

It's working with TARGET_NO_KERNEL := true on BoadConfig.mk

1- mkdir touch && cd touch

2 - sudo apt-get install git gnupg flex bison gperf build-essential \

zip bzr curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \

libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \

libgl1-mesa-dev g++-multilib mingw32 tofrodos \

python-markdown libxml2-utils xsltproc zlib1g-dev:i386 schedtool

3- See howto setup phablet tools ppa

4 - sudo apt-get install phablet-tools

5 - phablet-dev-bootstrap -c ~/touch

6 - wait a couple of hours to get all synced sources

7 - get and copy into your ~/touch/device/samsung the device wave

8 - copy and get linux 3.4 and see what are the changes for wave through the wave kernel changes. I'll reply it here which are.

9 - get and copy bada-modem-ril SamsungServiceMode and also vendor wave

9.1 - Get hardware samsung with all exynos - it is need for compiling

10 - Copy them to the respective folders as CM10

11 - create a vendorsetup.sh inside device/samsung/wave with the following:

add_lunch_combo full_wave-userdebug

add_lunch_combo cm_wave-userdebug

12 - export CROSS_COMPILE=arm-eabi-

13 - export PATH=$PATH:/home/youruser/touch/prebuilts/gcc/linux-x86/arm/gcc-4.4.6/bin

14 - export TARGET_PRODUCT = $PRODUCT : $PRODUCT is your wave here

15 - . build/envsetup.sh

16 - lunch full_wave-userdebug

17 - make -j2 or make TARGET_NO_KERNEL=true

PS:

BUILD_HOST_64bit := false
# $(1): The file to check
define get-file-size
stat --format "%s" "$(1)" | tr -d '\n'
endef

HOST_SDK_TOOLCHAIN_PREFIX := prebuilts/tools/gcc-sdk
# Don't do anything if the toolchain is not there
ifneq (,$(strip $(wildcard $(HOST_SDK_TOOLCHAIN_PREFIX)/gcc)))
HOST_CC := $(HOST_SDK_TOOLCHAIN_PREFIX)/gcc
HOST_CXX := $(HOST_SDK_TOOLCHAIN_PREFIX)/g++
HOST_AR := $(HOST_SDK_TOOLCHAIN_PREFIX)/ar
HOST_LD := $(HOST_SDK_TOOLCHAIN_PREFIX)/ld
endif # $(HOST_SDK_TOOLCHAIN_PREFIX)/gcc exists

HOST_GLOBAL_CFLAGS += -fPIC -fno-lto
HOST_GLOBAL_CFLAGS += \
-include $(call select-android-config-h,linux-i686)

# Disable new longjmp in glibc 2.11 and later. See bug 2967937.
HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0

HOST_NO_UNDEFINED_LDFLAGS := -Wl,--no-undefined

Include this on a file called build/core/combo/HOST_linux-i686.mk

I'm trying to test it on my i686 machine too.

#!/bin/bash

HOST_OS=`uname -s | tr '[:upper:]' '[:lower:]'`
if [ "$HOST_OS" != "linux" ] ; then
echo "ERROR: The gcc this script points to can only run on linux"
exit 1
fi

PROGNAME=`basename $0`

#PREFIX32=../../gcc/linux-x86/host/i686-linux-glibc2.7-4.4.3/bin/i686-linux # previous version
PREFIX32=../../gcc/linux-x86/host/i686-linux-glibc2.7-4.6/bin/i686-linux
PREFIX64=../../gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6/bin/x86_64-linux

options=" ${@} " # sentinel prefix/suffix space to simplify pattern match below

if [ $BUILD_HOST_64bit ] ; then
MY_TOOL=`dirname $0`/${PREFIX64}-${PROGNAME}
else
# Otherwise, choose 32-bit
MY_TOOL=`dirname $0`/${PREFIX32}-${PROGNAME}
fi

$MY_TOOL "$@"

on the file prebuilts/tools/gcc-sdk/gcc

definitions.mk diff

see the diff below*

index 9fe0a11..2750bed 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -1547,7 +1547,7 @@ define transform-classes.jar-to-dex
@echo "target Dex: $(PRIVATE_MODULE)"
@mkdir -p $(dir $@)
$(hide) $(DX) \
- $(if $(findstring windows,$(HOST_OS)),,-JXms16M -JXmx2048M) \
+ $(if $(findstring windows,$(HOST_OS)),,-JXms16M -JXmx1024M) \
--dex --output=$@ \
$(incremental_dex) \
$(if $(NO_OPTIMIZE_DX), \

hth

on BoardConfig.mk from device/samsung/wave

TARGET_NO_KERNEL :=true

Advise:

On ubuntu 64bit if it happens make wait for unfinished jobs... is a issue for overheating on your computer like happens to me.

To keep the build do make or make -j2 again.

More updates to come.

Here it goes. This week a Rom.