diff --git a/merge/sys-devel/.calculate_directory b/merge/sys-devel/.calculate_directory
new file mode 100644
index 0000000..8e3df7f
--- /dev/null
+++ b/merge/sys-devel/.calculate_directory
@@ -0,0 +1 @@
+{% calculate append = 'skip' %}
diff --git a/merge/sys-devel/binutils/.calculate_directory b/merge/sys-devel/binutils/.calculate_directory
new file mode 100644
index 0000000..62f5563
--- /dev/null
+++ b/merge/sys-devel/binutils/.calculate_directory
@@ -0,0 +1 @@
+{% calculate append='skip', package='sys-devel/binutils' %}
diff --git a/merge/sys-devel/binutils/binutils_drop_old b/merge/sys-devel/binutils/binutils_drop_old
new file mode 100644
index 0000000..56b4826
--- /dev/null
+++ b/merge/sys-devel/binutils/binutils_drop_old
@@ -0,0 +1,5 @@
+{% calculate run='/bin/bash', main.cl.ebuild_phase, action='!unmerge' %}
+
+# remove for autoswitch binutils
+rm /etc/env.d/binutils/config-*
+exit 0
diff --git a/merge/sys-devel/gcc/.calculate_directory b/merge/sys-devel/gcc/.calculate_directory
new file mode 100644
index 0000000..ada6f7b
--- /dev/null
+++ b/merge/sys-devel/gcc/.calculate_directory
@@ -0,0 +1 @@
+{% calculate append='skip', package='>=sys-devel/gcc-4' %}
diff --git a/merge/sys-devel/gcc/gcc_default_set b/merge/sys-devel/gcc/gcc_default_set
new file mode 100644
index 0000000..066f762
--- /dev/null
+++ b/merge/sys-devel/gcc/gcc_default_set
@@ -0,0 +1,9 @@
+{% calculate exec='/bin/bash', main.cl.ebuild_phase %}
+
+# autoswitch to new gcc
+echo "The current gcc config will be automatically switch to the newly"
+echo "installed gcc version ${GCC_CONFIG_VER}"
+gcc-config ${CTARGET}-${GCC_CONFIG_VER} &>/dev/null
+/usr/sbin/env-update
+
+true
diff --git a/merge/sys-devel/prelink/.calculate_directory b/merge/sys-devel/prelink/.calculate_directory
new file mode 100644
index 0000000..5cfa702
--- /dev/null
+++ b/merge/sys-devel/prelink/.calculate_directory
@@ -0,0 +1 @@
+{% calculate name='etc', package='sys-devel/prelink' %}
diff --git a/merge/sys-devel/prelink/cron.daily/prelink b/merge/sys-devel/prelink/cron.daily/prelink
new file mode 100644
index 0000000..68893e3
--- /dev/null
+++ b/merge/sys-devel/prelink/cron.daily/prelink
@@ -0,0 +1,3 @@
+{% calculate format='regex', comment='#' %}
+\n(\[ -n "\$\(find `ldd /sbin/init .*/sbin/telinit u)
+\n#\1