[Samsung Infuse 4G] triq6:
I've been trying to compile jt's ICS rom, but I've been running into a number of different issues. I'm new to this whole thing, but I would really like to learn as much as possible and hopefully be able to start modding roms. I've done a ton of reading and trial/error all week (I started a few days before jt dropped ICS on the Infuse), but I seem to have hit a brick wall. Instead of bashing my head (and probably screwing things up more), I decided to stop and ask for help. Here is what I've done so far (I'm on OS X 10.7.3 btw):

I read the full "Getting Started" section of http://source.google.com (probably twice by now), and followed their instructions for initializing the build environment in OS X (i.e. getting all necessary software, creating a case-sensitive dev environment, initializing and syncing repo, etc)

I did the OS X 10.7 "hacks" from the CM wiki's SGS II compile guide.

Cloned the following repos from jt:

android_device_samsung_infuse4g

android_device_samsung_aries-common

android_vendor_cm

android_kernel_samsung_dempsey

(I'm switching to the terminal commands + output in code boxes now)

triq6@triq6:/Volumes/android/ROM_DIR$ . build/envsetup.sh

including device/samsung/maguro/vendorsetup.sh
including device/samsung/tuna/vendorsetup.sh
including device/ti/panda/vendorsetup.sh
including vendor/cm/vendorsetup.sh
including sdk/bash_completion/adb.bash

triq6@triq6:/Volumes/android/ROM_DIR$ lunch full_infuse4g-eng

build/core/product_config.mk:193: *** _nic.PRODUCTS.[[device/samsung/infuse4g/full_infuse4g.mk]]: "vendor/samsung/aries-common/aries-vendor-blobs.mk" does not exist. Stop.

** Don't have a product spec for: 'full_infuse4g'
** Do you have the right repo manifest?

I noticed that jt's extract-files.sh is saving some blobs as 'infuse-vendor-blobs.mk' so I cp'd them to the name/location above:

triq6@triq6:/Volumes/android/ROM_DIR$ sudo cp vendor/samsung/infuse4g/infuse4g-vendor-blobs.mk vendor/samsung/aries-common/aries-vendor-blobs.mk

I re-read CM's build wiki and saw that they cp the device's buildspec.mk to system/buildspec.mk

triq6@triq6:/Volumes/android/ROM_DIR$ sudo cp device/samsung/infuse4g/infuse4g.mk system/buildspec.mk

triq6@triq6:/Volumes/android/ROM_DIR$ . build/envsetup.sh

including device/samsung/maguro/vendorsetup.sh
including device/samsung/tuna/vendorsetup.sh
including device/ti/panda/vendorsetup.sh
including vendor/cm/vendorsetup.sh
including sdk/bash_completion/adb.bash

triq6@triq6:/Volumes/android/ROM_DIR$ lunch full_infuse4g-eng

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full_infuse4g
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=darwin
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================

triq6@triq6:/Volumes/android/ROM_DIR$ make -j4 otapackage

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full_infuse4g
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=darwin
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================
Checking build tools versions...
Please install the 10.5 SDK on this machine at /Developer/SDKs/MacOSX10.5.sdk
external/qemu/Makefile.android:82: *** Aborting the build.. Stop.

Created a symlink for the OS X SDK in the location above:

triq6@triq6:/Volumes/android/ROM_DIR$ sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk /Developer/SDKs/MacOSX10.5.sdk

triq6@triq6:/Volumes/android/ROM_DIR$ make -j4 otapackage

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full_infuse4g
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=darwin
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================
build/core/Makefile:25: warning: overriding commands for target `out/target/product/infuse4g/system/etc/permissions/android.software.live_wallpaper.xml'
build/core/Makefile:25: warning: ignoring old commands for target `out/target/product/infuse4g/system/etc/permissions/android.software.live_wallpaper.xml'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/infuse4g/system/lib/egl/libGLES_android.so'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/infuse4g/system/lib/egl/libGLES_android.so'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/infuse4g/system/lib/libril.so'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/infuse4g/system/lib/libril.so'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/infuse4g/system/bin/rild'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/infuse4g/system/bin/rild'
No private recovery resources for TARGET_DEVICE infuse4g
Header: out/host/darwin-x86/obj/include/libexpat/expat.h
Header: out/host/darwin-x86/obj/include/libexpat/expat_external.h
Header: out/target/product/infuse4g/obj/include/libexpat/expat.h
Header: out/target/product/infuse4g/obj/include/libexpat/expat_external.h
Header: out/host/darwin-x86/obj/include/libpng/png.h
Header: out/host/darwin-x86/obj/include/libpng/pngconf.h
Header: out/host/darwin-x86/obj/include/libpng/pngusr.h
Header: out/target/product/infuse4g/obj/include/libpng/png.h
Header: out/target/product/infuse4g/obj/include/libpng/pngconf.h
Header: out/target/product/infuse4g/obj/include/libpng/pngusr.h
Header: out/target/product/infuse4g/obj/include/libsonivox/eas.h
Header: out/target/product/infuse4g/obj/include/libsonivox/eas_types.h
Header: out/target/product/infuse4g/obj/include/libsonivox/jet.h
Header: out/target/product/infuse4g/obj/include/libsonivox/eas_reverb.h
Header: out/target/product/infuse4g/obj/include/libsonivox/ARM_synth_constants_gnu.inc
Header: out/target/product/infuse4g/obj/include/libwpa_client/wpa_ctrl.h
Notice file: system/core/libmincrypt/NOTICE -- out/host/darwin-x86/obj/NOTICE_FILES/src//lib/libmincrypt.a.txt
Directory: out/target/product/infuse4g/root/sbin
Directory: out/target/product/infuse4g/root/dev
Directory: out/target/product/infuse4g/root/proc
Directory: out/target/product/infuse4g/root/system
Directory: out/target/product/infuse4g/root/sys
Directory: out/target/product/infuse4g/root/data
prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -Ibionic/libc/private -o out/target/product/infuse4g/obj/lib/crtbegin_static.o -c bionic/libc/arch-arm/bionic/crtbegin_static.S
prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -Ibionic/libc/private -o out/target/product/infuse4g/obj/lib/crtend_so.o -c bionic/libc/arch-arm/bionic/crtend_so.S
prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -Ibionic/libc/private -o out/target/product/infuse4g/obj/lib/crtbegin_so.o -c bionic/libc/arch-arm/bionic/crtbegin_so.S
prebuilt/darwin-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-gcc -mthumb-interwork -Ibionic/libc/private -DCRT_LEGACY_WORKAROUND -Ibionic/libc/private -o out/target/product/infuse4g/obj/lib/crtend_android.o -c bionic/libc/arch-arm/bionic/crtend.S
Notice file: system/core/init/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//root/init.txt
Notice file: system/core/liblog/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/liblog.a.txt
Notice file: system/core/libcutils/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libcutils.a.txt
Notice file: bionic/libc/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libc.a.txt
Notice file: bionic/libc/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libc.so.txt
Notice file: bionic/libc/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libc_common.a.txt
Notice file: bionic/libdl/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libdl.so.txt
Notice file: bionic/libstdc++/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libstdc++.so.txt
make: *** No rule to make target `device/samsung/aries-common/lpm.rc', needed by `out/target/product/infuse4g/root/lpm.rc'. Stop.
make: *** Waiting for unfinished jobs....
Notice file: bionic/libm/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//system/lib/libm.so.txt
Notice file: system/core/adb/NOTICE -- out/target/product/infuse4g/obj/NOTICE_FILES/src//root/sbin/adbd.txt

A couple notices and warnings in the output above, but this is the error that stopped it:

make: *** No rule to make target `device/samsung/aries-common/lpm.rc', needed by `out/target/product/infuse4g/root/lpm.rc'. Stop.

How do I fix that? Also, were my assumptions earlier about cp'ing the blobs and the buildspec correct, or did I just mess things up?

Any help would be greatly appreciated, even if it is a link to a step that I might have missed in the compile process. Thanks in advance!

(Mods: I couldn't decide if this belongs in development or Q&A...if it's in the wrong section, let me know and I'll remove & repost in the right place)