[Sony Ericsson Xperia Mini, Mini Pro, Xperia Pro, A] mihahn:
Okay so I did the following:

1. Initialize repo in ~/bin

2. mkdir android/system

3. cd ~/android/system

4. repo init for cm9(.1) (ics)

5. repo sync

6. Paste the following as my local_manifest.xml

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_semc_mango" path="device/semc/mango" remote="github" revision="ics" />
<project name="CyanogenMod/android_device_semc_msm7x30-common" path="device/semc/msm7x30-common" remote="github" revision="ics" />
<project name="CyanogenMod/android_device_semc_mogami-common" path="device/semc/mogami-common" remote="github" revision="ics" />
<project name="CyanogenMod/semc-kernel-msm7x30" path="kernel/semc/msm7x30" remote="github" revision="ics" />
<project name="CyanogenMod/android_device_semc_coconut" path="device/semc/coconut" remote="github" revision="ics" />
<project name="CyanogenMod/android_device_semc_smultron" path="device/semc/smultron" remote="github" revision="ics" />
<project name="CyanogenMod/android_device_semc_satsuma" path="device/semc/satsuma" remote="github" revision="ics" />
</manifest>

7. repo sync

8. Modify the following files like this:

a) device/semc/mango/BoardConfig.mk

-include device/semc/msm7x30-common/BoardConfigCommon.mk
-include device/semc/mogami-common/BoardConfigCommon.mk
-include vendor/semc/mango/BoardConfigVendor.mk

TARGET_KERNEL_SOURCE := kernel/semc/msm7x30
TARGET_KERNEL_CONFIG := cyanogen_mango_defconfig
TARGET_PREBUILT_KERNEL := device/semc/mango/prebuilt/kernel

SENSORS_COMPASS_AK8975 := true
SENSORS_ACCEL_BMA150_INPUT := false
SENSORS_ACCEL_BMA250_INPUT := true
SENSORS_PROXIMITY_APDS9700 := true
SENSORS_PRESSURE_BMP180 := false

TARGET_OTA_ASSERT_DEVICE := SK17i,SK17a,mango

#twrp
DEVICE_RESOLUTION := 320x480
RECOVERY_GRAPHICS_USE_LINELENGTH := true
TARGET_RECOVERY_PIXEL_FORMAT := "BGRA_8888"

device/semc/msm7x30-common/msm7x30.mk

#
# Copyright (C) 2011 The CyanogenMod 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.
#

# These is the hardware-specific overlay, which points to the location
# of hardware-specific resource overrides, typically the frameworks and
# application settings that are stored in resourced.
DEVICE_PACKAGE_OVERLAYS += device/semc/msm7x30-common/overlay

$(call inherit-product, frameworks/base/build/phone-hdpi-512-dalvik-heap.mk)

PRODUCT_MANUFACTURER := Sony

PRODUCT_COPY_FILES += \
frameworks/base/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml \
frameworks/base/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \
frameworks/base/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml \
frameworks/base/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
frameworks/base/data/etc/android.hardware.sensor.accelerometer.xml:system/etc/permissions/android.hardware.sensor.accelerometer.xml \
frameworks/base/data/etc/android.hardware.sensor.compass.xml:system/etc/permissions/android.hardware.sensor.compass.xml \
frameworks/base/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \
frameworks/base/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \
frameworks/base/data/etc/android.hardware.touchscreen.xml:system/etc/permissions/android.hardware.touchscreen.xml \
frameworks/base/data/etc/android.hardware.touchscreen.multitouch.distinct.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.distinct.xml \
frameworks/base/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \
frameworks/base/data/etc/android.software.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml \
frameworks/base/data/etc/android.hardware.telephony.gsm.xml:system/etc/permissions/android.hardware.telephony.gsm.xml \
packages/wallpapers/LivePicker/android.software.live_wallpaper.xml:system/etc/permissions/android.software.live_wallpaper.xml

PRODUCT_COPY_FILES += \
device/semc/msm7x30-common/prebuilt/fillerh:root/filler \
device/semc/msm7x30-common/prebuilt/10hostapconf:system/etc/init.d/10hostapconf \
device/semc/msm7x30-common/prebuilt/10dhcpcd:system/etc/init.d/10dhcpcd \
device/semc/msm7x30-common/prebuilt/ueventd.semc.rc:root/ueventd.semc.rc \
device/semc/msm7x30-common/prebuilt/gps.conf:system/etc/gps.conf \
device/semc/msm7x30-common/prebuilt/fstab:root/fstab \
device/semc/msm7x30-common/prebuilt/bootrec:root/sbin/bootrec \
device/semc/msm7x30-common/prebuilt/postrecoveryboot.sh:root/sbin/postrecoveryboot.sh

#recovery resources

#Audio
PRODUCT_PACKAGES += \
audio.a2dp.default \
audio.primary.msm7x30 \
audio_policy.msm7x30 \
libaudioutils

#Gralloc
PRODUCT_PACKAGES += \
gralloc.msm7x30 \
copybit.msm7x30 \
hwcomposer.msm7x30 \
libgenlock \
libQcomUI \
libtilerenderer \
libmemalloc \
liboverlay

#Hal
PRODUCT_PACKAGES += \
gps.semc \
lights.semc \
camera.semc \
sensors.default

# QCOM OMX
PRODUCT_PACKAGES += \
libstagefrighthw \
libOmxCore \
libOmxVdec \
libOmxVenc \
libmm-omxcore \
libdivxdrmdecrypt

# Live Wallpapers
PRODUCT_PACKAGES += \
LiveWallpapers \
LiveWallpapersPicker \
VisualizationWallpapers \
librs_jni

#Misc
PRODUCT_PACKAGES += \
com.android.future.usb.accessory \
Torch

PRODUCT_PROPERTY_OVERRIDES += \
ro.tethering.kb_disconnect=1

# we have enough storage space to hold precise GC data
PRODUCT_TAGS += dalvik.gc.type-precise

PRODUCT_PROPERTY_OVERRIDES += \
ro.opengles.version=131072 \
rild.libpath=/system/lib/libril-qc-1.so \
rild.libargs=-d/dev/smd0 \
ro.ril.hsxpa=1 \
ro.ril.gprsclass=10 \
ro.ril.def.agps.mode=2 \
ro.ril.def.agps.feature=1 \
ro.telephony.call_ring.multiple=false \
ro.telephony.ril_class=SemcRIL \
wifi.supplicant_scan_interval=15 \
keyguard.no_require_sim=true \
ro.com.google.locationfeatures=1 \
ro.product.locale.language=en \
ro.product.locale.region=US \
persist.ro.ril.sms_sync_sending=1 \
ro.use_data_netmgrd=true \
debug.sf.hw=1 \
debug.composition.type=dyn \
ro.sf.compbypass.enable=1 \
dev.pm.dyn_samplingrate=1 \
com.qc.hardware=true \
BUILD_UTC_DATE=0 \
hwui.render_dirty_regions=false \
hwui.disable_vsync=true \
persist.sys.usb.config=mass_storage \
debug.camcorder.disablemeta=1

9. Paste TWRP-jb files, downloaded as a zip from github, in /bootable/recovery

10. Run

make -j1 recoveryimage

So that's what I did. We've been trying to tinker with bootrec and bootrec-device, but maybe this is not the problem. Let's see what to do and go on ;)

Edit: I will add the following line to my local_manifest from yours:

<remove-project name="CyanogenMod/android_bootable_recovery" />
<project name="TeamWin/Team-Win-Recovery-Project" path="bootable/recovery" remote="github" revision="jb-wip" />

just to be up-to-date :good:

Edit2: You have the same problem?!

michael@michael-P6812:~/android/system$ repo sync
warning: local_manifest.xml is deprecated; put local manifests in local_manifests instead
Fetching projects: 100% (264/264), done.
warning: local_manifest.xml is deprecated; put local manifests in local_manifests instead
error: Your local changes to the following files would be overwritten by checkout:
Android.mk
applypatch/Android.mk
applypatch/applypatch.c
applypatch/applypatch.h
bmlutils/Android.mk
bmlutils/bmlutils.c
bootloader.h
common.h
edify/expr.c
edify/expr.h
etc/init.rc
flashutils/Android.mk
install.h
libcrecovery/Android.mk
minelf/Retouch.c
minelf/Retouch.h
minui/Android.mk
minui/events.c
minui/graphics.c
minui/minui.h
minui/resources.c
minzip/Android.mk
minzip/DirUtil.c
minzip/DirUtil.h
minzip/Zip.c
minzip/Zip.h
minzip/inline_magic.h
mmcutils/Android.mk
mtdutils/Android.mk
mtdutils/mtdutils.c
recovery_ui.h
roots.h
tools/ota/check-lost+found.c
updater/Android.mk
updater/install.c
updater/updater.c
updater/updater.h
verifier_test.sh
Please, commit your changes or stash them before you can switch branches.
error: The following untracked working tree files would be overwritten by checkout:
README.md
adb_install.cpp
adb_install.h
applypatch/NOTICE
bootloader.cpp
crypto/cryptsettings/Android.mk
crypto/cryptsettings/cryptsettings.c
crypto/fs_mgr/Android.mk
crypto/fs_mgr/fs_mgr.c
crypto/fs_mgr/fs_mgr_main.c
crypto/fs_mgr/fs_mgr_priv.h
crypto/fs_mgr/include/fs_mgr.h
crypto/ics/cryptfs.c
crypto/ics/cryptfs.h
crypto/jb/cryptfs.c
crypto/jb/cryptfs.h
data.cpp
data.h
data.hpp
default_device.cpp
device.h
etc/init.htc.rc
fixPermissions.cpp
fixPermissions.hpp
gui/Android.mk
gui/action.cpp
gui/animation.cpp
gui/basicTheme/mkTheme.sh
gui/basicTheme/res/fonts/bluehighway-25.dat
gui/basicTheme/res/fonts/bluehighway-40.dat
gui/basicTheme/res/images/android.png
gui/basicTheme/res/images/checkbox_checked.png
gui/basicTheme/res/images/checkbox_empty.png
gui/basicTheme/res/images/file.png
gui/basicTheme/res/images/folder.png
gui/basicTheme/res/images/indeterminate001.png
gui/basicTheme/res/images/indeterminate002.png
gui/basicTheme/res/images/indeterminate003.png
gui/basicTheme/res/images/indeterminate004.png
gui/basicTheme/res/images/indeterminate005.png
gui/basicTheme/res/images/indeterminate006.png
gui/basicTheme/res/images/qhd-medium-button.png
gui/basicTheme/res/images/qhd-menu-button.png
gui/basicTheme/res/images/qhd-minus-button.png
gui/basicTheme/res/images/qhd-plus-button.png
gui/basicTheme/res/images/qhd-small-button.png
gui/basicTheme/res/images/qhd-sort-button.png
gui/basicTheme/res/images/slideout.png
gui/basicTheme/res/ui.xml
gui/basicTheme/ui.zip
gui/button.cpp
gui/checkbox.cpp
gui/conditional.cpp
gui/console.cpp
gui/devices/1024x600/res/fonts/Roboto-Regular-20.dat
gui/devices/1024x600/res/images/back-icon.png
gui/devices/1024x600/res/images/background.jpg
gui/devices/1024x600/res/images/backgroundbottom.jpg
gui/devices/1024x600/res/images/backgroundside.jpg
gui/devices/1024x600/res/images/button.png
gui/devices/1024x600/res/images/checkbox_checked.png
gui/devices/1024x600/res/images/checkbox_empty.png
gui/devices/1024x600/res/images/console-icon.png
gui/devices/1024x600/res/images/console-toggle.png
gui/devices/1024x600/res/images/curtain.jpg
gui/devices/1024x600/res/images/exclamation200.png
gui/devices/1024x600/res/images/file.png
gui/devices/1024x600/res/images/folder.png
gui/devices/1024x600/res/images/home-icon.png
gui/devices/1024x600/res/images/indeterminate001.png
gui/devices/1024x600/res/images/indeterminate002.png
gui/devices/1024x600/res/images/indeterminate003.png
gui/devices/1024x600/res/images/indeterminate004.png
gui/devices/1024x600/res/images/indeterminate005.png
gui/devices/1024x600/res/images/indeterminate006.png
gui/devices/1024x600/res/images/keyboard1.png
gui/devices/1024x600/res/images/keyboard2.png
gui/devices/1024x600/res/images/keyboard3.png
gui/devices/1024x600/res/images/keyboard4.png
gui/devices/1024x600/res/images/large_black.png
gui/devices/1024x600/res/images/medium-button.png
gui/devices/1024x600/res/images/mediumwide-button.png
gui/devices/1024x600/res/images/minus-button.png
gui/devices/1024x600/res/images/plus-button.png
gui/devices/1024x600/res/images/progress_empty.png
gui/devices/1024x600/res/images/progress_fill.png
gui/devices/1024x600/res/images/radio_empty.png
gui/devices/1024x600/res/images/radio_selected.png
gui/devices/1024x600/res/images/slider-touch.png
gui/devices/1024x600/res/images/slider-used.png
gui/devices/1024x600/res/images/slider.png
gui/devices/1024x600/res/images/sort-button.png
gui/devices/1024x600/res/images/unlock.png
gui/devices/1024x600/res/ui.xml
gui/devices/1024x768/res/fonts/Roboto-Regular-20.dat
gui/devices/1024x768/res/images/back-icon.png
gui/devices/1024x768/res/images/background.jpg
gui/devices/1024x768/res/images/backgroundbottom.jpg
gui/devices/1024x768/res/images/backgroundside.jpg
gui/devices/1024x768/res/images/button.png
gui/devices/1024x768/res/images/checkbox_checked.png
gui/devices/1024x768/res/images/checkbox_empty.png
gui/devices/1024x768/res/images/con
Aborting
Syncing work tree: 100% (264/264), done.

bootable/recovery/: discarding 550 commits
error: bootable/recovery/: TeamWin/Team-Win-Recovery-Project checkout d9a9616195e9eda2c5651356d208e626f6c650e5