[Sony Xperia S, Acro S, Ion] sa30udi:
Hi ,

I've recently bought a Xperia S so I'm new in this forum , I had a Galaxy Nexus before and Paranoid is my favourite flavour on it , I also liked to try my first porting attempt on this device so I started working on Paranoid Android v3.+ following this guide :

http://xdaforums.com/showthread.php?t=1863547 .

enough talking here are the changes I made to the local_manifests (I wanted to build with OpenSEMC kernel that is used on CM10.1)

<?xml version="1.0" encoding="UTF-8" ?>
<manifest>

<project name="OpenSEMC/android_device_sony_nozomi" path="device/sony/nozomi" remote="github" revision="cm-10.1" />
<project name="OpenSEMC/android_kernel_sony_msm8x60" path="kernel/sony/msm8x60" remote="github" revision="msm-mako-jb-mr1.1" />
<project name="OpenSEMC/android_device_sony_qcom-common" path="device/sony/qcom-common" remote="github" revision="cm-10.1"/>
<project name="OpenSEMC/android_device_sony_common" path="device/sony/common" remote="github" revision="cm-10.1"/>
<project name="OpenSEMC/proprietary_vendor_sony" path="vendor/sony" remote="github" revision="cm-10.1"/>
<project name="OpenSEMC/android_device_sony_fuji-common" path="device/sony/fuji-common" remote="github" revision="cm-10.1" />
<project name="OpenSEMC/android_hardware_sony_DASH" path="hardware/sony/DASH" remote="github" revision="cm-10.1" />
<project name="OpenSEMC/android_hardware_qcom_display-caf" path="hardware/qcom/display-caf" remote="github" revision="cm-10.1" />
<project name="OpenSEMC/android_hardware_qcom_audio-caf" path="hardware/qcom/audio-caf" remote="github" revision="cm-10.1" />
<project name="OpenSEMC/android_hardware_qcom_bt" path="hardware/qcom/bt" remote="github" revision="cm-10.1" />
<project name="OpenSEMC/android_hardware_qcom_gps" path="hardware/qcom/gps" remote="github" revision="cm-10.1" />

</manifest>

after that , I repo sync'd and extracted the proprietary files needed .Then I added those files to the source :

/vendor/pa/manifest/

nozomi.adds :

[
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_frameworks_av",
"target_path": "frameworks/av",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_frameworks_native",
"target_path": "frameworks/native",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_frameworks_opt_telephony",
"target_path": "frameworks/opt/telephony",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_device_sony_common",
"target_path": "device/sony/common",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_device_sony_fuji-common",
"target_path": "device/sony/fuji-common",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_device_sony_qcom-common",
"target_path": "device/sony/qcom-common",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_hardware_sony_DASH",
"target_path": "hardware/sony/DASH",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_hardware_sony_display-caf",
"target_path": "hardware/sony/display-caf",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_hardware_sony_audio-caf",
"target_path": "hardware/sony/audio-caf",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_hardware_qcom_gps",
"target_path": "hardware/qcom/gps",
"revision": "cm-10.1"
},
{
"remote": "github",
"account": "OpenSEMC",
"repository": "android_hardware_qcom_bt",
"target_path": "hardware/qcom/bt",
"revision": "cm-10.1"
},

]

/vendor/pa/manifest/nozomi.removes:

[
{
"name": "platform/frameworks/av",
"path": "frameworks/av"
},
{
"name": "ParanoidAndroid/android_frameworks_native",
"path": "frameworks/native"
},
{
"name": "ParanoidAndroid/android_frameworks_opt_telephony",
"path": "frameworks/opt/telephony"
}
]

/vendor/pa/prebuilt/pa_nozomi.conf :

I used pa_i9300.conf so I guess no errors made here :p

/vendor/pa/products/pa_nozomi.mk ( here I believe I made more than a single error )

# Copyright (C) 2012 ParanoidAndroid Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Check for target product
ifeq (pa_nozomi,$(TARGET_PRODUCT))

# Define PA bootanimation size
PARANOID_BOOTANIMATION_NAME := XHDPI

# OVERLAY_TARGET adds overlay asset source
OVERLAY_TARGET := pa_i9300

# Build paprefs from sources
PREFS_FROM_SOURCE ?= false

# Include ParanoidAndroid common configuration
include vendor/pa/config/pa_common.mk

# Inherit AOSP device configuration
$(call inherit-product, device/sony/nozomi/full_nozomi.mk)

# Product Package Extras - Repos can be added manually or via addprojects.py
-include vendor/pa/packages/nozomi.mk

# CM Package Extras
-include vendor/pa/packages/cm.mk

# Override AOSP build properties
PRODUCT_NAME := pa_nozomi
PRODUCT_BRAND := sony
PRODUCT_MODEL := Xperia S
PRODUCT_MANUFACTURER := sony
[COLOR="red"]#down here -v- I copied these from OpenSEMC's ROM build.prop
PRODUCT_BUILD_PROP_OVERRIDES += PRODUCT_NAME=LT26i BUILD_FINGERPRINT=SEMC/LT26i_1257-5499/LT26i:4.0.4/6.1.A.2.50/zfd_zw:user/release-keys PRIVATE_BUILD_DESC=LT26i-user 4.0.4 6.1.A.2.50 zfd_zw test-keys[/COLOR]

# Update local_manifest.xml
GET_VENDOR_PROPS := $(shell vendor/pa/tools/getvendorprops.py $(PRODUCT_NAME))
GET_PROJECT_RMS := $(shell vendor/pa/tools/removeprojects.py $(PRODUCT_NAME))
GET_PROJECT_ADDS := $(shell vendor/pa/tools/addprojects.py $(PRODUCT_NAME))
GET_CM_PROJECT_ADDS := $(shell vendor/pa/tools/addprojects.py cm.adds)

endif
[COLOR="Red"]#I removed TARGET_DEVICE because I didn't know what to put there and that the build won't won't override it [/COLOR]

/vendor/pa/vendorprops/nozomi.prorietaries

i found nothing to add here so I left it blank too

[
]

so after this little work the build attempt failed with these errors

Traceback (most recent call last):
File "vendor/pa/tools/addprojects.py", line 139, in <module>
fetch_extras(def_file)
File "vendor/pa/tools/addprojects.py", line 108, in fetch_extras
projects = json.loads(projects_file.read())
File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 365, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 383, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
Trying dependencies-only mode on a non-existing device tree?

Traceback (most recent call last):
File "vendor/pa/tools/addprojects.py", line 139, in <module>
fetch_extras(def_file)
File "vendor/pa/tools/addprojects.py", line 108, in fetch_extras
projects = json.loads(projects_file.read())
File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 365, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 383, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded

.
.
.
.
.
.
.
.
.
.
.
.
.
.
find: `src': No such file or directory
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/bin/rild'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/bin/rild'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/lib/libMPU3050.so'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/lib/libMPU3050.so'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/lib/libcamera_client.so'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/lib/libcamera_client.so'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/lib/libfmradio.so'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/lib/libfmradio.so'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/lib/libmllite.so'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/lib/libmllite.so'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/lib/libmlplatform.so'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/lib/libmlplatform.so'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/lib/libril.so'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/lib/libril.so'
build/core/Makefile:40: warning: overriding commands for target `/home/user/android/out/target/product/nozomi/system/etc/permissions/android.software.live_wallpaper.xml'
build/core/base_rules.mk:502: warning: ignoring old commands for target `/home/user/android/out/target/product/nozomi/system/etc/permissions/android.software.live_wallpaper.xml'
No private recovery resources for TARGET_DEVICE nozomi
make -C kernel/sony/msm8x60 O=/home/user/android/out/target/product/nozomi/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" /home/user/android/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-" VARIANT_DEFCONFIG= SELINUX_DEFCONFIG= cyanogen_fuji_nozomi_defconfig
make[1]: Entering directory `/home/user/android/kernel/sony/msm8x60'
Install: /home/user/android/out/host/linux-x86/bin/acp
host Executable: tblgen (/home/user/android/out/host/linux-x86/obj/EXECUTABLES/tblgen_intermediates/tblgen)
preparing StaticLib: libc_common [including /home/user/android/out/target/product/nozomi/obj/STATIC_LIBRARIES/libbionic_ssp_intermediates/libbionic_ssp.a]
Target buildinfo: /home/user/android/out/target/product/nozomi/system/build.prop
/bin/bash: 4.0.4: command not found
make: *** [/home/user/android/out/target/product/nozomi/system/build.prop] Error 127
make: *** Deleting file `/home/user/android/out/target/product/nozomi/system/build.prop'
make: *** Waiting for unfinished jobs....
preparing StaticLib: libc_common [including /home/user/android/out/target/product/nozomi/obj/STATIC_LIBRARIES/libc_netbsd_intermediates/libc_netbsd.a]
target StaticLib: libc_common (/home/user/android/out/target/product/nozomi/obj/STATIC_LIBRARIES/libc_common_intermediates/libc_common.a)
GEN /home/user/android/out/target/product/nozomi/obj/KERNEL_OBJ/Makefile
#
# configuration written to .config
#
make[1]: Leaving directory `/home/user/android/kernel/sony/msm8x60'

please help me keeping up with this port as I see a lot of potential in this device , and eveybody loves multiple flavoured roms for his/her device

thanks in advance .

Rock on !